![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux Programming
文章平均质量分 79
迷糊的佳佳
这个作者很懒,什么都没留下…
展开
-
进程间通信(IPC):信号量(Semaphore)
假定有一个信号量变量sv, P(sv):用于等待,如果sv大于0,就给它减去1,如果它的值等于0,就挂起该进程的执行 V(sv):用于发送信号,如果有其他进程因等待sv而挂起,就让它恢复运行,如果没有进程因等待sv而被挂起,就给它加1 semaphore sv=1; loop forever{ P(sv); critical code section; V(sv); non原创 2013-01-23 21:26:05 · 1994 阅读 · 0 评论 -
Vim键盘图
分为三种模式:一般模式、编辑模式和命令行模式原创 2013-01-21 19:18:11 · 425 阅读 · 0 评论 -
进程间通信(IPC):管道(Pipe)
管道:一个进程连接数据流到另一个程序 pipe函数的原型: #include int pipe(int file_descriptor[2]);该闪身在数组中填上两个新的文件描述符后返回0,如果失败则返回-1。写到file_descriptor[1]的所有数据都可以从file_descriptor[0]读回来。这里使用的是文件描述符而不是文件流,所以我们必须用底层的read和write调用原创 2013-01-23 17:05:59 · 1524 阅读 · 0 评论 -
进程间通信(IPC):共享内存
共享内存允许两个不相关的进程访问同一个逻辑内存。 共享内存的定义如下: #include void *shmat(shm_id,const void *shm_addr, int shmflg);//连接到一个进程的地址空间中 int shmctl(int shm_id, int cmd, struct shmid_ds *buf);//共享内存的控制函数 int shmdt(const v原创 2013-01-24 10:32:45 · 1158 阅读 · 2 评论 -
进程间通信(IPC):消息队列(Message Queue)
消息队列与命名管道有许多相似之处,但少了在打开和关闭管道方面的复杂性。与命名管道相比,消息队列的优势在于,它独立于发送和接收进程而存在。 消息队列函数的定义如下所示: #include int msgctl(int msqid, int cmd, struct msqid_ds *buf);//消息队列的控制函数 int msgget(key_t key, int msgflg);//创原创 2013-01-26 14:18:52 · 5551 阅读 · 1 评论