PAE:物理地址扩展:
32bit+4=64G
32位操作系统:1G内核+3G用户
缓存:比原始存储设快,但小,因为贵,程序运行局部性
缓存置换算法:LRU MRU
程序运行局部性:空间局部性,时间局部性
1.寄存器
2.一级指令缓存,一级数据缓存
3.二级缓存
4.三级缓存(共享)
1.直接映射(性能太低,RAM >>缓存)
2.N路关联
5.cpu直接跟1级缓存打交道,其二级缓存,三级缓存要置换到1级缓存
6. Write through:通写,CPU更新缓存,所有缓存也同时都要更新
Write Back:回写,当CPU丢弃缓存中数据,才更新其他缓存
7.设备识别:IO端口
设备在PC开机BIOS检测,注册IO端口
8.中断控制器:接受外部设备请求,并向CPU请求中断处理
9.线性低地址空间16M 给DMA使用
10.BIOS :加载线性地址最低端
11.CPU频率大于内存频率,需要在一定比例后在上升延读取内存数据
12.process:一个独立的运行单位
系统资源:CPU时间,存储空间
13.os:vm
把CPU时间分片
14.指令寄存器:指向下条指令地址
15.进程切换:保存现场,恢复现场
16.把内存划分成固定单元[4K..]
每个页面称为页框
进程虚拟地址空间页 通过MMU映射到 页框
MMU:具有保护资源,映射资源
映射关系:保存在 一级目录,二级目录,三级目录
进程优先级:优先级越高,越优先调度,分的时间越多
17.进程描述符 task_struct
双向链表:内核维护所有进程的task_struct
进程切换,是切换task_struct ,保存该进程现场到task_struct中,而task_struct 由内核维护,即由用户态切换到内核态,花费时间资源
进程切换太快,会产生由用户态到内核态切换,花时间
进程切换太慢,一个进程可能很久不会得到CPU,响应慢
18.抢占(2种方式)
1.tick:系统时钟中断,系统时钟