操作系统基础

计算机的基本组成

冯*诺依曼体系

计算器 控制器 存储器 输入设备 输出设备

总线

PC机32位或者64位表示的是运算器计算能力,ALU的宽度,一次计算能够计算的数据的位数。

数据总线:传递数据。

地址总线:寻址的 根数–>寻址能力。

控制总线:控制传输方向。

存储器的分类

寄存器 高速缓存 内存 硬盘 网络

从右往左,速度越快,从左往右,存储当量大。

操作系统对进程的管理

标示一个进程:PID

控制一个进程:进程控制块 PCB struct task_struct

创建一个进程:先申请一个PCB,然后加载程序,生成进程实体。

进程结束:先结束进程实体,再释放PCB结点,需要一定的条件。

1
2
3
僵尸进程:进程实体已经被释放,但是PCB结点并没有被释放,退出码(PCB)

孤儿进程:父进程 子进程(父进程已经结束,但是子进程未结束,那么子进程就是孤儿进程)。将所有的孤儿进程都直接挂载在INIT下。

进程的状态:

并行与并发

并行需要硬件支持。

内存(简单分页)以及程序的加载

简单分页:将内存划分成大小相等的(4K)的块–>页帧。对页帧进行划分。

程序在磁盘上也是存储在4K大小的块上—页

如果运行一个程序,则将程序的页加载到内存的帧上。

操作系统会为每一个进程维护一个页表,页表中存储的是进程的页内存的页帧的映射。

逻辑地址:在程序上的偏移。

在程序中直接访问的是逻辑地址,在CPU访问此逻辑地址时,需要通过地址映射到其物理地址,才能访问此地址上的数据或指令。

如果在两个进程中打印的变量的地址相等,并不能说明这两个变量是同一个变量。

C程序的4G虚拟地址空间

交换分区:在磁盘上开辟一块空间,以内存管理方式进行管理,作为对内存的补充。(一个进程的所有页不一定非得在内存上存储)