1.计算机系统基础知识【软考视频笔记】
1.计算机系统基础知识【软考视频笔记】
- 进程的状态定义和触发条件。
- 进程的状态转换触发机制。
- 虚拟内存的本质。
- 虚拟内存的作用。
- 分页机制
- 虚拟内存管理的页式调度算法(页面置换算法)
进程的状态定义和触发条件。
新建状态:
定义:进程正在被创建,没有分配内存,PBC等资源。
触发条件:用户启动程序或进行系统调用。
就绪状态:
定义:进程获得出CPU之外的所有资源,等待被CPU调度执行。
触发条件:创建完成,时间片耗尽,从阻塞恢复。
运行状态:
定义:CPU正在执行进程指令。
触发条件:CPU调度到该进程。
阻塞状态:
定义:进程因外部事件(I/O完成、信号量释放)暂停执行。
触发条件:主动请求I/O或被动等待。
终止状态:
定义:进程执行完毕或异常终止,进程资源尚未完全释放。
触发条件:执行系统调用exit()或强制终止(kill命令)。
挂起状态:
定义:操作系统将进程从内存换出到磁盘。
触发条件:系统资源紧张时。
就绪挂起:进程从就绪状态被换出,需要换入内存后才能运行。
阻塞挂起:进程从阻塞状态被换出,等待事件完成后先换入再转为就绪状态。
进程的状态转换触发机制。
就绪到运行:进程已经获取除CPU之外的所有资源时,获取到CPU资源。
运行到阻塞:进程主动请求资源(IO,网络等)。
阻塞到就绪:等待的事件完成(IO操作结束,信号量被释放)。
运行到就绪:时间片耗尽或更高优先级进程抢占CPU。
虚拟内存的本质。
物理内存空间容量有限,多个进程想要同时运行,操作系统为每个进程创建虚拟内存空间并决定每个进程哪些信息存放在物理内存,哪些信息暂时存放在磁盘。
虚拟内存的作用。
突破物理内存限制,进程感觉独占大内存。
不同进程之间虚拟内存隔离。
固定大小页为单位管理,避免内存碎片。
分页机制
页面:虚拟内存中固定大小的块,虚拟内存管理的基本单位。
页框:物理内存中与页面大小相同的块,用于存放页面的实际数据。
页表:记录虚拟内存页面和物理内存页框的映射关系。
进程访问内存的过程:
程序访问虚拟地址:0x12345678(假设页面大小为4KB,0x1000),
拆分地址:
虚拟内存页号0x12345(地址总长度为32位时,高20位表示虚拟内存页号,对应到16进制为5位。)
虚拟内存页内偏移0x678(4K为2^12,偏移占12位,对应到16进制为3位。)
操作系统通过页表找到虚拟内存页号0x12345对应的物理内存页框号0xABC,
组合物理地址:页框号 + 偏移 = 0xABC678,
如果页表找到物理内存中页框,则访问页面大小的物理内存地址: 0xABC678 执行指令。
如果页表没有找到页框则:
1.操作系统暂停当前进程,触发缺页异常。
2.从磁盘加载所需页面到到物理内存的页框。
3.若无页框,触发页面置换算法选择一个页面换出。
4.更新页表,重新执行被中断的指令。