计算机是如何工作的

计算机是如何工作的
海林小盆友计算机是如何工作的
一、操作系统
计算机的核心硬件包括:
- CPU(中央处理器,负责计算与调度)
- 内存(临时存数据 / 指令,速度快)
- 硬盘(长期存数据,容量大)
- 外设(键盘 / 网卡等)
这些硬件本身是“裸设备”,需要操作系统(OS) 作为“中间人”协调它们工作,同时对接上层应用。
操作系统(如 Windows、Linux、Mac OS、Android)是计算机中一个重要的管理软件,其作用包括:
- 管理各种硬件设备
- 为应用程序提供稳定的运行环境,确保它们工作过程中互不干扰
操作系统管理应用程序的核心方式,是把“运行的程序”抽象为“进程”——每个进程都有独立资源,OS 通过统一的“进程控制块(PCB)”来管理它们。
二、进程(Process)和线程(Thread)
进程(Process)
- 是操作系统资源分配的基本单位
- 一个运行起来的程序就称为进程
- 现代计算机可同时运行上百个进程,因此需要操作系统进行有效管理
线程(Thread)
- 是操作系统调度和执行的基本单位
线程与进程的区别
| 特性 | 进程 | 线程 |
|---|---|---|
| 资源分配 | 有独立资源 | 共享进程资源 |
| 调度单位 | 资源分配的最小单位 | CPU 调度的最小单位 |
| 开销 | 创建/销毁开销大 | 创建/销毁开销小 |
| 并发效率 | 相对较低 | 同一进程内并发效率高 |
既然进程是资源分配的基本单位,操作系统如何精准管理上百个进程?答案就是“进程控制块(PCB)”——它记录了进程的所有关键信息,是 OS 管理进程的“核心档案”。
三、PCB 中的关键要点
PCB(进程控制块) 是操作系统管理进程的核心数据结构,包含以下关键信息:
1. PID(进程ID)
- 进程的唯一身份标识符
2. 内存指针(一组指针)
- 内存指针(一组地址标记):告诉进程‘我的执行指令存在内存的哪个位置,需要用到的数据又存在哪里’—— 相当于进程的‘内存地图’。
- 进程运行的过程中,需要依赖内存资源
3. 文件描述表
- 记录进程打开的文件信息(包括硬盘文件、网络设备等)
- 操作系统将硬件设备(如网卡)也抽象为文件进行管理
PCB 除了记录进程的“身份、资源”信息,还包含“调度相关的属性”——这些属性是 OS 实现“进程并发执行”的关键,也就是“进程调度”。
四、PCB 中的进一步属性
1. 进程调度
为实现并发执行,操作系统需要进行进程的快速切换,即进程调度。调度相关属性包括:
- 进程状态
- 就绪状态:进程已准备好,可随时在 CPU 上执行
- 阻塞状态:进程暂时不适合在 CPU 上执行(如等待 I/O 操作)
- 进程优先级
- 不同进程对 CPU 资源的需求不同(如游戏进程优先级更高)
- 有些进程(比如黑神话悟空),就是要优先级更高一些,吃到更多的CPU资源
- 进程的上下文
进程调度,一个进程执行一会,失去CPU,过了一段时间之后进程会回到CPU上执行,沿着上次执行到的状态,继续往下执行而不是重头执行
- 寄存器:CPU 上的“临时记事本”,存储计算的中间结果、指令位置、函数调用栈等信息
- 保存上下文:进程被切换出 CPU 时,将寄存器值保存到内存(PCB 中)
- 恢复上下文:进程再次被调度时,将保存的值重新加载到寄存器
- 类似游戏中的“存档”和“读档”机制
- 进程的记账信息
- 统计每个进程在 CPU 上的运行时间
- 用于公平调度,避免某些进程长时间得不到执行,如果发现某个进程,好久没吃到CPU资源了,就会给这个进程倾斜一些资源
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果

















