码迷,mamicode.com
首页 >  
搜索关键字:系统调用    ( 2987个结果
linux共享内存
1) 用ftok()函数获得一个ID号.2) shmget()用来开辟/指向一块共享内存的函数3) shmat()将这个内存区映射到本进程的虚拟地址空间。4) shmdt()函数删除本进程对这块内存的使用5) shmctl() 控制对这块共享内存的使用1) mmap()系统调用使得进程之间通过映射同...
分类:系统相关   时间:2014-10-28 00:18:18    阅读次数:387
Linux中fork的秘密
linux中fork()函数详解 一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程,也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进程调用fork()函数后,系统....
分类:系统相关   时间:2014-10-27 10:39:18    阅读次数:298
高性能网络服务器--SO_LINGER选项 会话创建
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
进程派生——fork~~~
跌跌撞撞,unix也看到了进程管理,顿时觉得高大上了。然而面对第一个系统调用fork,这英语发音实在是蹩脚,差点就读成~~。        在unix里面,对于任何一个进程,都有一个唯一表示的进程ID(pid)当然除了进程ID这个标识之外还有很多其他属性:父进程ID(ppid),进程实际用户ID,进程有效用户ID,进程实际用户组ID,进程有效用户组ID。对于这些属性,可以使用下列函数获取 #i...
分类:系统相关   时间:2014-10-26 11:51:42    阅读次数:290
高性能服务器框架--I/O模型
socket在创建的时候默认是阻塞的。我们可以通过socket系统调用的第二个参数传递SOCK_NONBLOCK标志,或者通过fcntl系统调用的F_SETFL命令,将其设置为非阻塞的。阻塞和非阻塞的概念能应用与所有文件描述符,不仅仅是socket,我们称阻塞的文件描述符为阻塞I/O,非阻塞的文件描述符为非阻塞I/O.          针对阻塞I/O执行的系统调用可能因为无法立即完成而被操作系...
分类:其他好文   时间:2014-10-26 10:23:21    阅读次数:179
[linux]进程(十一)——进程权能
进程权能介绍进程权能举例分析用户层对应的系统调用是prctl()函数,点击打开链接1,基本概念传统UNIX的访问控制模型非常简单,就是“超级用户对普通用户”模型。在这种模型中,一个进程或帐户要么什么都能做即具有全部的系统权限,要么几乎什么也不能做即只有很小的权限,这取决于进程的UID。例如,如果一个...
分类:系统相关   时间:2014-10-26 09:02:05    阅读次数:285
在Linux内核中添加系统调用,并编译内核
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
Linux strace命令
简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执...
分类:系统相关   时间:2014-10-24 10:47:33    阅读次数:259
《TCP/IP详解卷2:实现》笔记--选路插口
一个进程使用选路域(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
apue读书笔记-第14章 高级IO
多路I/O转接与select函数不同,poll不是为每个状态(可读性、可写性和异常状态)构造一个描述符集,而是构造一个pollfd结构数组,每个数组元素指定一个描述符编号以及其所关心的状态readv和writev函数作用:在一次函数调用中读、写多个非连续缓存区总结:应当用尽量少的系统调用..
分类:其他好文   时间:2014-10-23 12:51:18    阅读次数:203
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!