Linux进程间通讯所使用的系统调用函数
窗体顶端
索引:
1.fork、exec和exit对IPC对象的影响
2.fcntl记录锁
3.管道和FIFO的属性
4.管道和FIFO的限制
5.pipe函数
6.popen和pclose
7.mkfifo函数
8.System V IPC共性描述
9.msqid_ds结构
10.msgget函数
11.msgsnd函数
12.msgrcv函数
13.msgctl函数
14.在System V消息队列上使用select和poll
15.semid_ds结构
16.semget函数
17.semop函数
18.semctl函数
19.shmid_ds结构
20.shmget函数
21.shmat函数
22.shmdt函数
23.shmctl函数
24.mmap函数
25.munmap函数
26.msync函数
27.匿名内存映射
1.fork、exec和exit对IPC对象的影响
IPC类型
fork
exec
_exit
管道和FIFO
子进程取得父进程的所有打开着的描述字的拷贝
所有打开的描述字继续打开着,除非已设置描述字的FD_CLOEXEC位
关闭所有打开着的描述字,最后一个关闭时删除管道或FIFO中残留的所有数据
Posix消息队列
子进程取得父进程的所有打开着的消息队列描述字的拷贝
关闭所有打开着的消息队列描述字
关闭所有打开着的消息队列描述字
System V消息队列
没有效果
没有效果
没有效果
Posix互斥锁、条件变量、读写锁、基于内存的信号灯
若驻留在共享内存中而且具有进程间共享属性,则共享
除非在继续打开着的共享内存中而且具有进程间共享属性,否则消失
除非在继续打开着的共享内存中而且具有进程间共享属性,否则消失
Posix有名信号灯
父进程中所有打开着的有名信号灯在子进程中继续打开着
关闭所有打开着的有名信号灯
关闭所有打开着的有名信号灯
System V信号灯
子进程中所有semadj值都置为0
所有semadj值都携入新程序中
所有semadj值都加到相应的信号灯上
fcntl记录上锁
子进程不继承父进程持有的锁
只要描述字继续打开着,锁就不变
解开由进程持有的所有未处理的锁
mmap内存映射和Posix共享内存区
父进程中的内存映射存留到子进程中
去除内存映射
去除内存映射
System V共享内存区
附接着的共享内存区在子进程中继续附接着
断开所有附接着的共享内存区
断开所有附接着的共享内存区
门
子进程取得父进程的所有打开着的描述字,但是客户在门描述字上激活其过程时,只有父进程是服务器
所有门描述字都应关闭,因为它们创建时设置了FD_CLOEXEC位
关闭所有打开着的描述字
2.fcntl记录锁
Unix内核没有文件内记录的概念,这里的记录是指字节范围(byte range)。
Pos
相关文档:
总览
用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 ......
在当前目录下搜索指定文件:
find . -name test.txt
在当前目录下模糊搜索文件:
find . -name '*.txt'
在当前目录下搜索特定属性的文件:
find . -amin -10 # 查找在系统中最后10分钟访问的文件
find . -atime -2 # 查找在系统中最后48小时访问的文件
find . -empty # 查找在系统中为空的文件或者文件夹
find . -g ......
静态函数库是在程序执行前就加入到目标程序中去了;而共享函数库则是在程序启动的时候加载到程序中,它可以被不同的程序共享;动态加载函数库则可以在程序运行的任何时候动态的加载。
静态函数库实际上就是简单的一个普通的目标文件的集合,一般来说习惯用“.a”作为文件的后缀。可以用ar这个程序来产生静态函数 ......
因为LINUX
的内核
机制,一般情况下不需要特意去释放已经使用的cache。这些cache起来的内容可以增加文件以及的读写速度。
先说下free命令怎么看内存
[root@ahsq proc]# free
total used free shared buffers cached
Mem: 515588 295452 220136 0 2060 64040
-/+ buffers/cache: 229352 286236
Swap: 682720 112 ......