System V三种IPC编程巧学巧记

转载请保留原文地址http://blog.csdn.net/guodongxiaren/article/details/43876207

概述

        System V(“系统五”)系统上发明了三种IPC机制(消息队列、信号量和共享内存),通常称为System V IPC。又因为后来被收录到Unix的XSI标准之中故又称为XSI IPC。所以当你看到System V IPC 和 XSI IPC的时候实际上指的是同一种东西。

        C语言是一门面向过程的语言,与OO(面向对象)语言不同,它没有做到数据和操作的封装。因此在编写C语言程序的时候暴露在你面前的是一大堆函数。由于缺少OO的那层抽象,增加了记忆时的复杂度,因此如果你对函数分不清的话,常常会使你在编程的时候焦头烂额。

        本文不会详实地介绍各个函数的参数、返回值等等这些细节,这些你在Unix或Linux编程的书中应该都能找到。本文的目的是帮助你打通三种IPC之间关系的任督二脉,从而强化理解,减轻记忆难度。


化简为繁 理解英文

        C语言中所有标识符都是用英文字母组成的,这点毋庸置疑。如果我们能善于找到各种缩写的原型,去理解它的英文释义,就能帮助我们记忆。

比如三个IPC的缩写:

缩写 全写 释义
msg message (queue) 消息队列
sem semaphore 信号量
shm shared memory 共享内存
        这三个缩写常用在出现在操作函数的 函数名之中。此外还出现在对应的 头文件的名称之中。接下来我还会介绍更多函数名的英文释义。


一马当先 头文件

        在使用三种IPC机制的时候,我们肯定是通过系统调用,而这些函数所需要的头文件需要首先搞清楚。System V的IPC操作要用到的头文件有:
#include <sys/types.h> //公共头文件,声明了key_t类型
#include <sys/ipc.h>   //公共头文件

#include <<
  • 9
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

果冻虾仁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值