虚拟内存
分段和分页
- 页式信息的物理单位,分页是为了实现离散分配方式以减少内存的外碎片,提高内存的利用率。分页仅仅是系统管理的需要。
- 段式信息的逻辑单位,它含有一组其意义相对完整的信息。分段的目的是为了能更好的满足用户的需要。
- 页的大小固定,且由系统确认,将逻辑地址分为页号和页内地址两部分。
- 段的长度不固定,决定于用户编写的程序,通常由编写程序对源代码进行编辑时根据信息的性质划分。
- 分页的地址空间是一维的,分段的地址空间是二维的(页号、页内地址)。
进程间通信
- 信号量: 计数器,锁机制:用来同步
- 信号: 通知某一事件已经发生
- 管道 : 父子进程
- 命名管道: 任意进程
- 共享内存:实现多个进程共享的一个内存。
- 消息队列: 消息链表
- 套接字
线程通信机制
- 锁机制:互斥锁、条件变量、读写锁
- 信号量机制
- 信号机制
线程同步的方式
- 临界区
- 互斥量
- 信号量
- 事件
进程调度算法
- 先来先服务
- 短作业优先
- 时间片轮转法
- 高响应比优先
- 优先权调度算法
- 多级队列反馈调度
线程同步机制
线程实现方式
内存分配算法
- 首次适应法:遍历找可以满足的第一个。
- 最佳适应法:从小到大排序,找内部碎片最小的。
- 最差适应法:从达到小排序,第一个不行就不分配,可以的话剩余空间还可以再分配。
连续内存分配、纯分段、纯分页比较
- 连续内存分配:直接寻址、效率高;内存利用率低,有内部碎片。
- 分页:设计复杂,容易产生碎片
- 分段,可以有效利用内存,缺点,无法利用碎片,必须搬移内存,造成性能损失。
未完待续 温故知新 未央书斋