浅谈 FD 、PCB 以及 进程内存布局

news2025/2/27 20:42:28

文章目录

    • 名词解释
    • 概念介绍
    • 进程内存布局

名词解释

FD:file description,文件描述符,是一个指针变量。
PCB:进程控制块。

概念介绍

我们知道,linux 里面的文件都有基本信息,例如:文件路径、文件状态、所有者、所属组等等。
那么,当成功 open 一个文件后,文件的这些信息保存在哪呢?
前面说到 fd 是一个指针变量,那么被成功open的文件的信息,就是保存在 fd 指针中,也就是 fd 指针指向这个被打开的文件。
在这里插入图片描述

那么,fd 指针自己又是保存在哪呢?
这里就引出了 PCB 的概念。

PCB 进程控制块 会记录重要信息:
进程id、文件描述符表、进程状态、进程工作目录、*umask掩码、信号、用户id、组id。

PCB 的本质就是结构体。这个结构体里面有一个重要的成员结构体指针变量:文件描述符表


```c
struct task_struct {
 ...
/* open file information */
 struct files_struct *files;   // 文件描述符表
 ...
};

这个文件描述符表里面就记录了当前进程成功打开的,所有文件的 fd 值。
在这里插入图片描述
左侧的 i、j、k 表示文件的 fd 值,是整型。fd 取值的范围是 0 - 1023,也就是一个进程最多只能打开 1024 个文件。若要修改这个值,需要重新编译内核。

进程内存布局

前面提到 PCB 的概念:PCB里面有一个重要的结构体成员指针变量:文件描述符表。这个 文件描述符表 里面存放的就是 fd,指向被打开的文件。
那么这个 PCB 又是存放在哪里呢?
这里就引出了"进程内存布局",看下图:
在这里插入图片描述
0-3G 就是用户空间。3-4G就是内核空间。

内存段 里存放的内容如下:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1473393.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Redis 管道详解

Redis 管道 关键词:Pipeline Pipeline 简介 Redis 是一种基于 C/S 模型以及请求/响应协议的 TCP 服务。通常情况下,一个 Redis 命令的请求、响应遵循以下步骤: 客户端向服务端发送一个查询请求,并监听 Socket 返回&#xff08…

SAR ADC学习笔记(2)

SAR ADC工作原理 基本算法:二进制搜索 / 折半查找 SAR ADC基本结构:采样保持电路、电容DAC、比较器、SAR逻辑

Docker Volume

"Ice in my vein" Docker Volume(存储卷) 什么是存储卷? 存储卷就是: “将宿主机的本地文件系统中存在的某个目录,与容器内部的文件系统上的某一目录建立绑定关系”。 存储卷与容器本身的联合文件系统? 在宿主机上的这个与容器形成绑定关系…

BLEU: a Method for Automatic Evaluation of Machine Translation

文章目录 BLEU: a Method for Automatic Evaluation of Machine Translation背景和意义技术原理考虑 n n n - gram中 n 1 n1 n1 的情况考虑 n n n - gram中 n > 1 n\gt 1 n>1 的情况考虑在文本中的评估初步实验评估和结论统一不同 n n n 值下的评估数值考虑句子长度…

在培训机构中备考PMP为什么题库这么重要?

参加过培训和考试,对题库的了解也就越来越深了,刚开始接触PMP的时候以为学习的时候会像其他考试一样有官方题库进行参考,但是了解后才发现一切都没有我想的那么简单,也是在威班PMP培训的时候才知道题库是多重要。 PMI有官方题库吗…

等保测评与商用密码共铸工控安全“双评合规”新篇章

最近听说了一个段子:“网络安全就像美女的内衣,等保和密评就是最贴身的内衣两件套,上下身一件都不能少。否则你的魔鬼身材(核心数据)就有可能被色狼(黑客)一览无余(数据泄漏&#xf…

数据安全治理实践路线(中)

数据安全建设阶段主要对数据安全规划进行落地实施,建成与组织相适应的数据安全治理能力,包括组织架构的建设、制度体系的完善、技术工具的建立和人员能力的培养等。通过数据安全规划,组织对如何从零开始建设数据安全治理体系有了一定认知&…

数据分析-Pandas数据如何图示规律

数据分析-Pandas数据如何图示规律 数据分析和处理中,难免会遇到各种数据,那么数据呈现怎样的规律呢?不管金融数据,风控数据,营销数据等等,莫不如此。如何通过图示展示数据的规律? 数据表&…

大语言模型推理加速技术:模型压缩篇

原文:大语言模型推理加速技术:模型压缩篇 - 知乎 目录 简介 量化(Quantization) LLM.int8() GPTQ SmoothQuant AWQ 精简Attention 共享Attention参数 Multi-Query Attention Grouped-Query Attention 稀疏Attention Sliding Window Attenti…

【QT+QGIS跨平台编译】之五十二:【QGIS_CORE跨平台编译】—【qgsexpressionlexer.cpp生成】

文章目录 一、Flex二、生成来源三、构建过程一、Flex Flex (fast lexical analyser generator) 是 Lex 的另一个替代品。它经常和自由软件 Bison 语法分析器生成器 一起使用。Flex 最初由 Vern Paxson 于 1987 年用 C 语言写成。 “flex 是一个生成扫描器的工具,能够识别文本中…

QYYB-01 无线雨量报警仪 集监测 采集 记录 报警一体机

产品概述 无线雨量报警仪,又名简易雨量报警器、遥测雨量报警仪,是一款可以实时测量并显示降雨量的仪器,支持无线传输数据、同步显示新数据、数据超标自动报警、自动存储数据、查询和导出数据等多项功能,由翻斗式雨量传感器、数据采…

什么是高可用架构

一、什么是高可用 在运维中,经常听到高可用,那么什么是高可用架构呢?通俗点讲,高可用就是在服务故障,节点宕机的情况下,业务能够保证不中断,服务正常运行。 举个例子,支付宝&#…

ruoyi-nbcio从spring2.7.18升级springboot到3.1.7,java从java8升级到17(二)

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址: http://122.227.135.243:9666 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: https://gitee.com/nbach…

抽象的后端

Connection refused: no further information 出现这条代码的核心是你使用redis&#xff0c;但是本地没有开启redis服务 如何启动redis服务 第一步&#xff1a;确定你安装了对应的框架 以spring为例 <dependency><groupId>org.springframework.boot</group…

Android Jni的介绍和简单Demo实现

Android Jni的介绍和简单Demo实现 文章目录 Android Jni的介绍和简单Demo实现一、JNI的简单介绍JNINDKJni的开发背景&#xff1a;**JNI在 Android 开发里的主要应用场景&#xff1a;** 二、JNI的简单Demo1、Demo主要界面和效果展示2、CMake编译加载文件add_library 指令的加载库…

Unity Shader - sahder变体剔除

文章目录 吐槽优化方案 - 目前最靠谱的方式shadercsharp 吐槽 我之所以单独写这边文章&#xff0c;是因为之前写的一篇&#xff1a; Unity Shader - Built-in管线下优化变体&#xff0c;编辑后&#xff0c;无法保存&#xff0c;一直提示&#xff1a;操作超时。 等了差不多 3…

开发框架DevExpress XAF - Entity Framework Core 8支持.NET 8性能基准

DevExpress XAF是一款强大的现代应用程序框架&#xff0c;允许同时开发ASP.NET和WinForms。XAF采用模块化设计&#xff0c;开发人员可以选择内建模块&#xff0c;也可以自行创建&#xff0c;从而以更快的速度和比开发人员当前更强有力的方式创建应用程序。 对于使用Entity Fra…

详解顺序结构滑动窗口处理算法

&#x1f380;个人主页&#xff1a; https://zhangxiaoshu.blog.csdn.net &#x1f4e2;欢迎大家&#xff1a;关注&#x1f50d;点赞&#x1f44d;评论&#x1f4dd;收藏⭐️&#xff0c;如有错误敬请指正! &#x1f495;未来很长&#xff0c;值得我们全力奔赴更美好的生活&…

亿道推出重磅加固平板!为行业发展注入新动力

随着科技生产力的不断发展&#xff0c;各行各业都得到质的飞跃。产品的迭代速度也大大加快&#xff0c;作为全球领先的加固行移动终端一站式提供商&#xff0c;亿道信息跟紧时代潮流&#xff0c;推出EM-I10J、EM-I20J两款均衡型加固平板&#xff0c;为行业发展注入新动力。 接地…

每日一题 2867统计树中的合法路径

2867. 统计树中的合法路径数目 题目描述&#xff1a; 给你一棵 n 个节点的无向树&#xff0c;节点编号为 1 到 n 。给你一个整数 n 和一个长度为 n - 1 的二维整数数组 edges &#xff0c;其中 edges[i] [ui, vi] 表示节点 ui 和 vi 在树中有一条边。 请你返回树中的 合法路…