在计算中,系统调用是计算机程序从执行它的操作系统的内核请求服务的编程方式。系统调用是程序与操作系统交互的一种方式。计算机程序在向操作系统内核发出请求时会进行系统调用。系统调用通过应用程序接口(API)向用户程序提供操作系统的服务。它提供了进程和操作系统之间的接口,以允许用户级进程请求操作系统的服务。系统调用是内核系统的唯一入口点。所有需要资源的程序都必须使用系统调用。
系统调用提供的服务:
- 流程创建和管理
- 主存管理
- 文件访问、目录和文件系统管理
- 设备处理(I/O)
- 保护
- 联网等系统调用的类型:有 5 种不同类别的系统调用 –
- 进程控制:结束、中止、创建、终止、分配和释放内存。
- 文件管理:创建、打开、关闭、删除、读取文件等。
- 设备管理
- 信息维护
- 沟通
Windows Unix 过程控制 CreateProcess() ExitProcess() WaitForSingleObject() 叉子() 退出() 等待() 文件操作 CreateFile() ReadFile() WriteFile() CloseHandle() 打开() 读() 写() 关闭() 设备操作 SetConsoleMode() ReadConsole() WriteConsole() ioctl() 读() 写() 信息维护 GetCurrentProcessID() SetTimer() 睡眠() getpid() 警报() 睡眠() 沟通 CreatePipe() CreateFileMapping() MapViewOfFile() 管道() shmget() mmap() 保护 SetFileSecurity() InitlializeSecurityDescriptor() SetSecurityDescriptorGroup() chmod() umask() chown()