看啥推荐读物
专栏名称: Linux爱好者
伯乐在线旗下账号,「Linux爱好者」专注分享 Linux/Unix 相关内容,包括:工具资源、使用技巧、课程书籍等。
今天看啥  ›  专栏  ›  Linux爱好者

Linux 文件描述符 fd 究竟是什么?

Linux爱好者  · 公众号  · linux  · 2021-05-10 11:49
前情概要通过上篇 Go 存储基础 — 文件 IO 的姿势, 我们看到有两种文件读写的方式,一种是系统调用的方式,操作的对象是一个整数 fd,另一种是 Go 标准库自己封装的标准库 IO ,操作对象是 Go 封装的 file 结构体,但其内部还是针对整数 fd 的操作。所以一切的本源是通过 fd 来操作的,那么,这个 fd 究竟是什么?就这个点我们深入剖析。fd 是什么?fd 是 File descriptor 的缩写,中文名叫做:文件描述符。文件描述符是一个非负整数,本质上是一个索引值(这句话非常重要)。什么时候拿到的 fd ?当打开一个文件时,内核向进程返回一个文件描述符( open 系统调用得到 ),后续 read、write 这个文件时,则只需要用这个文件描述符来标识该文件,将其作为参数传入 read、write ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照