Linux进程间通讯之共享内存
共享内存:
使用共享内存和使用malloc()来分配内存区域很相似。使用共享内存的方法是:
1 对一个进程/线程使用shmget()分配内存区域。
2 使用shmat()放置一个或多个进程/线程在共享内存中,也可以用shmctl()来获取信息或者控制共享区域。
3 使用shmdt()从共享区域中分离。
4 使用shmctl()解除分配空间
共享内存是Linux中最快速的IPC方法。它也是一个双向过程,共享区域内的任何进程都可以读写内存。这个机制的不利方面是其同步和协议都不受程序员控制,必须确保将句柄传递给了子进程和线程。
一. 函数: shmget介绍
功能:取得共享内存段
语法:#include <sys/types.h>;
#include <sys/ipc.h>;
#include <sys/shm.h>;
int shmget(key,size,shmflg)
key_t key;
int size,shmflg;
说明:本系统调用返回key相关的共享内存标识符.
共享内存标识符和相关数据结构及至少size字节的共享内存段能
正常创建,要求以下事实成立:
. 参数key等于IPC_PRIVATE.
. 参数key没有相关的共享内存标识符,同时(shmflg&IPC_CREAT)
值为真.
共享内存创建时,新生成的共享内存标识相关的数据结构被初始
相关文档:
总览
用iptables -ADC 来指定链的规
则
,-A添加 -D删除 -C 修改
iptables - [RI] chain rule num rule-specification[option]
用iptables - RI 通过规则的顺序指定
iptables -D chain rule num[option]
删除指定规则
iptables -[LFZ] [chain][option]
用iptables -LFZ 链名 [选项]
iptables -[NX] chain
用 -NX ......
作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了。
在本文中,将给大家介绍如何使用autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的Ma ......
一、下载jdk1.5
从http://www.sun.com/网站下载jdk1.5
下载:jdk-1_5_0_15-linux-i586-rpm.bin
二、安装jdk
1.
# chmod +x jdk-1_5_0_15-linux-i586-rpm.bin
# ./jdk-1_5_0_15-linux-i586-rpm.bin
按提示按输入yes,在同一目录会得到一个jdk-1_5_0_15-linux-i586-rpm
通过# rpm –ivh jdk-1 ......
Linux, named after the inventor, Linus Torvalds, is a so different OS for everyone against Windows. To everyone who used to use Windows, Linux need us to do more for everything which we usually do by computer, such as playing a video.
Someone says, Linux is for the ones who are good at the computer ......
<Ctrl><Alt><F1>
切换到第一个文本终端。在Linux下你可以有多达六个不同的终端。这个命令的意思是:“同时按住<Ctrl>键和<Alt>键,然后按<F1>键,再释放所有的键”。
<Ctrl><Alt><Fn> (n=1..6)
切换到第n个文本终端。(你也可以使用不是很经常用到的 ......