Linux操作系统中系统调用接口
进程控制 | |
fork | 创建一个新进程 |
clone | 按指定条件创建子进程 |
execve | 运行可执行文件 |
exit | 终止进程 |
_exit | 立即终止当前进程 |
getdtablesize | 进程所能打开的最大文件数 |
getpgid | 获取指定进程组标识号 |
setpgid | 设置指定进程组标志号 |
getpgrp | 获取当前进程组标识号 |
setpgrp | 设置当前进程组标志号 |
getpid | 获取进程标识号 |
getppid | 获取父进程标识号 |
getpriority | 获取调度优先级 |
setpriority | 设置调度优先级 |
modify_ldt | 读写进程的本地描述表 |
nanosleep | 使进程睡眠指定的时间 |
nice | 改变分时进程的优先级 |
pause | 挂起进程,等待信号 |
personality | 设置进程运行域 |
prctl | 对进程进行特定操作 |
ptrace | 进程跟踪 |
sched_get_priority_max | 取得静态优先级的上限 |
sched_get_priority_min | 取得静态优先级的下限 |
sched_getparam | 取得进程的调度参数 |
sched_getscheduler | 取得指定进程的调度策略 |
sched_rr_get_interval | 取得按RR算法调度的实时进程的时间片长度 |
sched_setparam | 设置进程的调度参数 |
sched_setscheduler | 设置指定进程的调度策略和参数 |
sched_yield | 进程主动让出处理器,并将自己等候调度队列队尾 |
vfork | 创建一个子进程,以供执行新程序,常与execve等同时使用 |
wait | 等待子进程终止 |
wait3 | 等待子进程终止 |
waitpid | 等待指定子进程终止 |
wait4 | 等待指定子进程终止 |
capget | 获取进程权限 |
capset | 设置进程权限 |
getsid | 获取会晤标识号 |
setsid | 设置会晤标识号 |
文件读写操作 | |
fcntl | 文件控制 |
open | 打开文件 |
creat | 创建新文件 |
close | 关闭文件描述字 |
read | 读文件 |
write | 写文件 |
readv | 从文件读入数据到缓冲数组中 |
writev | 将缓冲数组里的数据写入文件 |
pread | 对文件随机读 |
pwrite | 对文件随机写 |
lseek | 移动文件指针 |
_llseek | 在64位地址空间里移动文件指针 |
dup | 复制已打开的文件描述字 |
dup2 | 按指定条件复制文件描述字 |
flock | 文件加/解锁 |
poll | I/O多路转换 |
truncate | 截断文件 |
ftruncate | 截断文件 |
umask | 设置文件权限掩码 |
fsync | 把文件在内存中的部分写回磁盘 |
文件操作系统 | |
access | 确定文件的可存取性 |
chdir | 改变当前工作目录 |
fchdir | 改变当前工作目录 |
chmod | 改变文件方式 |
fhmod | 改变文件方式 |
chown | 改变文件的属主或用户组 |
fhown | 改变文件的属主或用户组 |
lhown | 改变文件的属主或用户组 |
chroot | 改变根目录 |
stat | 取文件状态信息 |
lstat | 取文件状态信息 |
fstat | 取文件状态信息 |
statfs | 取文件系统信息 |
fstatfs | 取文件系统信息 |
readdir | 读取目录项 |
getdents | 读取目录项 |
mkdir | 创建目录 |
mknod | 创建索引节点 |
rmdir | 删除目录 |
rename | 文件改名 |
link | 创建链接 |
symlink | 创建符号链接 |
unlink | 删除链接 |
readlink | 读符号链接的值 |
mount | 安装文件系统 |
umount | 卸下文件系统 |
ustat | 取文件系统信息 |
utime | 改变文件的访问修改时间 |
utimes | 改变文件的访问修改时间 |
quotactl | 控制磁盘配额 |
系统控制 | |
ioctl | I/O总控制函数 |
_sysctl | 读/写系统参数 |
acct | 启用或禁止进程记账 |
getrlimit | 获取系统资源上限 |
setrlimit | 设置系统资源上限 |
getrusage | 获取系统资源使用情况 |
uselib | 选择要使用的二进制函数库 |
ioperm | 设置端口I/O权限 |
iopl | 改变进程I/O权限级别 |
outb | 低级端口操作 |
reboot | 重新启动 |
swapon | 打开交换文件和设备 |
swapoff | 打开交换文件和设备 |
bdflush | 控制bdflush守护进程 |
sysfs | 取核心支持的文件系统类型 |
sysinfo | 取得系统信息 |
adjtimex | 调整系统时钟 |
alarm | 设置进程的闹钟 |
getitimer | 获取计时器值 |
setitimer | 设置计时器值 |
gettimeofday | 取时间和时区 |
settimeofday | 设置时间和时区 |
stime | 设置系统日期和时间 |
time | 取得系统时间 |
times | 取进程运行时间 |
uname | 获取当前UNIX系统的名称、版本和主机等信息 |
vhangup | 挂起当前终端 |
nfsservctl | 对NFS守护进程进行控制 |
vm86 | 进入模拟8086模式 |
create_module | 创建可装载的模块项 |
delete_module | 删除可装载的模块项 |
init_module | 初始化模块 |
query_module | 查询模块信息 |
*get_kernel_syms | 取得核心符号,已被query_module代替 |
内存管理 | |
brk | 改变数据段空间的分配 |
sbrk | 改变数据段空间的分配 |
mlock | 内存页面加锁 |
munlock | 内存页面解锁 |
mlockall | 调用进程所有内存页面加锁 |
munlockall | 调用进程所有内存页面解锁 |
mmap | 映射虚拟内存页 |
munmap | 去除内存页映射 |
mremap | 重新映射虚拟内存地址 |
msync | 将映射内存中的数据写回磁盘 |
mprotect | 设置内存映像保护 |
getpagesize | 获取页面大小 |
sync | 将内存缓冲区数据写回硬盘 |
cacheflush | 将指定缓冲区中的内容写回磁盘 |
网络 | |
getdomainname | 取域名 |
setdomainname | 设置域名 |
gethostid | 获取主机标识号 |
sethostid | 设置主机标识号 |
gethostname | 获取本主机名称 |
sethostname | 设置主机名称 |
socket套接字 | |
socketcall socket | 系统调用 |
socket | 建立socket |
bind | 绑定socket到端口 |
connect | 连接远程主机 |
accept | 响应socket连接请求 |
send | 通过socket发送信息 |
sendto | 发送UDP信息 |
sendmsg | 通过socket发送信息 |
recv | 通过socket接收信息 |
recvfrom | 接收UDP信息 |
recvmsg | 通过socket接收信息 |
listen | 监听socket端口 |
select | 对多路同步I/O进行轮询 |
shutdown | 关闭socket上的连接 |
getsockname | 取得本地socket名字 |
getpeername | 获取通信对方的socket名字 |
getsockopt | 取端口设置 |
setsockopt | 设置端口参数 |
sendfile | 在文件或端口间传输数据 |
socketpair | 创建一对已联接的无名socket |
用户管理 | |
getuid | 获取用户标识号 |
setuid | 设置用户标志号 |
getgid | 获取组标识号 |
setgid | 设置组标志号 |
getegid | 获取有效组标识号 |
setegid | 设置有效组标识号 |
geteuid | 获取有效用户标识号 |
seteuid | 设置有效用户标识号 |
setregid | 分别设置真实和有效的的组标识号 |
setreuid | 分别设置真实和有效的用户标识号 |
getresgid | 分别获取真实的,有效的和保存过的组标识号 |
setresgid | 分别设置真实的,有效的和保存过的组标识号 |
getresuid | 分别获取真实的,有效的和保存过的用户标识号 |
setresuid | 分别设置真实的,有效的和保存过的用户标识号 |
setfsgid | 设置文件系统检查时使用的组标识号 |
setfsuid | 设置文件系统检查时使用的用户标识号 |
getgroups | 获取后补组标志清单 |
setgroups | 设置后补组标志清单 |
进程间通信 | |
ipc | 进程间通信总控制调用 |
sigaction | 设置对指定信号的处理方法 |
sigprocmask | 根据参数对信号集中的信号执行阻塞/解除阻塞等操作 |
sigpending | 为指定的被阻塞信号设置队列 |
sigsuspend | 挂起进程等待特定信号 |
signal | 参见signal |
kill | 向进程或进程组发信号 |
*sigblock | 向被阻塞信号掩码中添加信号,已被sigprocmask代替 |
*siggetmask | 取得现有阻塞信号掩码,已被sigprocmask代替 |
*sigsetmask | 用给定信号掩码替换现有阻塞信号掩码,已被sigprocmask代替 |
*sigmask | 将给定的信号转化为掩码,已被sigprocmask代替 |
*sigpause | 作用同sigsuspend,已被sigsuspend代替 |
sigvec | 为兼容BSD而设的信号处理函数,作用类似sigaction |
ssetmask | ANSI C的信号处理函数,作用类似sigaction |
消息 | |
msgctl | 消息控制操作 |
msgget | 获取消息队列 |
msgsnd | 发消息 |
msgrcv | 取消息 |
管道 | |
pipe 创建管道 | |
信号量 | |
semctl | 信号量控制 |
semget | 获取一组信号量 |
semop | 信号量操作 |
共享内存 | |
shmctl | 控制共享内存 |
shmget | 获取共享内存 |
shmat | 连接共享内存 |
shmdt | 拆卸共享内存 |
Linux操作系统中系统调用接口的更多相关文章
- [转帖]Linux操作系统中,*.zip、*.tar、*.tar.gz、*.tar.bz2、*.tar.xz、*.jar、*.7z等格式的压缩与解压
Linux操作系统中,*.zip.*.tar.*.tar.gz.*.tar.bz2.*.tar.xz.*.jar.*.7z等格式的压缩与解压 https://blog.csdn.net/gatieme ...
- Linux操作系统中打开文件数量的查看方法
Linux操作系统中打开文件数量的查看方法ulimit -n 4096也就是限制用户的最大文件打开数为4096个 在网上查了关于怎么查看文件打开数的文章大致有两种说法/proc/sys/fs/file ...
- Linux操作系统中的文件目录结构详细介绍
"/" :Linux文件系统的入口.也是最高一级的目录. "/bin":基本系统所需要的命令,功能和"/usr/bin"类似,这个目录下的文 ...
- Linux操作系统及调用接口
Linux操作系统包含以下各子系统: 系统调用子系统:操作系统的功能调用同一入口: 进程管理子系统:对执行程序进行生命周期和资源管理: 内存管理子系统:对系统的内存进行管理.分配.回收.隔离: 文件子 ...
- Linux驱动中completion接口浅析(wait_for_complete例子,很好)【转】
转自:http://blog.csdn.net/batoom/article/details/6298267 completion是一种轻量级的机制,它允许一个线程告诉另一个线程工作已经完成.可以利用 ...
- Linux驱动中completion接口浅析(wait_for_complete例子,很好)
completion是一种轻量级的机制,它允许一个线程告诉另一个线程工作已经完成.可以利用下面的宏静态创建completion: DECLARE_CO ...
- linux操作系统中的netstat命令查看端口状态的使用和window操作系统查看端口号
1:linux操作系统 netstat 命令用于显示各种网络相关信息,即网络状态.而我主要使用netstat查看端口号是否启动: 参数详情: 1 -a (all)显示所有选项,默认不显示LISTEN相 ...
- Linux操作系统中/sbin/init程序的执行过程
当init启动后,它通过执行各种启动事务来继续引导进程(检查并监视文件系统,启动后台程序daemons,等等),直至完成用户所有操作环境的设置工作.这里主要涉及4个程序:init.getty(aget ...
- Linux操作系统中文件结构stat中st_size的说明以及对于文件中洞(Holes)的理解
文件stat结构体中st_size成员 对于所有的文件类型,st_size成员对其中的普通文件.目录以及符号链接有实在的意义.其中,对于普通文件而言,st_size记录了该文件的实际大小:对于目录而言 ...
随机推荐
- robotframe中使用report,设置路径带有时间戳
1.打开C:\Python27\Lib\site-packages\robotide\contrib\testrunner,找到testrunner.py. 修改代码块def _create_te ...
- flink with rabbitmq,sink source mysql redis es
flink-dockerhttps://github.com/melentye/flink-docker https://shekharsingh.com/blog/2016/11/12/apache ...
- [math] 什么是双曲函数(转发)
我完全不记得上高中的时候学习过双曲函数...额,暴露了... 原文地址:https://zhuanlan.zhihu.com/p/20042215 可能是最好的讲解双曲函数的文章 零.写在前面 (近期 ...
- [daily] 如何用emacs+xcscope阅读内核源码
假设 首先我假设: 你已经学会了使用emacs. 同时也学会了使用cscope. 读过cscope官网上,关于emacs的使用指引. 它的指引就是请你去阅读xcscope.el的源码,当然这无可厚非, ...
- jmeter之regular expression extractor ,并循环调用匹配到的多个值
jmeter之regular expression extractor 官方介绍:http://jmeter.apache.org/usermanual/regular_expressions.htm ...
- .net拼接json字符串
{ while (reader.Read()) { if (reader.HasRows) { JSONstring += "{"; JSONstring += "\&q ...
- 解决Warning: unlink(/storage/cache/cache.catalog.language.1556158719): No such file or directory in /system/library/cache/file.php on line 68问题
ytkah在调试opencart项目时提示Warning: unlink(/storage/cache/cache.catalog.language.1556158719): No such file ...
- Asp.net MVC WebApi项目的自动接口文档及测试功能打开方法
https://blog.csdn.net/foren_whb/article/details/78866133
- vue中 this.$set的用法
当vue的data里边声明或者已经赋值过的对象或者数组(数组里边的值是对象)时,向对象中添加新的属性,如果更新此属性的值,是不会更新视图的. <template> <div id=& ...
- 如何创建自己的composer包
composer中文网 :https://www.phpcomposer.com/ 一.前期准备: composer 安装 Windows安装: 1.下载安装包,https://getcomposer ...