1) 用ftok()函数获得一个ID号.2) shmget()用来开辟/指向一块共享内存的函数3) shmat()将这个内存区映射到本进程的虚拟地址空间。4) shmdt()函数删除本进程对这块内存的使用5) shmctl() 控制对这块共享内存的使用1) mmap()系统调用使得进程之间通过映射同...
分类:
系统相关 时间:
2014-10-28 00:18:18
阅读次数:
387
linux中fork()函数详解 一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用fork()函数后,系统....
分类:
系统相关 时间:
2014-10-27 10:39:18
阅读次数:
298
SO_LINGER选项用于控制close系统调用在关闭TCP连接时的行为。在默认情况下,当说我们使用close系统调用关闭一个socket时,close立即返回,TCP模块负责把socket对应的TCP发送缓冲区中残留的数据发送给对方。
根据linger结构体中两个变量的不同值,会有三种不同的结果:
1、l_onoff==0 ,此时SO_LINGER选项不起作用,close用默认行为来关闭so...
分类:
其他好文 时间:
2014-10-26 21:15:36
阅读次数:
146
跌跌撞撞,unix也看到了进程管理,顿时觉得高大上了。然而面对第一个系统调用fork,这英语发音实在是蹩脚,差点就读成~~。
在unix里面,对于任何一个进程,都有一个唯一表示的进程ID(pid)当然除了进程ID这个标识之外还有很多其他属性:父进程ID(ppid),进程实际用户ID,进程有效用户ID,进程实际用户组ID,进程有效用户组ID。对于这些属性,可以使用下列函数获取
#i...
分类:
系统相关 时间:
2014-10-26 11:51:42
阅读次数:
290
socket在创建的时候默认是阻塞的。我们可以通过socket系统调用的第二个参数传递SOCK_NONBLOCK标志,或者通过fcntl系统调用的F_SETFL命令,将其设置为非阻塞的。阻塞和非阻塞的概念能应用与所有文件描述符,不仅仅是socket,我们称阻塞的文件描述符为阻塞I/O,非阻塞的文件描述符为非阻塞I/O.
针对阻塞I/O执行的系统调用可能因为无法立即完成而被操作系...
分类:
其他好文 时间:
2014-10-26 10:23:21
阅读次数:
179
进程权能介绍进程权能举例分析用户层对应的系统调用是prctl()函数,点击打开链接1,基本概念传统UNIX的访问控制模型非常简单,就是“超级用户对普通用户”模型。在这种模型中,一个进程或帐户要么什么都能做即具有全部的系统权限,要么几乎什么也不能做即只有很小的权限,这取决于进程的UID。例如,如果一个...
分类:
系统相关 时间:
2014-10-26 09:02:05
阅读次数:
285
1 环境准备 运行系统:vmware下安装的ubuntu10.10 32bit桌面版。 编译内核版本: linux-2.6.32.63 内核目录: /home/wanchouchou/linuxKernel/linux-2.6.32.63 为了方便,使用chmod 777 -Rlinux-2...
分类:
系统相关 时间:
2014-10-24 16:22:48
阅读次数:
346
简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执...
分类:
系统相关 时间:
2014-10-24 10:47:33
阅读次数:
259
一个进程使用选路域(routing domain)中的一个插口来发送和接收选路报文,socket系统调用需要制定一个PF_ROUTE
的族类型和一个SOCK_RAW的插口类型。该进程可以向内核发送以下五种选路报文:
1.RTM_ADD:增加一条新路由。
2.RTM_DELETE:删除一条已经存在的路由。
3.RTM_GET:取得有关一条路由的所有信息。
4.RTM_CHANGE:改变一条...
分类:
其他好文 时间:
2014-10-24 00:26:42
阅读次数:
321
多路I/O转接与select函数不同,poll不是为每个状态(可读性、可写性和异常状态)构造一个描述符集,而是构造一个pollfd结构数组,每个数组元素指定一个描述符编号以及其所关心的状态readv和writev函数作用:在一次函数调用中读、写多个非连续缓存区总结:应当用尽量少的系统调用..
分类:
其他好文 时间:
2014-10-23 12:51:18
阅读次数:
203