[Linux]有哪些常见的System Call?

Linux 中有许多 System call,以下是其中的一些常见的 System call:

  • open:打开一个文件
  • close:关闭一个文件
  • read:从文件中读取数据
  • write:将数据写入文件
  • lseek:控制文件位置指针
  • fcntl:操作文件描述符标识
  • socket:创建一个套接字
  • connect:建立一个连接
  • bind:将一个套接字绑定到一个地址
  • listen:监听套接字上的连接
  • accept:接受一个客户端连接
  • send:向另一个套接字发送数据
  • recv:从另一个套接字接收数据
  • fork:创建一个新的进程
  • execve:执行一个新的程序
  • waitpid:等待子进程结束
  • kill:向进程发送一个信号
  • getpid:获取当前进程的 ID
  • uname:获取系统名称和版本号
  • gettimeofday:获取当前时间和日期
  • mmap:建立内存映射文件
  • mprotect:修改内存页面的访问权限
  • munmap:解除内存映射区域

以上是一些常见的 System call,它们可以在用户空间的程序中被调用,并与内核空间中的操作系统进行交互。这些 System call 被应用广泛,为各种不同类型的应用程序提供支持,并对调用它们的程序提供有益的服务。

值得注意的是,Linux 中还有许多其他的 System call,有些是专门为某些应用程序而设计的。而且,随着技术的不断发展和新的应用程序的出现,我们还将看到更多的 System call 出现,并为用户空间提供更多的功能和服务。

posted @ 2023-04-13 15:39  SkyBiuBiu  阅读(187)  评论(0编辑  收藏  举报