Linux常用系统调用列表_第1页
Linux常用系统调用列表_第2页
Linux常用系统调用列表_第3页
Linux常用系统调用列表_第4页
Linux常用系统调用列表_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Linux常用系统调用列表作者:雷震 2002年3月本文列出了大部分常见的Linux系统调用,并附有简要中文说明。以下是Linux系统调用的一个列表,包含了大部分常用系统调用和由系统调用派 生出的的函数。按照惯例,这个列表以man pages第2节,即系统调用节为蓝本。按照笔者的理解,对其作了大致的分类,同时也作了一些小小的修改,删去了几个 仅供内核使用,不允许用户调用的系统调用,对个别本人稍觉不妥的地方作了一些 小的修改,并对所有列出的系统调用附上简要注释。其中有一些函数的作用完全相同,只是参数不同。(可能很多熟悉C+朋友马上就能联想起函数重载,但是别忘了Linux核心是用C语言写的,所以只

2、能取成不同的函数名)。还有一些函数已经过时,被新的更好的函数所代替了(gcc在链接这些函数时会发出警告),但因为兼容的原因还保留着,这些函数我会在前面标上“ *号以示区别。如想查找某系统调用的详细用法,可用man系统调用名命令,比如: man fork。、进程控制:setpriority设置调度优先级modify_ldt读写进程的本地描述表nano sleep使进程睡眠指定的时间nice改变分时进程的优先级pause挂起进程,等待信号pers on ality设置进程运行域prctl对进程进行特定操作ptrace进程跟踪sched_get_priority_max取得静态优先级的上限sched

3、_get_priority_ min取得静态优先级的下限sched_getparam|取得进程的调度参数sched_getscheduler取得指定进程的调度策略sched_rr_get_i nterval取得按RR算法调度的实时进程的时间片长度sched_setparam设置进程的调度参数sched_setscheduler|设置指定进程的调度策略和参数sched_yield进程主动让出处理器,并将自己等候调度队列队尾vfork|创建一个子进程,以供执行新程序,常与execve等冋时使用wait等待子进程终止wait3参见waitwaitpid|等待指定子进程终止wait4| 参见 wait

4、pidcapget获取进程权限capset设置进程权限getsid获取会晤标识号setsid设置会晤标识号二、文件系统控制1文件读写操作fcntl文件控制ope n打开文件creat创建新文件close关闭文件描述字read读文件write写文件readv从文件读入数据到缓冲数组中writev将缓冲数组里的数据写入文件pread对文件随机读pwrite对文件随机写Iseek移动文件指针llseek在64位地址空间里移动文件指针dup复制已打开的文件描述字dup2按指定条件复制文件描述字flock文件加/解锁pollI/O多路转换trun cate截断文件ftrun cate参见 truncat

5、eumask设置文件权限掩码fsy nc把文件在内存中的部分写回磁盘2、文件系统操作access确定文件的可存取性chdir改变当前工作目录fchdir参见chdirchmod改变文件方式fchmod参见chmodchow n改变文件的属主或用户组fchow n参见chownIchow n参见chownchroot改变根目录stat取文件状态信息Istat参见statfstat参见statstatfs取文件系统信息fstatfs参见statfsreaddir读取目录项getde nts读取目录项mkdir创建目录mknod创建索引节点rmdir删除目录ren ame文件改名link创建链接sy

6、mli nk创建符号链接un li nk删除链接readli nk读符号链接的值mount安装文件系统umount卸下文件系统ustat取文件系统信息utime改变文件的访问修改时间utimes参见utimequotactl控制磁盘配额三、系统控制ioctlI/O总控制函数_sysctl读/写系统参数acct启用或禁止进程记账getrlimit获取系统资源上限setrlimit设置系统资源上限getrusage获取系统资源使用情况uselib选择要使用的二进制函数库ioperm设置端口 I/O权限iopl改变进程I/O权限级别outb低级端口操作四、内存管理brk改变数据段空间的分配sbrk参

7、见brkmlock内存页面加锁muni ock内存页面解锁mlockall调用进程所有内存页面加锁muni ockall调用进程所有内存页面解锁mmap映射虚拟内存页munmap去除内存页映射mremap重新映射虚拟内存地址msync将映射内存中的数据写回磁盘mprotect设置内存映像保护getpagesize获取页面大小sync将内存缓冲区数据写回硬盘cacheflush将指定缓冲区中的内容写回磁盘五、网络管理getdoma inn ame取域名setdoma inn ame设置域名gethostid获取主机标识号sethostid设置主机标识号gethost name获取本主机名称set

8、host name设置主机名称六、socket控制socketcallsocket系统调用socket建立socketbi nd绑定socket到端口connect|连接远程主机accept响应socket连接请求send通过socket发送信息sen dto发送UDP信息sen dmsg参见sendrecv通过socket接收信息recvfrom接收UDP信息recvmsg参见recvliste n监听socket端口select对多路同步I/O进行轮询shutdow n关闭socket上的连接getsock name取得本地socket名字getpeer name获取通信对方的 socke

9、t名字getsockopt取端口设置setsockopt设置端口参数sen dfile|在文件或端口间传输数据socketpair创建一对已联接的无名socket七、用户管理getuid获取用户标识号setuid设置用户标志号getgid获取组标识号setgid设置组标志号getegid获取有效组标识号setegid设置有效组标识号geteuid获取有效用户标识号seteuid设置有效用户标识号setregid分别设置真实和有效的的组标识号setreuid分别设置真实和有效的用户标识号getresgid分别获取真实的,有效的和保存过的组标识号setresgid分别设置真实的,有效的和保存过的组标识号getresuid分别获取真实的,有效的和保存过的用户标识号setresuid分别设置真实的,有效的和保存过的用户标识号setfsgid设置文件系统检查时使用的组标识号setfsuid设置文件系统检查时使用的用户标识号getgroups获取后补组标志清单setgroups设置后补组标志清单八、进程间通信1信号2、消息msgctl消息控制操作msgget获取消息队列msgs nd发消息3、管道创建管道4、信号量semctl信号量控制semget获取组信号量semo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论