当前位置:  技术问答>linux和unix

文件描述符到底是什么东西?

    来源: 互联网  发布时间:2016-02-27

    本文导语:  新手,看文件描述符有些糊涂了,下面的哪种表述是正确的? 1> 文件描述符就是一个整数(例如:0,1,2),但是通过这个数字内核可以算出文件的访问权限等 2> 文件描述符就是一个整数,但是这个整数可以看作另外一个...

新手,看文件描述符有些糊涂了,下面的哪种表述是正确的?

1> 文件描述符就是一个整数(例如:0,1,2),但是通过这个数字内核可以算出文件的访问权限等
2> 文件描述符就是一个整数,但是这个整数可以看作另外一个数据结构的索引,这个数据结构中存储了关于此文件的相关信息
3> 如果有其他解释,请大家发言


|
"1 > 文件描述符就是一个整数(例如:0,1,2),但是通过这个数字内核可以算出文件的访问权限等"
我觉得是掩码,如一个32位无符号整数,如0x0001,0x0002,0x0004,0x0008,0x00016...
每个2进制位代表一个功能,如该位为1就表示有,为零表示无

|

|
文件描述符:标识文件用的,楼主应该知道 

文件描述符标志(close_on_exec):仅仅是一个标志,当你fork了一个子进程,然后在子进程中调用了exec函数时就用到了该 
标志.意义是:执行exec前是否要关闭这个文件描述符.如果我没说清楚,建议你看下 第二版的56页的3.10,注意(1)中的(a),然后你在翻到190页,看下数第5行和第六行       看完应该就明白了 

文件状态标志:是在系统文件表中,什么write,read,trunc这些东西.

|
就是一个名,可以根据它找到具体的控制结构
就象你叫花剑独舞一样,可以根据他找到你这个人.

|
就像windows下的句柄一样,用它可以方面的操作文件。
在linux/unix下,基本上都是对文件的读写。所意文件描述符很重要。

|
打开一个文件需要维护很多数据,不光是权限的问题,内核对每一个打开文件都分配了一个数据结构,而文件描述符则是指向这些数据结构的索引,内核可以通过一个文件描述符查到相应文件的数据。所以,从某种意义上,你的第二种解释是比较接近的。

|
个人觉得是一个handle,用来操作文件...

|
LZ的描述2比较接近了, 他就是一个内核用的标记,你通过这个标记告诉内核你要操作那个文件.

|
应该是第二种

|
我也很模糊,謝謝樓主和達人們

    
 
 

您可能感兴趣的文章:

  • 文件描述符集fd_set * readfds;书上这样描述数组元素的每一位对应一个文件描述符,第一个元素代表文件描述符0到31,数组第二个元素代表文
  • 每个线程都进行申请文件描述符的操作的话,会不会发生文件描述符申请冲突?
  • 关于文件描述符问题
  • 监视文件和目录文件描述符的问题
  • 文件描述符,文件句柄的区别?
  • 如何让文件描述符共享一个文件表项
  • fork一个子进程后在打开一个文件,如何在子进程中使用这个打开的文件描述符号
  • UNIX的文件描述符传递问题
  • 文件描述的回收问题,谢谢
  • 文件描述符
  • 请问FILE结构体和文件描述符有什么联系?谢谢
  • 文件描述符的限制?(共享内存)
  • 哪里有ejb部署文件的 dtd描述
  • 有没有办法知道系统中那些文件描述符正在被使用?
  • 文件描述符的数据结构在哪定义?
  • Linux打开的文件描述符必须手动close吗
  • 怎么通过FILE指针得到文件描述符?
  • 如何判断文件描述符合法?(Linux+C)
  • unix/linux知识 iis7站长之家
  • close 一个文件描述符会不会改变其值?
  • 各位高人,关于IDE的驱动程序,我看蒙了,谁能告诉我到底linux源文件中到底那些是跟IDE硬盘驱动有关的?
  • jsp文件到底需不需要编译?
  • 请教锁文件到底是怎么回事?它是什么原理?怎么工作的?多谢!
  • Linux内核的源文件到底在哪个目录下啊?
  • 急问高人:后缀名为ZFS的文件到底怎么打开?
  • 到底包含哪个termios.h头文件?
  • #include<sys/stat.h> 中的stat.h文件到底在哪个目录下面?
  • 求救:我的APACHE配置文件到底怎么了?大家都进来帮帮忙,谢谢。只有50了,倾家荡产问问题。
  • samba 的问题...............到底如何使用它共享windows的文件阿.
  • #include <linux/*.h> :到底加载的哪个路径下的文件?
  • 一直没搞清楚,文件系统到底是怎么回事
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 一个.java文件中怎样来调用另一个.java文件中的变量及其它东西!
  • 弱弱地问:popt.h文件中的东西是做什么用的?谢谢!
  • ftp 怎样上传或下载一个文件夹的东西?
  • 流是什么东西,和文件的关系?
  • Redhat下用什么东西播放avi文件。
  • 请问 *.vsd 文件用什么东西打开?
  • 在java中往一个文本文件写东西时如何换行?
  • 在rd7.2中好象已经没有inetd.conf文件了 不知道用什么东西代替了?
  • smart upload 中哪个东西可以读出上传文件的名字并显示?
  • 请问:在配置Qt时,很多文档都说在.profile,.login里加东西,但是我好像没有发现有这两个文件上,请问这些文件在哪个目录下啊
  • 请问application的程序没办法生成.exe文件,那做出来的东西别人怎么用??
  • 在tomcat中,后缀为war的文件是什么东西,有什么用途?
  • 为什么明明/etc下面只有sysconfig这个目录,而没有sysconfig这个文件,但是vi sysconfig这个命令却能编辑到东西?
  • 输出重定向的问题:为什么输出到文件的东西不对?
  • 我要从一个配置文件中提出 [ ] 中的东西
  • rdh8.0 linux 中我解压一个下载的东西。出现两个文件,在图表上有个锁的标志,不能删除,不知道是什么原因
  • linux下如何用脚本从文件中得到我感兴趣的东西!熟悉linux下脚本的一定要看呀!
  • 这个jsp文件用浏览器看没东西为什么?
  • 如何设置文件的大小?要求不需要往文件中写入东西,就可以扩展文件的大小
  • C++ I/O 成员 eof():如果处于文件结尾处则返回true
  • Shell脚本如何递归现实一个文件夹中的文件(文件夹中含有文件夹)
  • WinDows8最新版文件夹加密
  • 求命令:什么命令可以把文件夹下所有的文件按修改时间先后排出来,包括子文件夹里的文件。
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • [提问]Linux下如何把多个.a文件编译一个.so文件,或者把多个.so文件编译成一个.so文件
  • python异常信息堆栈输出到日志文件
  • 请问:proc中的头文件中能包含头文件吗?(感觉如果头文件中包含头文件的话,在链接时就会有错误啊)
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 我要实现当进程打开文件时,根据文件名判断是否符合要求,符合后处理文件,再把文件返回给进程,怎么实现啊
  • 在MyEclipse中设开启xml文件自动提示和自动完成功能
  • vi 中编辑两个文件,怎样从其中一个文件拷一段内容到另一个文件中。(同时打开两个文件)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3