开发者社区 问答 正文

系统调用(system call)是什么呢?

系统调用(system call)是什么呢?

展开
收起
游客4ztx2pti3xtdw 2022-03-31 14:39:38 483 分享 版权
1 条回答
写回答
取消 提交回答
  • 系统调用提供的函数如 open, close, read, write, ioctl 等,需包含头文件 unistd.h。以 write 为例:其函数原型为 size_t write(int fd, const void *buf, size_t nbytes),其 操作对象为文件描述符或文件句柄 fd(file descriptor),要想写一个文件,必须先以可写权 限用 open 系统调用打开一个文件,获得所打开文件的 fd,例如 fd=open("/dev/video", O_RDWR)。fd 是一个整型值,每新打开一个文件,所获得的 fd 为当前最大 fd 加 1。

    2022-03-31 14:40:14
    赞同 展开评论
问答地址: