正在加载
请稍等

菜单

红楼飞雪 梦

15526773247

Tag: 进程间通信

Home 标签归档: 进程间通信
Home 标签归档: 进程间通信

共享内存

android 嵌入式开发, linux开发学习 by

共享内存可以被描述成内存一个区域(段)的映射,这个区域可以被更多的进程所共享。这是IPC机制中最快的一种形式,因为它不需要中间环节,而是把 信息直接从一个内存段映射到调用进程的地址空间。 一个段可以直接由一个进程创建,随后,可以有任意多的进程对其读和写。但是,一旦内存被共享之后,对共享内存的访问同步需要由…

阅读全文

 

10 2015-11

消息队列

android 嵌入式开发, linux开发学习 by

一个或多个进程可向消息队列写入消息,而一个或多个进程可从消息队列中读取消息,这种进程间通讯机制通常使用在客户/服务器模型中,客户向服务器发 送请求消息,服务器读取消息并执行相应请求。在许多微内核结构的操作系统中,内核和各组件之间的基本通讯方式就是消息队列。例如,在 MINIX 操作系统中,内核、I/O 任务、服…

阅读全文

 

08 2015-11

信号量

android 嵌入式开发, linux开发学习 by

信号量及信号量上的操作是E.W.Dijkstra 在1965年提出的一种解决同步、互斥问题的较通用的方法,并在很多操作系统中得以实现, Linux改进并实现了这种机制。 信 号量(semaphore )实际是一个整数,它的值由多个进程进行测试(test)和设置(set)。就每个进程所关心的测试和设置操作而言,这两个操作是不可中断的,或称“原 子”操…

阅读全文

 

07 2015-11

System V 的IPC机制

android 嵌入式开发, linux开发学习 by

为了提供与其它系统的兼容性,Linux也支持三种system Ⅴ的进程间通信机制:消息、信号量(semaphores)和共享内存,Linux对这些机制的实施大同小异。我们把信号量、消息和共享内存统称System V IPC的对象,每一个对象都具有同样类型的接口,即系统调用。就像每个文件都有一个打开文件号一样,每个对象也都有唯一的识别号,进…

阅读全文

 

04 2015-11

信号种类

android 嵌入式开发, linux开发学习 by

每一种信号都给予一个符号名,对 32 位的 i386 平台而言,一个字为 32 位,因此信号有 32 种,而对 64 位的 Alpha AXP 平台而言,每个字为 64 位,因此信号最多可有 64 种。Linux定义了i386的32个信号,在include/asm/signal.h中定义。表中给出常用的符号名、描述和它们的信号值。 每种信号类型都有对应的信号处理程序(也…

阅读全文

 

02 2015-11

进程与信号的关系

android 嵌入式开发, linux开发学习 by

Linux 内核中不存在任何机制用来区分不同信号的优先级。也就是说,当同时有多个信号发出时,进程可能会以任意顺序接收到信号并进行处理。另外,如果进程在处理某个信号之前,又有相同的信号发出,则进程只能接收到一个信号。产生上述现象的原因与内核对信号的实现有关。 系统在 task_struct 结构中利用两个域分别记录当前…

阅读全文

 

02 2015-11

信号掩码

android 嵌入式开发, linux开发学习 by

在POSIX下,每个进程有一个信号掩码(signal mask)。简单地说,信号掩码是一个“位图”,其中每一位都对应着一种信号。如果位图中的某一位为1,就表示在执行当前信号的处理程序期间相应的信号暂时被“屏蔽”,使得在执行的过程中不会嵌套地响应那种信号。 为什么对某一信号进行屏蔽呢?我们来看一下对CTRL_C的处理。大家知道,…

阅读全文

 

01 2015-11
12