摘要: 当多个用户共同使用、操作一个文件的情况下,这时,Linux通常采用的方法是给文件上锁,来避免共享的资源产生竞争的状态。 文件锁包括建议性锁和强制性锁。建议性锁要求每个上锁文件的进程都要检查是否有锁存在,并且尊重己有的锁。在一般情况下,内核和系统都不使用建议性锁。强制性锁是由内核执行的锁,当文件... 阅读全文
posted @ 2015-05-16 17:21 pencil_zh 阅读(223) 评论(0) 推荐(0) 编辑
摘要: dup和dup2函数:int dup(int filedes); int dup2(int filedes,int filedes2);返回:若成功为新的文件描述符,若出错为-1作用:用来复制一个文件描述符,经常用来重定向进程的stdin,stdout,stderr。由dup返回的新文件描述符一定是... 阅读全文
posted @ 2015-05-16 17:14 pencil_zh 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 导语:某些习惯对你的人品无伤大雅,然而,作为员工,它们却会对你产生相当负面的影响,有时甚至还会害得你丢掉工作。人非圣贤,谁还没有几个坏习惯呢,比如爱拖延、喜八卦或是不守时等等,这些习惯对你的人品无伤大雅,然而,作为员工,它们却会对你产生相当负面的影响,有时甚至还会害得你丢掉工作。以下就是能令你丢掉饭... 阅读全文
posted @ 2015-05-16 16:52 pencil_zh 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 #include 3 #include 4 #include 5 int main()6 {7 printf("uid:%d,gid:%d\n",getuid(),getgid());8 exit(0);9 } 阅读全文
posted @ 2015-05-16 16:47 pencil_zh 阅读(151) 评论(0) 推荐(0) 编辑
摘要: perror()原型:#include void perror(const char *s); 其中,perror()的参数s 是用户提供的字符串。当调用perror()时,它输出这个字符串,后面跟着一个冒号和空格,然后是基于当前errno的值进行的错误类型描述。 strerror()原型:#inc... 阅读全文
posted @ 2015-05-16 16:37 pencil_zh 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 #include 3 #include 4 #include 5 #define MAXLINE 10 6 int main(void) 7 { 8 char buf[MAXLINE]; 9 pid_t pid;10 int status;11 printf("%... 阅读全文
posted @ 2015-05-16 16:17 pencil_zh 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 文件是程序设计中的一个重要概念。所谓“文件”一般是指存储在外部介质上数据的集合。一批文件是以数据的形式存放在外部介质(如磁盘)上的。操作系统是以文件为单位对数据进行管理的,也就是说,如果想找存在外部介质上的数据,必须先按文件名找到指定的文件,然后再从该文件中读取数据。要向外部介质上存储数据也必须... 阅读全文
posted @ 2015-05-16 14:43 pencil_zh 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 大多数unix文件I/O只需要用到5个函数:open,read,write,lseek,close。这些函数都为不带缓存的I/O,不带缓存指的是每个read和write都调用内核中的一个系统调用。这些函数使用时要用到三个头文件:sys/types.h,sys/stat.h,fcntl.hopen... 阅读全文
posted @ 2015-05-16 13:24 pencil_zh 阅读(831) 评论(0) 推荐(0) 编辑
摘要: 第1章字符测试函数 1 isalnum(测试字符是否为英文字母或数字) 2 isalpha(测试字符是否为英文字母) 3 isascii(测试字符是否为ASCII码字符) 4 isblank(测试字符是否为空格字符) 5 iscntrl(测试字符是否为ASCII码的控制字符) 6 isdigit(测... 阅读全文
posted @ 2015-05-16 13:11 pencil_zh 阅读(532) 评论(0) 推荐(0) 编辑
摘要: #include #include #include #include #include #include #define BUFFSIZE 4096int main(void){ int n; char buf[BUFFSIZE]; while((n=read(STDIN_FILENO,buf,B... 阅读全文
posted @ 2015-05-16 12:57 pencil_zh 阅读(123) 评论(0) 推荐(0) 编辑