摘要: 参考地址:http://blog.csdn.net/zhsp1029/article/details/2171462/*msgserver.c*/#include <stdlib.h>#include <string.h>#include <errno.h>#include <sys/types.h>#include <sys/ipc.h>#include <sys/msg.h>#include <sys/stat.h>#define MSG_FILE "/tmp/msg_logs"#def 阅读全文
posted @ 2011-12-14 14:47 wangkangluo1 阅读(470) 评论(0) 推荐(0) 编辑
摘要: 参考地址:http://www.linuxidc.com/Linux/2011-08/39738.htm#include <sys/types.h>#include <sys/ipc.h>#include <sys/msg.h>#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h>#define BUFSZ 512struct message{ //消息结构体 long msg_type; char msg_text 阅读全文
posted @ 2011-12-14 14:46 wangkangluo1 阅读(287) 评论(0) 推荐(0) 编辑
摘要: 原文地址:http://blog.csdn.net/pcliuguangtao/article/details/6526119/*共享内存允许两个或多个进程进程共享同一块内存(这块内存会映射到各个进程自己独立的地址空间)从而使得这些进程可以相互通信。在GNU/Linux中所有的进程都有唯一的虚拟地址空间,而共享内存应用编程接口API允许一个进程使用公共内存区段。但是对内存的共享访问其复杂度也相应增加。共享内存的优点是简易性。使用消息队列时,一个进程要向队列中写入消息,这要引起从用户地址空间向内核地址空间的一次复制,同样一个进程进行消息读取时也要进行一次复制。共享内存的优点是完全省去了这些操作。 阅读全文
posted @ 2011-12-14 14:29 wangkangluo1 阅读(756) 评论(0) 推荐(0) 编辑
摘要: 参考地址:http://www.ibm.com/developerworks/cn/linux/l-ipc/part2/index2.html接受信号:#include <signal.h>#include <sys/types.h>#include <unistd.h>void new_op(int,siginfo_t*,void*);int main(int argc,char**argv){ struct sigaction act; int sig; pid_t pid; pid=getpid(); sig=atoi(argv[1]); sigemp 阅读全文
posted @ 2011-12-14 14:15 wangkangluo1 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 参考地址:http://www.cnblogs.com/xuechao/archive/2011/12/05/2277180.html表 1. UNIX 中的进程间通信名称说明范围用途文件在典型的 UNIX 文件中读写数据。任意数量的进程都可以互操作。本地共享大数据集管道使用专用的文件描述符在两个进程之间传输数据。通信只在父进程和子进程之间进行。本地简单的数据共享,比如生产者和消费者命名管道通过专用的文件描述符在进程之间交换数据。通信可以在同一主机上的任意两个对等进程之间进行。本地生产者和消费者或命令-控制,比如 MySQL 和它的命令行查询工具信号通过中断通知应用程序某一情况。本地无法在信号 阅读全文
posted @ 2011-12-14 13:34 wangkangluo1 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 原文地址:两个程序,一写一读,测试有名管道在无亲缘关系的进程间的通信:读管道程序:main.c#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <sys/stat.h>#include <fcntl.h>#include <sys/types.h>#define FIFO_NAME "myfifo"#define BUF_SIZE 1024int main(void) { int fd; char buf[BUF_SIZE] 阅读全文
posted @ 2011-12-14 13:15 wangkangluo1 阅读(418) 评论(0) 推荐(0) 编辑
摘要: 参考地址:http://www.ibm.com/developerworks/cn/linux/l-ipc/part5/index1.html?ca=drs-main.c/*-------------map_normalfile1.c-----------*/#include <sys/mman.h>#include <sys/types.h>#include <fcntl.h>#include <unistd.h>typedef struct{ char name[4]; int age;}people;main(int argc, char* 阅读全文
posted @ 2011-12-14 13:10 wangkangluo1 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 原文地址:http://blog.csdn.net/xcyuzhen/article/details/4543264C++中栈区 堆区 常量区(由一道面试题目而学习)2009-04-28 21:01#include<iostream.h>void main(){char a[]="abc";栈char b[]="abc";栈char* c="abc";abc在常量区,c在栈上。char* d="abc"; 编译器可能会将它与c所指向的"abc"优化成一个地方。const char e 阅读全文
posted @ 2011-12-14 10:20 wangkangluo1 阅读(3370) 评论(1) 推荐(1) 编辑