目录
3.2.4ALU(算术逻辑单元):集两者能力的 “全能助手”
1.计算机早期历史
一、计算机的底层逻辑:从工具到大脑
-
从算盘到电子计算机的进化
-
生活案例:
-
算盘:像小卖部老板用不同颜色的盒子分装硬币(个位用绿盒、十位用蓝盒),快速统计每日收入。
-
电子计算机:如同从手摇爆米花机升级到微波炉爆米花——按按钮即可自动完成,无需手动转动。
-
-
核心原理:
-
物理操作(珠子/齿轮)→ 电子信号(0/1)
-
理解:计算机是人类思维的“加速器”,将复杂思考转化为物理或电子动作。
-
-
-
布尔逻辑:计算机的“是非观”
-
生活案例:
- AND 门:卧室灯需同时插电 + 开开关才亮
- OR 门:客厅灯用任意一个开关都能控制
- NOT 门:冰箱灯关上门就灭
-
核心原理:
-
所有复杂判断(比如人脸识别)最终都分解为 AND/OR/NOT 的组合。
-
理解:计算机的思考像玩闯关游戏,必须通过层层“是”或“否”的门槛。
-
-
二、计算机的“身体构造”
-
二进制与信息编码
-
生活案例:
-
二进制:用摩尔斯电码的“滴”(短)和“答”(长)传递信息 → 计算机用 0(关) 和 1(开) 表达一切。
-
编码:手机输入“你好”时,键盘将汉字转为数字(如 Unicode 编码),再转为二进制传输。
-
-
核心原理:
-
文字、图片、视频最终都变成 0和1的排列组合,如同乐高积木用不同颜色和位置拼出图案。
-
理解:计算机是“翻译大师”,所有信息必须转成它能懂的“二进制方言”。
-
-
-
计算机的“器官”与协作
-
生活案例:
-
CPU(大脑):像奶茶店店长,按订单步骤(程序)指挥员工操作。
-
内存(工作台):存放正在制作的奶茶原料(临时数据),用完即清空。
-
硬盘(仓库):存储未使用的奶茶原料包(长期数据),需要时再取出。
-
-
核心原理:
-
冯·诺依曼架构 = “输入指令→处理数据→输出结果” 的标准流水线。
-
理解:计算机像一家高效工厂,各部门分工明确,流水线作业。
-
-
三、计算机的“隐形管家”:软件与系统
-
操作系统:全能大管家
-
生活案例:
-
手机同时运行微信和音乐App时,系统像交通警察,给每个App分配“通行时间片”,让它们轮流使用CPU。
-
虚拟内存:如同租房中介把多个小房间伪装成大套房,让程序误以为自己独占内存。
-
-
核心原理:
-
操作系统通过 “抽象层” 隐藏复杂性,用户只需点击图标,无需知道背后的电路如何工作。
-
理解:就像开车无需懂发动机原理,踩油门就能前进。
-
-
-
文件系统:智能收纳师
-
生活案例:
-
手机相册按“时间-地点-人物”自动分类照片 → 类似图书馆按“类别-作者-出版年份”整理书籍。
-
删除文件:实际是撕掉书的目录标签,书还在架上但找不到,直到被新书覆盖。
-
-
核心原理:
-
文件系统通过 “路径+索引” 快速定位数据,如同快递单号追踪包裹位置。
-
理解:结构化存储是效率的关键,乱放东西只会浪费时间。
-
-
四、计算机的“社交网络”
-
互联网通信:数字世界的快递员
-
生活案例:
-
IP地址:像外卖订单上的地址,确保数据包送到正确设备。
-
路由算法:像导航App避开拥堵路段,选择最优路径传输数据。
-
-
核心原理:
-
互联网通过 “分层协议” 实现全球通信,如同跨国物流需遵守海关、运输、派送多层规则。
-
理解:网络通信的核心是 “可靠+高效”,既要送得快,又要不送错。
-
-
-
DNS:互联网的“114查号台”
-
生活案例:
-
核心原理:
-
DNS通过 “域名→IP” 映射解决人类与机器的记忆矛盾。
-
理解:这是互联网的“翻译服务”,让人机协作更顺畅。
-
-
五、计算机的“超能力”:现代应用
-
计算机视觉:让机器“看懂”世界
-
生活案例:
-
手机相册自动识别人脸 → 计算机将照片分解为像素网格,分析颜色和形状(如眼睛、鼻子位置)。
-
卷积神经网络:像多级流水线,第一层识别边缘,第二层拼成形状,最后一层判断“这是猫脸”。
-
-
核心原理:
-
通过 “模式匹配” 和 “大数据训练” 让机器模仿人类视觉。
-
理解:计算机视觉的本质是 “熟能生巧”,看多了自然能识别。
-
-
-
人工智能的边界:计算机做不到的事
-
生活案例:
-
导航App可能陷入“绕圈死循环” → 图灵证明 停机问题(无法预判程序是否会停止)。
-
-
核心原理:
-
计算机的局限性源于 “逻辑系统的自指矛盾”,如同无法用镜子照出镜子本身的全貌。
-
理解:技术需与人类互补,就像自动驾驶仍需司机监督。
-
-
六.冯诺依曼体系
- 核心思想 :
- 二进制表示:计算机处理的数据和指令都用二进制数表示,也就是只有 0 和 1 两个基本数字。比如我们日常写的数字 “10”,在二进制里是 “1010”。这就像用 “开” 和 “关” 两种状态来传递所有信息。
- 程序存储执行:把程序和数据都当作数据,以同样的方式存储在同一个存储器中。比如把菜谱和食材都放在一个仓库里,计算机可以按顺序执行存储器中的指令 。
- 五大组成部分:计算机由运算器、控制器、存储器、输入设备、输出设备五个部分组成。
- 各部分组成及生活类比 :
- 运算器:可以进行算术运算(如加、减、乘、除)和逻辑运算(如比较大小、判断真假) ,就像一个超级会算账的小助手。比如在计算超市购物的总价时,它能快速算出结果。
- 控制器:是计算机的指挥中心,负责从存储器中取出指令,并对指令进行分析,然后指挥其他部件协调工作。可以把它想象成乐队的指挥,让各个乐器(计算机部件)有序配合。
- 存储器:用于存储程序和数据,分为内存和外存。内存就像书桌,放着正在处理的资料,读写速度快,但断电后数据会消失;外存像仓库,用于长期存储大量数据,比如硬盘 。
- 输入设备:用来向计算机输入信息,如键盘、鼠标、扫描仪等。就像给厨师(计算机)报菜单,把我们的需求告诉计算机。
- 输出设备:用于将计算机处理的结果展示出来,如显示器、打印机、扬声器等。相当于厨师做好菜后把菜端上桌,让我们看到或听到处理结果。
- 基本工作流程 :
- 首先通过输入设备,比如键盘,将程序和数据输入到计算机的存储器中,就像把菜谱和食材放进仓库。
- 控制器从存储器中按顺序取出指令,这一步就像从菜谱中找到做菜的第一步。
- 控制器对取出的指令进行解码分析,明确要做什么操作,比如是要计算还是要读取数据等。
- 运算器根据控制器的指示,从存储器中获取数据并进行相应的运算处理,类似厨师按照菜谱处理食材。
- 最后,处理结果通过输出设备展示出来,比如在显示器上显示计算结果。
2.CPU的构成
1. 门电路:CPU 的 “基础积木”
- 是什么:最底层的电子开关组合,实现布尔逻辑(与、或、非)。
- 生活例子:像家里的电路开关。比如 “与门” 类似卧室灯,必须同时插电 + 开开关才亮;“或门” 像客厅灯,任意一个开关都能控制。
- 作用:CPU 的所有功能,最终都靠这些门电路的开关组合实现。
2. 半加器:CPU 的 “初级算账员”
- 是什么:只能计算两个二进制数相加,不处理进位。
- 生活例子:假设你有 2 个苹果(二进制 10),朋友给 1 个(二进制 01),半加器只算 0+1、1+0,得出结果 11(3 个苹果),但不管进位怎么来的。
- 作用:是加法运算的初级单元。
3. 全加器:CPU 的 “进阶算账员”
- 是什么:在半加器基础上,能处理进位。
- 生活例子:比如计算 3(11)+ 2(10),全加器会处理每一位相加的进位,像算账时把 “零头” 往后传,最终得出正确结果 101(5)。
- 作用:让加法计算更完整,适合复杂数字运算。
4. 加法器:CPU 的 “高效加法团队”
- 是什么:把多个全加器组合,能快速计算多位数的加法。
- 生活例子:类似超市收银台的扫码器,一次性计算多件商品价格总和,比一个个手算快得多。
- 作用:实现大规模二进制加法,是 CPU 处理数据的重要环节。
5. ALU(算术逻辑单元):CPU 的 “万能运算助手”
- 是什么:不只能做加法,还能做减法、逻辑判断(如比较大小)等。
- 生活例子:像多功能瑞士军刀,既能当刀(加法)、又能当剪刀(减法),还能开瓶盖(逻辑判断)。
- 作用:CPU 的核心运算部件,负责处理数据的各种数学和逻辑操作。
6. 从 ALU 到 CPU:“组装完整大脑”
- 怎么组成 CPU:除了 ALU,CPU 还需要寄存器(临时存数据,像草稿纸)、控制单元(指挥各部件工作,像乐队指挥)等。把这些部分整合在一起,就像把 “运算助手”“草稿纸”“指挥官” 集合,最终形成能处理各种任务的 CPU。
- 生活类比:CPU 像一个全能小工厂,ALU 是负责加工的机器,寄存器是放原料的临时货架,控制单元是调度员,大家协作完成计算任务。
总结:CPU 的构成就像搭积木,从最基础的开关逻辑(门电路)开始,一步步做出能算账、能处理复杂运算的部件,最后整合出这个 “计算机大脑”,让计算机学会 “思考” 和计算。
3.CPU 基本工作流程
3.1布尔逻辑 和 逻辑门
一、布尔逻辑
核心概念:用数学符号表示 “真 / 假” 判断,通过三种基本运算组合复杂条件。
-
AND 运算(与)
- 生活例子:卧室灯需要同时插电(条件 A)+ 开开关(条件 B)才会亮
- 数学表达:A ✔️ AND B ✔️ → 结果 ✔️
- 符号:A ∧ B
- 理解:类似 “双保险”,必须同时满足两个条件
-
OR 运算(或)
- 生活例子:客厅灯用任意一个开关(条件 A 或 B)都能控制
- 数学表达:A ✔️ OR B ✔️ → 结果 ✔️
- 符号:A ∨ B
- 理解:类似 “多途径选择”,满足任一条件即可
-
NOT 运算(非)
- 生活例子:冰箱灯关上门(条件 A ✖️)就会灭
- 数学表达:NOT A ✔️ → 结果 ✖️
- 符号:¬A
- 理解:类似 “反转开关”,条件不满足时触发结果
二、逻辑门
核心原理:通过电子开关(晶体管)的开合组合,模拟布尔运算。
三、复杂逻辑的组合应用
案例 1:自动浇花系统
- 条件:土壤干燥(A)AND 白天(B)→ 启动浇水
- 实现:将湿度传感器(A)和光敏电阻(B)接入 AND 门,输出控制水泵
案例 2:家庭安防系统
- 条件:窗户打开(A)OR 运动检测(B)→ 触发警报
- 实现:用 OR 门连接两个传感器,输出控制蜂鸣器
案例 3:节能模式
- 条件:无人移动(A)→ 关闭空调
- 实现:用 NOT 门反转运动传感器信号,控制空调开关
四、我的学习建议
- 记住口诀:
- AND 门:“两者都要,缺一不可”
- OR 门:“只要有一,马上触发”
- NOT 门:“反其道而行之”
3.1.1电子开关
3.1.2门电路
3.2算术逻辑单元
3.2.1进制的理解
3.2.2算术单元:数字计算的 “专职工坊”
- 功能:专注数学运算,如加法、减法、乘法、除法。
- 生活例子:类似超市收银机的计算功能。当顾客购买多件商品,收银机快速算出总价(如 10 元 + 20 元 = 30 元),这就是算术单元在执行加法运算,纯熟地处理数字加减乘除。
3.2.3逻辑单元:条件判断的 “智能裁判”
- 功能:负责逻辑判断,比如比较大小(如 “5 是否大于 3”)、判断是否符合条件(如 “温度是否超过 30℃”)。
- 生活例子:如同比赛裁判判定胜负。比如跑步比赛中,裁判通过对比选手冲线顺序,判断 “谁第一个到达终点”,这就是逻辑单元在执行 “比较” 的判断任务。
3.2.4ALU(算术逻辑单元):集两者能力的 “全能助手”
- 构成:将算术单元和逻辑单元整合,既能算数学题,又能做逻辑判断。
- 符号:在电路图中,ALU 常用一个方框表示,内部标注 “ALU” 字样,是计算机芯片设计图中的关键标识。
- 生活例子:好比一位全能助理,既能帮你计算每月水电费总和(算术运算),又能判断 “这个月电费是否比上个月高”(逻辑判断)。它一人承担两种角色,是计算机中处理数据运算和逻辑判断的核心部件。
总结:算术单元是数学计算的 “执行者”,逻辑单元是条件判断的 “决策者”,而 ALU 把两者合为一体,成为计算机的 “运算大脑”,让计算机既能处理数字计算,又能应对逻辑判断任务,就像一个全能工具,支撑计算机完成各种复杂工作。
3.3寄存器和内存
-
寄存器
- 类比:像厨师炒菜时手边的 “调料盒”。容量小但拿取速度极快,专门放当下要用的调料(数据)。
- 本质:CPU 内部的高速小容量存储,临时存放正在处理的关键数据或指令。
-
内存(RAM)
- 类比:餐厅的 “备菜区”。食材(数据)临时存这里,厨师(CPU)需要时能快速拿到,但打烊(断电)后食材会清空。
- 本质:计算机运行时临时存储数据和程序的地方,速度快但断电数据消失。
3.4控制单元
- 类比:餐厅的 “经理”。负责协调后厨(CPU 运算单元)、备菜区(内存)等,让整个流程有序。
- 本质:CPU 的 “指挥官”,负责调度各组件,确保取指令、解码、执行等步骤有序进行。
3.5指令
- 类比:餐厅的 “菜单菜品”。比如 “番茄炒蛋” 就是一条指令,告诉厨师(CPU)要做什么。
- 本质:计算机能识别的操作命令,如 “加、减、读取数据” 等,是 CPU 工作的 “任务清单”。
3.6CPU 的基本工作总流程
-
取指令
- 流程:控制单元从内存中找到 “计算 3+5” 的指令,就像经理从菜单里找到 “番茄炒蛋” 这道菜的制作要求。
- 原理:内存提前存好程序指令,控制单元按顺序 “读取” 指令。
-
解码指令
- 流程:控制单元分析指令 “3+5” 的含义,告诉 CPU “现在要做加法”,如同经理看懂菜单后,告诉厨师 “需要炒番茄和鸡蛋”。
- 原理:把二进制指令翻译成 CPU 能执行的操作步骤。
-
执行指令
- 取数据:从内存获取数字 3 和 5,先放到寄存器(像把番茄、鸡蛋拿到厨师手边)。
- 运算:CPU 的算术单元计算 3+5,寄存器暂存结果 8(类似厨师炒菜,备好的食材快速加工)。
- 存结果:把结果 8 存回内存或输出,如同把炒好的菜端出餐厅。
4.编程语言
4.1程序
- 要点:程序是为实现特定目标设计的 “指令集合”,告诉计算机该做什么、怎么做。
- 生活例子:像一份 “做菜菜谱”。菜谱里写着 “切菜→倒油→炒菜→装盘”,计算机按程序的指令步骤执行任务,比如用软件计算数据,背后就是程序在指挥计算机操作。
4.2早期编程
- 要点:早期用 “机器语言” 编程,直接写二进制代码(0 和 1 组成的指令),计算机能直接识别,但对人来说难写又难记。
- 生活例子:好比用 “摩尔斯电码” 交流。每串电码对应特定含义(如 “滴滴答” 代表字母 U),早期程序员需记住大量二进制组合(如 “01000001” 代表字母 A),直接写给计算机 “看”,效率低且容易出错。
4.3编程语言的发展
- 要点:从机器语言到汇编语言(用英文缩写替代二进制),再到高级语言(如 Python、Java,更接近人类自然语言)。高级语言让编程像写中文句子一样易懂,最后通过编译器 / 解释器转成计算机能懂的机器语言。
- 生活例子:沟通方式的进化。最初用摩尔斯电码(机器语言),后来有了翻译工具,现在可以直接用中文交流(高级语言),最后通过 “翻译”(编译器)让计算机理解,大大降低了编程门槛。
5.操作系统
5.1操作系统的定位
- 要点:操作系统是计算机的 “大管家”,管理硬件(如 CPU、内存)和软件(如各种 App),让计算机有序工作。
- 生活例子:像学校的 “总务处”。既要管理教室(硬件)、分配课程(软件运行),还要协调师生需求(用户操作),确保学校(计算机)正常运转。
5.2什么是进程/任务
- 要点:进程是计算机正在执行的任务。比如打开一个浏览器、运行音乐软件,每一个任务都是一个进程。
- 生活例子:像餐厅里的 “订单”。每个订单(进程)代表一个任务,厨师(CPU)需要按订单做菜,服务员(操作系统)负责管理这些订单的处理流程。
分类
单进程:只能运行一个任务(只能打开浏览器)
多进程:能同时运行多个任务(既能打开浏览器,又能打开音乐)
5.3进程控制块抽象
- 要点:进程控制块是记录进程信息的 “档案”,包括进程状态(运行中、暂停)、使用的资源等,方便操作系统管理。
- 生活例子:类似学生的 “档案袋”。档案袋里记录学生成绩、选课情况(进程信息),老师(操作系统)通过档案袋了解学生(进程),决定如何安排教学(资源分配)。
5.4CPU 分配⸺进程调度
- 要点:操作系统决定哪个进程使用 CPU、用多久,确保多个任务 “看起来” 同时运行。
- 生活例子:像老师安排学生 “发言顺序”。每个学生(进程)轮流发言几分钟,老师(操作系统)协调时间,虽然同一时间只有一个学生发言,但整体上大家感觉都在参与课堂。
5.5内存分配⸺内存管理
- 要点:给每个进程分配内存空间,避免冲突,还要回收不用的内存。
- 生活例子:好比图书馆 “分配自习座位”。管理员(操作系统)给每个读者(进程)安排座位(内存空间),读者离开后回收座位,给新读者使用,确保资源合理利用。
5.6进程间通信
- 要点:不同进程之间传递信息,实现协作。比如音乐软件播放音乐(一个进程),同时显示歌词(另一个进程),需要互相通信。
- 生活例子:像公司不同部门 “合作项目”。市场部(进程 A)收集用户需求,研发部(进程 B)根据需求开发产品,两个部门通过开会、文件共享(通信方式)协作,完成目标。
6.扩展一些疑惑
6.1CPU
1.CPU那么厉害,为什么不弄大一点?
2.CPU不能搞大,能不能搞多一点提升效率?
如果是4个核心的cpu,那么就当与整个大的cpu包含有8个小cpu
3.能不能一个大cpu当作两个cpu用?再次提升效率
6.2进程
1.进程是怎么管理的?
一、进程管理的核心目标
类比:餐厅经理需要高效安排顾客(任务)的用餐流程,确保资源(餐桌、服务员)不冲突且合理利用。
关键点:
- 让多个任务(进程)同时运行
- 公平分配 CPU、内存等资源
- 保护不同进程的数据互不干扰
二、进程管理的四大核心机制
1. 进程调度(CPU 分配)
类比:服务员按顺序叫号安排顾客入座。
流程:
- 时间片轮转:每个进程轮流使用 CPU(例如每个顾客只能占用餐桌 30 分钟)。
- 优先级调度:紧急任务优先处理(比如孕妇或老人优先入座)。
例子:
你一边刷短视频(高优先级)一边下载文件(低优先级),CPU 会先保证短视频流畅播放,再处理下载。
2. 内存管理
类比:餐厅为每桌顾客分配独立用餐区域。
流程:
- 地址空间隔离:每个进程的内存互不干扰(就像每桌顾客的食物不会混在一起)。
- 动态分配回收:进程结束后释放内存(顾客离席后收拾餐桌给下一批)。
例子:
打开微信时,系统会分配一块内存给它存储聊天数据;关闭微信后,这块内存会被回收。
3. 进程控制块(PCB)
类比:顾客的「用餐档案」,记录座位号、用餐进度、特殊需求等。
内容:
- 进程 ID、状态(运行 / 暂停)、优先级、内存地址等。
例子:
当你切换手机应用时,系统通过 PCB 记录每个应用的当前状态,确保切换回来时能恢复。
4. 进程间通信(IPC)
类比:不同餐桌顾客传递菜品(如拼桌时共享菜肴)。
方式:
- 管道:单向传递数据(类似服务员传菜)。
- 共享内存:多个进程共用一块内存区域(类似公共餐盘)。
例子:
你用微信发照片给朋友,微信和相机进程通过共享内存快速传输数据。
三、进程管理的完整流程(以手机点餐为例)
- 创建进程:你打开外卖 app(操作系统创建「外卖进程」PCB)。
- 分配资源:系统给 app 分配内存(餐桌)和 CPU 时间片(服务员服务时间)。
- 运行调度:CPU 交替处理外卖 app 和其他后台任务(如消息通知)。
- 通信协作:外卖 app 调用地图 app 获取位置(进程间通信)。
- 终止回收:关闭 app 后,系统释放内存并删除 PCB(顾客离席后收拾餐桌)。
2.为什么需要进程?
- 效率:同时处理多个任务(边听歌边打字)。
- 稳定:一个进程崩溃不影响其他进程(某桌顾客打翻汤,其他桌继续用餐)。
- 安全:隔离恶意软件的破坏(小偷无法进入其他餐桌偷东西)。
6.3PCB
1.PCB是什么?拿来干嘛的?
一句话总结
PCB(进程控制块)是操作系统管理进程的 “户口本”,记录每个进程的身份、状态和资源使用情况,就像餐厅经理管理顾客的 “用餐档案”。
一、PCB 的核心作用
类比:餐厅里每个顾客的 “用餐档案”,记录座位号、点餐进度、特殊需求等信息,帮助服务员高效管理。
关键点:
- 身份标识:每个进程有唯一 ID(类似顾客编号)。
- 状态跟踪:记录进程是 “运行中”“等待资源” 还是 “暂停”(类似顾客在 “用餐中”“排队” 或 “去洗手间”)。
- 资源分配:记录进程占用的内存、CPU 时间等(类似顾客占用的餐桌、服务员服务时间)。
二、PCB 包含的关键信息(生活类比)
三、PCB 的工作流程(以医院挂号为例)
-
创建 PCB:
- 你挂号时,医院生成一张 “病历卡”(PCB),记录你的姓名、病情、挂号科室等(进程 ID、状态、优先级)。
-
分配资源:
- 护士根据病历卡安排你到诊室(内存地址),并记录医生的服务时间(CPU 时间片)。
-
进程调度:
- 医生按病历卡的优先级(急症优先)叫号,处理你的病情(执行进程)。
-
状态切换:
- 若你需要做检查(阻塞状态),病历卡被暂时存放在 “待检查区”,等检查完成后再恢复就诊(就绪状态)。
-
终止回收:
- 看完病后,病历卡被归档(删除 PCB),释放诊室和医生资源。
2.为什么需要PCB?
- 有序管理:避免多个进程 “抢资源”(类似餐厅避免多桌顾客争同一个服务员)。
- 状态保存:切换任务时不丢失进度(如你切回微信时,系统通过 PCB 恢复聊天窗口的状态)。
- 安全隔离:不同进程的 PCB 信息互不干扰(类似病人病历隐私保护)。
3.PCB与其他进程管理机制的关系?
- 进程调度:根据 PCB 的优先级和状态分配 CPU(护士按病历卡叫号)。
- 内存管理:通过 PCB 的内存地址找到进程数据(服务员按餐桌号上菜)。
- 进程通信:多个 PCB 通过共享内存或管道协作(不同病历卡通过护士传递检查结果)。
4.PCB的属性特点是什么?
1. PID(进程标识符)
- 作用:唯一标识每个进程,就像每个人的身份证号,方便操作系统区分不同进程。
- 生活例子:餐厅给每位顾客发一个专属号码牌(如 A01、B05),服务员通过号码牌找到对应顾客,操作系统通过 PID 找到对应进程。
2. 内存指针
- 作用:记录进程使用的内存位置,标明内存中哪部分放程序指令、哪部分放数据。
- 生活例子:顾客订了一个包间,内存指针就像包间的布局图,标注好哪里放餐桌(放指令)、哪里放储物架(放数据),确保进程的指令和数据各就其位。
3. 文件描述符表
- 作用:记录进程使用硬盘的相关信息,比如打开了哪些文件、文件夹。
- 生活例子:顾客在餐厅的 “借书登记本”,记录他借了哪些菜单、资料(类似进程调用硬盘里的文件),方便餐厅管理资源使用情况。
4. 状态(就绪状态、阻塞状态等)
- 作用:标记进程当前状态,决定操作系统如何调度。
- 就绪状态:准备好运行,等待 CPU 分配资源(像顾客坐在座位上,等服务员上菜)。
- 阻塞状态:因等待资源(如硬盘读取)暂时无法运行(像顾客在等厨房煎牛排,暂时不能继续用餐)。
- 生活例子:顾客可能处于 “排队中”(阻塞)、“用餐中”(运行)、“等甜点”(等待资源)等状态,服务员根据状态安排服务。
5. 优先级
- 作用:决定进程获取资源的先后顺序,高优先级进程优先使用 CPU 等资源。
- 生活例子:餐厅给 VIP 顾客(高优先级)优先安排座位、上菜,普通顾客(低优先级)按顺序等待,操作系统也按优先级调度进程。
6. 记账信息
- 作用:记录进程使用 CPU、内存等资源的时长和量,用于统计和资源分配调整。
- 生活例子:餐厅记录每位顾客的用餐时间、占用餐桌时长,后续根据这些信息优化翻台率,操作系统用记账信息优化资源分配。
7. 上下文
- 作用:保存进程运行时的关键信息(如当前执行到哪条指令),确保进程被中断后还能恢复运行。
- 生活例子:顾客用餐时临时去洗手间,服务员会记住桌上菜的状态(吃了多少、下一步该上什么菜),等顾客回来继续用餐,上下文就像这个 “记忆”,让进程恢复时无缝衔接。
属性总结
PCB 就像进程的 “全能档案”,操作系统通过这些属性管理进程,如同餐厅通过顾客档案优化服务。每个属性各司其职:标识身份(PID)、管理资源位置(内存指针、文件描述符表)、跟踪状态(状态、优先级)、记录开销(记账信息)、保存进度(上下文),最终让计算机高效有序地运行。
7.全部流程总结图
好好理解各部分之间的关系