博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2015年4月5日

摘要: 管道读写规则:当没有数据可读时O_NONBLOCK disable:read调用阻塞,即进程暂停执行,一直等到有数据来到为止。O_NONBLOCK enable:read调用返回-1,errno值为EAGAIN。当管道满的时候O_NONBLOCK disable: write调用阻塞,直到有进程读走... 阅读全文

posted @ 2015-04-05 00:35 勇敢的鑫 阅读(106) 评论(0) 推荐(0) 编辑

2015年4月4日

摘要: 我们把从一个进程连接到另一个进程的一个数据流称为一个“管道”管道是半双工的,数据只能向一个方向流动;需要双方通信时,需要建立起两个管道只能用于具有共同祖先的进程(具有亲缘关系的进程)之间进行通信;通常,一个管道由一个进程创建,然后该进程调用fork,此后父、子进程之间就可应用该管道。pipe:匿名管... 阅读全文

posted @ 2015-04-04 15:30 勇敢的鑫 阅读(104) 评论(0) 推荐(0) 编辑

2015年3月28日

摘要: 这节主要介绍,父子进程共享文件、fork基于的copy on write、exit(0)与_exit(0)的区别、atexit()终止处理程序。首先父子进程共享文件:直接献上一个例子:#include #include #include #include #include #include #inc... 阅读全文

posted @ 2015-03-28 00:50 勇敢的鑫 阅读(116) 评论(0) 推荐(0) 编辑

2015年3月27日

摘要: 这节主要讲一个系统调用:forkpid_t fork(void);功能是:创建一个子进程返回值:如果成功创建一个子进程,对于父进程来说返回子进程ID如果成功创建一个子进程,对于子进程来说返回值为0如果为-1表示创建失败注意:这里是一个程序具有了两个返回值。如果父进程先退出,子进程还没退出那么子进程的... 阅读全文

posted @ 2015-03-27 00:51 勇敢的鑫 阅读(144) 评论(0) 推荐(0) 编辑

2015年3月26日

摘要: 这节主要学习系统调用stat、lstat、fstat。格式如下:int fstat(int filedes, struct stat *buf);int stat(const char *path, struct stat *buf);int lstat(const char *path, stru... 阅读全文

posted @ 2015-03-26 00:35 勇敢的鑫 阅读(141) 评论(0) 推荐(0) 编辑

2015年3月24日

摘要: 这节主要学习了read、write、lseek、目录访问(opendir、readdir、closedir)这几个系统调用及其简单的应用。一旦有了与一个打开文件描述相连的文件描述符,只要该文件是用O_RDONLY或O_RDWR标志打开的,就可以用read()系统调用从该文件中读取字节ssize_t ... 阅读全文

posted @ 2015-03-24 23:25 勇敢的鑫 阅读(107) 评论(0) 推荐(0) 编辑

摘要: set numbersyntax enableset tabstop=4set shiftwidth=4set noexpandtabset cindentset autoindentset showmatchset matchtime=1set formatoptions=ornmap : Tl... 阅读全文

posted @ 2015-03-24 22:32 勇敢的鑫 阅读(121) 评论(0) 推荐(0) 编辑

摘要: #define ERR_EXIT(m) \ do \ { \ perror(m); \ exit(EXIT_FAILURE); \ } while(0)工作中一般都是这样定义一个比较复杂的宏定义的,每一行都以斜杠结尾,斜杠的后边不能有空格,前边无所谓。 阅读全文

posted @ 2015-03-24 20:10 勇敢的鑫 阅读(290) 评论(0) 推荐(0) 编辑

2015年3月23日

摘要: 递归回溯法解决八皇后问题八皇后问题是一个以国际象棋为背景的问题:如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵列或斜线上。如图:1)从第一行开始,为皇后找到安全位置|y1-y2| != |x1-x2| ,... 阅读全文

posted @ 2015-03-23 22:58 勇敢的鑫 阅读(270) 评论(0) 推荐(0) 编辑

摘要: 文件系统调用:open、close、create、read、writeopen:int open(const char* path, int flags)path:要打开的文件的路径flags:打开的模式执行结果:成功返回文件描述符,失败返回-1。#include #include #include... 阅读全文

posted @ 2015-03-23 00:09 勇敢的鑫 阅读(193) 评论(0) 推荐(0) 编辑