摘要: 本节目标:1,文件共享打开文件内核数据结构一个进程两次打开同一个文件两个进程打开同一个文件2,复制文件描述符(dup、dup2、fcntl)一,文件共享1,一个进程打开两个文件内核数据结构说明:文件描述符表:每个进程都有一张,彼此独立,每个文件描述符表项都指向一个文件表,文件描述符0(STDIN_FILENO)、1(STDOUT_FILENO)、2(STDERR_FILENO),默认已经打开,分别表示:标准输入,标准输出,标准错误设备。文件表:每打开一个文件就对应一张文件表,文件表可以共享,当多个文件描述符指向同一个文件表时,文件表中的refcnt字段会相应变化。文件状态标识:文件的打开模式( 阅读全文
posted @ 2013-07-11 16:40 mickole 阅读(1922) 评论(0) 推荐(0)
摘要: 文件描述符 对于内核而言,所有打开的文件都通过文件描述符引用。文件描述符是一个非负整数。当打开一个现有文件或创建一个新文件时,内核向进程返回一个文件描述符。当读或写一个文件时,使用open或creat返回的文件描述符标识该文件,将其作为参数传递给read或write。 按照惯例,UNIX系统shell使用文件描述符0与进程的标准输入相关联,文件描述符1与标准输出相关联,文件描述符2与标... 阅读全文
posted @ 2013-07-11 15:38 mickole 阅读(301) 评论(0) 推荐(0)
摘要: 从系统时钟获取时间方式time函数介绍:1、函数名称: localtime2、函数名称: asctime3、函数名称: ctime4、函数名称: difftime5、函数名称: gmtime6、函数名称: time7、函数名称: tzsettime.h是C/C++中的日期和时间头文件。代码示例# include #include int main(void){time_t timer =time(NULL);printf("ctime is %s\n",ctime(&timer)); //得到日历时间return 0;}从系统时钟获取时间方式time_t time( 阅读全文
posted @ 2013-07-11 00:50 mickole 阅读(894) 评论(0) 推荐(0)