04 2008 档案
摘要:临时文件通常,程序需要以文件的形式使用临时存储。这也许是存储计算的中间结果,或者是在实际操作之前所做的文件拷贝备份。例如,一个数据程序在删除记录时会使用临时文件。文件会收集需要保存的数据库实体,然后在操作结束时,临时文件会成为新的数据库而原始的会被删除。临时文件的大量使用隐藏了他的一个缺点。我们必须小心来确保程序会选择一个唯一的名字来使用临时文件。如果不是这样,因为Linux是一个多任务系统,也许会有另一个程序选择了相同的名字,而这两个彼此之间会相互影响。一个唯一的临时文件名可以由tmpnam函数生成:#include <stdio.h>char *tmpnam(char *s);
阅读全文
摘要:早上起来登陆Blog空间,发现以前显示很好的模板现在却显示得乱乱的,还以为是自己浏览器出了问题,加上那个上下滚动的软件交易列表,真是出奇的烦。登陆Blog后台管理,发现后台管理的界面也和以前大不一样了。幸好在顶部看见有私信一项,点开一看,才发现原来CSDN的个人空间和Blog都进行了改版。正如其消息通知中所说,现在社会网络SNS是网络发展的大趋势,国外的Facebook不需多说,就是国内的校内网等的发展也是如火如荼,所以在这样的背景下CSDN的个人空间和Blog也进行改版,还有不论评论如何,这是勇敢走出的第一步等语。话说回来,第一次看到新版的显示效果还真是有种惊艳的感觉,并不是说有多好,而是显
阅读全文
摘要:时间与日期通常对于一个程序来说可以确定时间与日期是十分用的。也许他要记录其运行的时间,或者是他要一个特定的时间改变其形为。例如,一个游戏程序也许不会在工作时间运行,或者是一个备份调度会在启动自动备份之前等待早些的工作完成。所有的Unix系统对于时间与日期都使用相同的起始点:1970年1月1日午午夜GMT。这是Unix的创世纪,而Linux也不例外。而在Linux系统中所有的时间都是以秒记量的。这与MS-DOS处理时间的方式相似,所不同是MS-DOS是由1980年开始的。其他的系统使用其他的记时起始时间。时间是使用一个定义的time_t类型来处理。这是一个足够大的整数类型来包含以秒计的日期与时间
阅读全文
摘要:环境变量我们在第2章讨论了环境变量。这些变量可以用来控制shell脚本和其他程序的形为。我们也可以使用他们来配置用户环境。例如,每一个用户都有一个环境变量,HOME,定义了其用户主目录,作为其会话的起始位置。正如我们所知的,我们由shell提示来测试环境变量:$ echo $HOME/home/neil我们也可以使用shell的set命令来列出所有的环境变量。Unix描述定义了许多标准的环境变量用于各种目的,包括终端类型,默认编辑器,时区,等等。一个C程序可以使用putenv与getenv函数来访问环境变量。#include <stdlib.h>char *getenv(const
阅读全文
摘要:当我们为Linux编写程序时,我们必须考虑到程序会运行在多任务环境下。这就意味着多个程序会同时运行,并且共享机器资源,例如内存,磁盘空间以及CPU周期。也许在同一时刻会一个程序多个实例在运行。这时最为重要的就是这些程序之间不会相互影响,彼此清楚其周边环境,同时也要正确的运行以避免冲突,例如与另一个程序同时试着写入相同的文件等。在这一章,我们将会讨论程序执行的环境,他们如何使用环境来得到有关操作环境的信息,以及这些程序用户如何改变其行为。具体的说,我们会讨论下面内容:向程序传递参数环境变量查看时间信息临时文件得到用户以及主机的信息记录以及配置日志消息发现系统的限制程序参数当一个使用C语言编写的L
阅读全文