2013年4月22日

命名管道(FIFO)

摘要: 命名管道解决了管道的一个问题,它除了可以用在有亲缘关系的进程间,也可用在无亲缘关系的进程间。它也仅仅解决了这个问题。读写操作的特点:1、同管道一样,单向字节流;2、open FIFO只读,若现有write端打开,则成功返回;否则,阻塞模式将一直阻塞到打开写,非阻塞模式正常返回;3、open FIFO只写,若现有read端打开,则成功返回;否则,阻塞模式将一直阻塞到打开读,非阻塞模式正常返回;4、对于空的FIFO,情形与空管道类似。看一个例子:server_fifoclient_fifo 1 #include "unpipc.h" 2 3 int main(int argc, 阅读全文

posted @ 2013-04-22 20:49 逆转的旋律 阅读(360) 评论(0) 推荐(0)

管道(Pipe)

摘要: 管道是Unix的传统IPC机制之一,特点是:1、仅用于有亲缘关系的进程之间;2、单向数据流,即打开一个管道,一端仅用于读,另一端仅用于写;3、传递的是字节流;4、对它的read总是从头部返回数据,对它的write总是从尾部添加数据;5、对于空管道: a. 写端打开,阻塞read将一直阻塞到管道有数据(可以是EOF);非阻塞read返回EAGAIN; b. 写端未打开,read返回0; c. 读端未打开,write操作产生SIGPIPE。例子:1、父子进程间通信。(子进程传递一个文件名给父进程,由父进程打开文件并将数据传给子进程)pipe 1 #include "unpipc.h&qu 阅读全文

posted @ 2013-04-22 20:10 逆转的旋律 阅读(447) 评论(0) 推荐(0)

几个基本概念

摘要: 操作系统 一个计算机系统有许多资源:CPU时间、内存空间、文件存储空间、I/O设备等等。操作系统扮演着这些资源的分配者的角色。面对为数众多而且可能相互竞争冲突的资源请求,操作系统必须决定如何为特定的程序和用户分配资源,并力求公平、高效。进程的状态 初始态(正被创建),等待,就绪,执行,终止。进程控制块 简称PCB,存储了某一具体进程的详细信息,包括: 1、进程状态; 2、程序计数器(指明了该进程将要执行的下一条指令的地址); 3、CPU寄存器(累加器、变址寄存器、栈指针、通用寄存器,以及条件信息等); 4、CPU调度信息(优先权、指向调度队列的指针和其它调度参数); 5、存储器... 阅读全文

posted @ 2013-04-22 17:17 逆转的旋律 阅读(452) 评论(0) 推荐(0)

导航