目录
管理系统的硬件、软件、数据资源,控制程序运行,人机直接的接口,应用程序与软件程序的接口。
包括:进程、存储、文件、作业、设备管理
运行态:运行 <==>就绪<==阻塞(等待)
前驱后继的逻辑关系
前趋图,垂直风向表示并行,“C1S2”,"P1C2S3“,“P2C3”。
横向箭头表示直接制约,C1和P1受到S1、C2和P2受到S2、C3和P3受到S3。
纵向箭头表示间接制约。S2和S3不能运行是受到了S1的间接制约。如果系统中有三台扫描仪,那么S2和S1能运行;同理,C2和C3受到C1的直接制约、P2和P3受到P1的间接制约。
互斥:一个资源(临界资源),大家共享使用,同一时刻,只能运行1个进程使用。间接制约关系。使用一个打印机。
同步:多个进程之间,速度有差异,有一定的等待时间。直接制约关系。生产者生产东西到一个空间区(多人用),消费者去该空间去拿。
临界资源: 进程间需要互斥对其进行访问的资源。比如打印机、磁带机。
临界区:每个进程中临界资源的那段代码叫做临界区。
信号量:一种特殊的变量。全局变量。
1、申请资源。2、判断资源是否足够。运作状态到阻塞状态。
V操作 信号量+1。做完通知用V.
1 释放资源 2、判断是否有排队。3、通知阻塞进程。阻塞状态转为就绪状态。
不死锁的最少: 即考虑所有进程都差一个资源,然后再给一个资源就不会死锁。
死锁必要条件:互斥,保持和等待,不剥夺,环路等待。
打破死锁(打破四大必要条件):有序资源分配,银行家算法。
银行家算法 -提供资源的原则
页式存储
将程序与内存划分为同样大小的块,以页为单位将程序掉入内存。
优点:利用率高,碎片小,分配和管理简单
缺点:增加了系统的开销,可能产生抖动现象。
逻辑地址 = 页号+页内地址
计算物理地址:
1、根据页大小,计算出页内地址长度。对应逻辑地址(程序)后面的长度为页内地址。
4kb的页大小,转为10进制=4*1kb=2的12次方
2、前面位为页号。根据页号在页表中找到对应的页帧号。
3、物理地址 = 页帧号+页内地址
例题1:操作系统采用分页存储管理方式,下图给出了进程A和进程B的页表结构,如果物理页的大小为512字节,那么进程A逻辑地址为1111(十进制)的变量存放在(4 )号物理内存页中。假设进程A的逻辑页4与进程B的逻辑页5要共享物理页8,那么应该在进程A页表的逻辑页4和进程B页表的逻辑页5对应的物理页处分别填( 8和8)。
解答:
例题2:某文件系统文件存储采用文件索引节点法。假设文件索引节点中有8个地址项iaddr[0]~iaddr[7],每个地址项大小为4字节,其中地址项iaddr[0]~iaddr[5]为直接地址索引,iaddr[6]是一级间接地址索引,iaddr[7]是二级间接地址索引,磁盘索引块和磁盘数据块大小均为4KB。该文件系统可表示的单个文件最大长度是(4198424 )KB。若要访问iclsClient.dll文件的逻辑块号分别为6、520和1030,则系统应分别采用(一级,一级,二级 )。
解答:
段式存储
按用户作业中的自然段来划分逻辑空间,然后掉入内存,段的长度可以不一样。
优点:多道程序共享内存,各段程序修改互不影响。
缺点:内存利用率低,内存碎片浪费大。
逻辑地址 = (段号,段内偏移量)
用段号对应的基址+段内偏移量,看是否在段长内,如果在合法段地址。不在为不合法段地址。
段页式存储
快表
淘汰逻辑
1、优先淘汰访问位
2、其次考虑修改位
6、文件管理
索引文件
假设文件系统采用索引节点管理,且索引节点有8个地址项iaddr[0]〜iaddr[7],每个地址项大小为4B, iaddr[0]〜iaddr[4]采用直接地址索弓丨,iaddr[5]和iaddr[6]采用一级间接地址索引,iaddr[7]采用二级间接地址索引。假设磁盘索引块和磁盘数据块大小均为1KB字节,文件Filel的索引节点如下图所示。若用户访问文件Filel中逻辑块号为5和261的信息,则对应的物理块号分别为( 58和187) ;101号物理块存放的是( 二级间接地址索引表)。
解答:
每个磁盘索引块能存储的物理块地址个数:1kb/4b = 256
索引从0开始
iaddr[0]〜iaddr[4]:0-4
iaddr[5] : 5- 260
iaddr[6]: 261-516
外存的文件
解答:
设备管理
DMA没有cpu参与,由DMAC控制。
微内核操作系统
嵌入式操作系统