热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Linux系统调用接口分类整理

Linux系统调用接口分类整理进程控制fork创建一个新进程clone按指定条件创建子进程execve运行可执行文件exit终止进程_exit立即终止当前进程getdtablesi

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文件加/解锁
pollI/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控制磁盘配额
  
系统控制 
ioctlI/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  拆卸共享内存


推荐阅读
  • 掌握PHP编程必备知识与技巧——全面教程在当今的PHP开发中,了解并运用最新的技术和最佳实践至关重要。本教程将详细介绍PHP编程的核心知识与实用技巧。首先,确保你正在使用PHP 5.3或更高版本,最好是最新版本,以充分利用其性能优化和新特性。此外,我们还将探讨代码结构、安全性和性能优化等方面的内容,帮助你成为一名更高效的PHP开发者。 ... [详细]
  • Android 构建基础流程详解
    Android 构建基础流程详解 ... [详细]
  • 本文详细解析了使用C++实现的键盘输入记录程序的源代码,该程序在Windows应用程序开发中具有很高的实用价值。键盘记录功能不仅在远程控制软件中广泛应用,还为开发者提供了强大的调试和监控工具。通过具体实例,本文深入探讨了C++键盘记录程序的设计与实现,适合需要相关技术的开发者参考。 ... [详细]
  • 在探讨Hibernate框架的高级特性时,缓存机制和懒加载策略是提升数据操作效率的关键要素。缓存策略能够显著减少数据库访问次数,从而提高应用性能,特别是在处理频繁访问的数据时。Hibernate提供了多层次的缓存支持,包括一级缓存和二级缓存,以满足不同场景下的需求。懒加载策略则通过按需加载关联对象,进一步优化了资源利用和响应时间。本文将深入分析这些机制的实现原理及其最佳实践。 ... [详细]
  • CentOS 7环境下Jenkins的安装与前后端应用部署详解
    CentOS 7环境下Jenkins的安装与前后端应用部署详解 ... [详细]
  • 在过去,我曾使用过自建MySQL服务器中的MyISAM和InnoDB存储引擎(也曾尝试过Memory引擎)。今年初,我开始转向阿里云的关系型数据库服务,并深入研究了其高效的压缩存储引擎TokuDB。TokuDB在数据压缩和处理大规模数据集方面表现出色,显著提升了存储效率和查询性能。通过实际应用,我发现TokuDB不仅能够有效减少存储成本,还能显著提高数据处理速度,特别适用于高并发和大数据量的场景。 ... [详细]
  • 在PHP的设计中,预定义了9个超级全局变量、8个魔术变量和13个魔术函数,这些变量和函数无需声明即可在脚本的任意位置使用。这些特性在PHP开发中极为常见,能够显著提升开发效率和代码的灵活性。相比之下,Java并没有类似的内置机制,但通过其他方式如上下文对象和反射机制,也可以实现类似的功能。本文将详细探讨这两种语言中这些特殊变量和函数的使用方法及其应用场景。 ... [详细]
  • 全面解析JavaScript代码注释技巧与标准规范
    在Web前端开发中,JavaScript代码的可读性和维护性至关重要。本文将详细介绍如何有效地使用注释来提高代码的可读性,并探讨JavaScript代码注释的最佳实践和标准规范。通过合理的注释,开发者可以更好地理解和维护复杂的代码逻辑,提升团队协作效率。 ... [详细]
  • 在《Linux高性能服务器编程》一书中,第3.2节深入探讨了TCP报头的结构与功能。TCP报头是每个TCP数据段中不可或缺的部分,它不仅包含了源端口和目的端口的信息,还负责管理TCP连接的状态和控制。本节内容详尽地解析了TCP报头的各项字段及其作用,为读者提供了深入理解TCP协议的基础。 ... [详细]
  • 在C#编程中,设计流畅的用户界面是一项重要的任务。本文分享了实现Fluent界面设计的技巧与方法,特别是通过编写领域特定语言(DSL)来简化字符串操作。我们探讨了如何在不使用`+`符号的情况下,通过方法链式调用来组合字符串,从而提高代码的可读性和维护性。文章还介绍了如何利用静态方法和扩展方法来实现这一目标,并提供了一些实用的示例代码。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 帝国CMS中的信息归档功能详解及其重要性
    本文详细解析了帝国CMS中的信息归档功能,并探讨了其在内容管理中的重要性。通过归档功能,用户可以有效地管理和组织大量内容,提高网站的运行效率和用户体验。此外,文章还介绍了如何利用该功能进行数据备份和恢复,确保网站数据的安全性和完整性。 ... [详细]
  • POJ 2482 星空中的星星:利用线段树与扫描线算法解决
    在《POJ 2482 星空中的星星》问题中,通过运用线段树和扫描线算法,可以高效地解决星星在窗口内的计数问题。该方法不仅能够快速处理大规模数据,还能确保时间复杂度的最优性,适用于各种复杂的星空模拟场景。 ... [详细]
  • 开发日志:201521044091 《Java编程基础》第11周学习心得与总结
    开发日志:201521044091 《Java编程基础》第11周学习心得与总结 ... [详细]
  • 如何利用Java 5 Executor框架高效构建和管理线程池
    Java 5 引入了 Executor 框架,为开发人员提供了一种高效管理和构建线程池的方法。该框架通过将任务提交与任务执行分离,简化了多线程编程的复杂性。利用 Executor 框架,开发人员可以更灵活地控制线程的创建、分配和管理,从而提高服务器端应用的性能和响应能力。此外,该框架还提供了多种线程池实现,如固定线程池、缓存线程池和单线程池,以适应不同的应用场景和需求。 ... [详细]
author-avatar
小虎
每一天,不管用什么方式,我都要变得越来越好!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有