您现在的位置: 万盛学电脑网 >> 网络安全 >> 网络基础知识 >> 正文

linux系统编程之基础必备(三):文件描述符file descriptor与in

作者:佚名    责任编辑:admin    更新时间:2022-06-22

       每个进程在Linux内核中都有一个task_struct结构体来维护进程相关的 信息,称为进程描述符(Process Descriptor),而在操作dows.yuucn.com/238.html">系统理论中称为进程控制块 (PCB,Process Control Block)。task_struct中有一个指针(struct d/78870.html">files_struct *files; )指向files_struct结构体,称为文件 描述符表,其中每个表项包含一个指向已打开的文件的指针,如下图所示。 织梦好,好织梦

linux系统编程之基础必备(三):文件描述符file descriptor与in dedecms.com


dedecms.com


织梦内容管理系统


         用户程序不能直接访问内核中的文件描述符表,而只能使用文件描述符表的索引 (即0、1、2、3这些数字),这些索引就称为文件描述符(File Descriptor),用int 型变量保存。 当调用open 打开一个文件或创建一个新文件时,内核分配一个文件描述符并返回给用户程序,该文件描述符表项中的指针指向新打开的文件。当读写文件时,用户程序把文件描述符传给read 或write ,内核根据文件描述符找到相应的表项,再通过表项中的指针找到相应的文件。