首页 > 其他分享 >11.1文件描述符0、1、2

11.1文件描述符0、1、2

时间:2024-05-27 10:45:23浏览次数:16  
标签:文件 11.1 标准 描述符 进程 打开

11.1文件描述符

  文件描述符:是内核为了高效管理已被打开的文件所创建的索引,用于被打开的文件,所有执行 I/O 操作的系统调用都通过文件描述;文件描述符是一个简单的非负整数,用以表明每一个被进程所打开的文件,程序刚刚启动的时候,第一个打开的文件是 0,第二个打开的是 1,以此类推。也可以理解为是一个文件的身份 ID

  用户通过操作系统处理信息的过程中,使用的交互设备文件(键盘,鼠标,显示器)

   11.1.1 输入输出标准说明

    STDIN 标准输入    默认的设备是键盘    文件编号为:0

    STDOUT 标准输出   默认的设备是显示器   文件编号为:1,也可以重定向到文件

    STDERR 标准错误   默认的设备是显示器   文件编号为:2,也可以重定向到文件

    查看一个进程打开的哪些文件:

      语法:ll /proc/进程 ID/fd

     注:蓝色的0,1,2,255 就是文件的描述符。一个进程启动时,都会打开 3个文件:标准输入、标准输出、标准错处理。这3个文件分别对应文件描述符为0、1、2 也就是宏替换 STDIN_FILENO、STDOUT_FILENO、STDERR_FILENO。

    /proc/进程 ID/fd  #  这个 fd 目录下,专门存文件描述符

    注:对文件描述符的操作就是对文件本身的操作。可以直接通过操作文件描述来修改文件。

    例1:查看和临时设置一个进程最多可以打开几个文件,即:一个进程可以打开的文件描述符限制

 

标签:文件,11.1,标准,描述符,进程,打开
From: https://www.cnblogs.com/vless/p/18211354

相关文章

  • Python筑基之旅-文件(夹)和流
    目录一、文件操作1、文件打开与关闭2、文件读写3、文件操作模式4、文件编码二、文件夹操作1、创建文件夹2、删除文件夹3、改变当前工作目录4、获取当前工作目录5、检查文件/文件夹是否存在6、遍历文件夹三、文件路径操作1、获取绝对路径2、构建完整路径3、检查......
  • 怎么解决大文件跨国传输面临的问题?
    许多企业可能会涉及到大文件跨国传输场景,在进行超过1G的文件传输时,会面临一些挑战,那么哪些行业会存在这样的场景呢?以下行业或情景中比较普遍:1、跨国企业集团:跨国企业集团通常在全球范围内分布有多个分支机构或办事处,它们可能需要在不同国家之间传输大量的文件和数据,如公司财务......
  • vpnike.dll文件丢失导致程序无法运行问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个vpnike.dll文件(挑选合适的版本文件)把它放......
  • w32time.dll文件丢失导致程序无法运行问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个w32time.dll文件(挑选合适的版本文件)把它放......
  • uxsms.dll文件丢失导致程序无法运行问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个uxsms.dll文件(挑选合适的版本文件)把它放入......
  • usbmon.dll文件丢失导致程序无法运行问题
    其实很多用户玩单机游戏或者安装软件的时候就出现过这种问题,如果是新手第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该dll文件丢失了或没有安装一些系统软件平台所需要的动态链接库,这时你可以下载这个usbmon.dll文件(挑选合适的版本文件)把它放......
  • IDEA resource下的文件夹内的配置文件不生效,但resource下的配置生效
    问题:我的resource如图所示,运行时发现只有resource下的application.yml被识别到了,但bak里的三个配置没有生效 解决: 在projectstructure中打开molude,打开resource,选中其下不起作用的文件夹,如图中的bak,将其选为resource资源文件,即点击下图位置 之后再重新运行,可以发现bak......
  • linux shell中移除文件的后缀、前缀
     001、[root@PC1test2]#a="a.csv.map.txt"[root@PC1test2]#echo$aa.csv.map.txt[root@PC1test2]#echo${a%.*}a.csv.map[root@PC1test2]#echo${a%%.*}a 。 002、[root@PC1test2]#ls[root@PC1test2]#a="a.csv.map.txt"[root@......
  • 解决win11C盘文件没有修改权限(图文教程)
    前言​ 这个应该很多人都遇到过,就是提示文件夹没有修改权限。一般在电脑刚注册时候就是管理员了(不是的话可以去搜索怎么切换成管理员),但是有了管理员以后还是默认user权限,这个虽然很安全但是也很不方便,我之前修改mysql配置文件可修改c盘下面应用的配置都得另存为然后覆盖,甚至我之......
  • vue中引入js脚本块或者js文件 js函数 js方法
    一、vue中,使用js函数的方法在vue文件中,如果想要在组件里,通过事件触发,调用到函数,这个函数需要放在特定的位置,如下:<script>exportdefault{methods:{t1(){},t2(){},t3(){}}}</script>例如用户点击,通过click事件触发,调用t1函数,......