码迷,mamicode.com
首页 >  
搜索关键字:进程间    ( 3032个结果
IPC通信之管道
管道 Linux管道(pipe)提供一种单向(半双工)的进程间通讯机制。管道有一个读端和一个写端。从写端写入的数据可以重读端读出来。函数pipe()创建一个管道,返回两个文件描述符,fd[0]是读端,f[1]是写端。如下图 管道的读写可以使用Linux标准IO操作接口进行,例如read、write等。从图1不难看出,数据一直缓存在内核中直到被读取出来。 单个进程的管道几乎没有任何用处...
分类:其他好文   时间:2014-12-02 00:10:17    阅读次数:301
【UNIX】什么是进程间FIFO通信以及信号通信
上篇中的无名管道通信是父子进程之间的通信,限定了进程之间的通信,从而就有了有名管道,它可以使不同进程之间进行通信,有名管道可以通过指定路径名来指出,兵长文件系统中可见。进程通过文件IO来操作有名管道,有名管道遵从先进先出的原则,但是不支持lseek函数。 1)int mkfifo(const char *pthname,mode_t mode)创建有名管道, 2)在内核中创建对象,但没有打开读...
分类:系统相关   时间:2014-12-01 22:33:40    阅读次数:257
Socket编程实践(2)
Socket API基本编程模型TCP客户/服务器模型   简单echo服务器模型  Socket 基础API实践socket函数#include /* See NOTES */ #include  功能:创建一个套接字用于通信原型int socket(int domain, int type, int protocol);参数    domain:指定通信协议族(proto...
分类:其他好文   时间:2014-12-01 22:29:40    阅读次数:251
Socket编程实践(1)
Socket Api基本概念什么是socket?    socket可以看成是用户进程与内核网络协议栈的编程接口(如下图所示)。    socket不仅可以用于本机的进程间通信,还可以用于网络上不同主机的进程间通信。  tcp/ip通信模型                 C/S模型               B/S模型 IPv4套接口地址结构    IPv4套接口地址结构通常也称为“网际套接字...
分类:其他好文   时间:2014-12-01 14:24:17    阅读次数:163
Linux信号量实践(2)
信号量API综合实践//实践1:封装PV原语 union mySemUn { int val; // Value for SETVAL// struct semid_ds *buf; // Buffer for IPC_STAT, IPC_SET// unsigned short *array; // Array for GETAL...
分类:系统相关   时间:2014-11-30 12:34:17    阅读次数:153
Linux信号量实践(1)
进程的同步与互斥     顺序程序与并发程序特征顺序程序并发程序顺序性共享性封闭性:(运行环境的封闭性)并发性确定性随机性可再现性   进程互斥    由于各进程要求共享资源,而且有些资源需要互斥使用,因此各进程间竞争使用这些资源,进程的这种关系为进程的互斥.    系统中某些资源一次只允许一个进程使用,称这样的资源为临界资源或互斥资源。    在进程中涉及到互斥资源的程序段叫临界区. 互斥示例说...
分类:系统相关   时间:2014-11-30 12:33:11    阅读次数:272
Android Framework ContentProvider框架
ContentProvider统一了对数据源操作的接口,并支持进程间通信(IPC),应用进程之间可以通过ContentProvider对外暴露接口,来分享数据。作为android中核心组件,不得不深入了解,翻看了android的源码写篇blog与大家分享。1.我画了一个静态类结构图,看下图:上图中已经把ContentP..
分类:移动开发   时间:2014-11-30 00:57:19    阅读次数:269
Android中非aidl实现进程间通信(编写顺序的parcel写入与读出)
在android中进程间通信(IPC)的基石是Binder系统,Binder系统的核心Binder驱动是C来实现的,对于应用开发人员来说无疑晦涩难懂,而整个android框架是基于面向对象思想的,对于底层Binder驱动的操作细节全部隐藏,framework层提供了一个牛逼无比的Binder对象,所以我们要实现进程..
分类:移动开发   时间:2014-11-30 00:56:11    阅读次数:161
Linux消息队列实践(2)
消息队列函数 #include #include #include   int msgget(key_t key, int msgflg);   int msgctl(int msqid, int cmd, struct msqid_ds *buf);   int msgsnd(int msqid, const void *msgp, size_t msgsz, int msgflg);...
分类:系统相关   时间:2014-11-29 11:58:26    阅读次数:302
Linux消息队列实践(3)
API综合使用//父进程发送消息,子进程接收消息 struct msgBuf { long mtype; /* message type, must be > 0 */ char mtext[104]; /* message data */ }; const int MSGNUMBER = 10; int main() { //获取一个键 key...
分类:系统相关   时间:2014-11-29 11:57:20    阅读次数:295
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!