1. 分页存储/分段存储分页存储一维将进程的逻辑地址空间分为若干个大小相等的区域称为页从0开始编号。相应的内存物理地址被分成若干个块称为物理块或页框同样从0开始编号。若干页可以被装入多个不相邻的物理块中。同时系统为每个进程维护一个页表记录页号和页框的映射。分页存储管理中物理页大小通常设置为2的整数次幂这样能通过拆分逻辑地址的二进制位快速分离逻辑页号与页内偏移取逻辑地址二进制的低n位作为页内偏移n为页大小对应的幂次比如页大小512字节对应2的9次幂就取低9位剩余的高位部分即为逻辑页号通过该逻辑页号查询进程页表可得到对应的物理页号再将物理页号与页内偏移拼接就能得到最终的物理地址。例子某操作系统采用分页存储管理方式下图给出了进程A和进程B的页表结构。如果物理页的大小为 512 字节那么进程 A 逻辑地址为 1111十进制的变量存放在号物理内存页中。物理页5122^91111十进制10001010111二进制后 9位是页内偏移剩余位2是逻辑页地址剩余位10二进制2十进制查看进程A的页表逻辑页2对应的物理页为4所以答案为4分段存储二维将作业的地址空间划分为若干段从0开始编号使用一段连续的地址空间。段的长度由逻辑信息组的长度决定因此每个段的长度不等。2. 进程同步/互斥同步用PV操作实现进程前驱约束是进程同步的典型应用P操作是申请等待、V操作是释放通知用于同步的信号量初始值需设为0代表进程需等待前驱事件完成规则前驱进程执行完毕后要对每个对应后继的信号量执行V操作以此传递“已完成、可启动”的信号后继进程启动前需对所有依赖前驱的信号量执行P操作确保所有前置条件满足后再推进自身逻辑。当一个进程存在多个前驱时需为每个前驱单独设置信号量启动前依次执行对应P操作等待所有前驱的通知若一个进程有多个后继要为每个后继配置独立信号量完成后逐一执行V操作分别触发各后继的执行。例如用PV操作控制进程若用PV操作控制进程P1P4并发执行的过程则需要设置5个信号量S1、S2、S3、S4和S5且信号量S1-S5的初值都等于0。那么a,b,c,d,e,f处的信号量应该填什么总结PV操作是针对信号量S的操作S是根据前驱顺序进行编号的P操作表示等待前驱V表示通知后续步骤一确定信号量S信号量初值为0表示“需等待”。在前趋图中每一条有向边用一个信号量表示“前驱完成后释放后继开始时等待”。根据图中依赖关系P1→P2 用S1P1→P3 用S2P3→P2 用S3P2→P4 用S4P3→P4 用S5。步骤二根据P操作表示等待前驱V表示通知后续确定操作a为P1结束后向P2、P3分别发信号故V(S1)V(S2)b为P2开始需等待来自P1和P3的S1与S3故P(S1)P(S3)c为P2结束后通知P4可继续故V(S4)d为P3开始需等待来自P1的S2故P(S2)e为P3结束后需分别通知P2与P4故V(S3)V(S5)f为P4开始需等待来自P2与P3的S4与S5故P(S4)P(S5)。异步互斥信号量是实现进程互斥访问临界资源的核心机制临界资源指一次仅能被一个进程访问的资源比如共享数据、独占硬件等。互斥信号量的初始值固定为1标识临界资源初始处于可用状态仅允许一个进程进入对应的临界区。规则进入临界区前必须执行P操作申请资源若信号量值为0则进程阻塞等待无论临界区内的操作成功或失败只要退出临界区就必须执行V操作释放资源确保信号量回归可用状态避免出现资源竞争、死锁或进程永久阻塞的问题。例如某航空公司机票销售系统有 n 个售票点该系统为每个售票点创建一个进程 Pii12...n管理机票销售。假设 Tjj12...m单元存放某日某航班的机票剩余票数Temp 为 Pi 进程的临时工作单元x 为某用户的订票张数。初始化时系统应将信号量 S 赋值为。Pi 进程的工作流程如下图所示若用 P 操作和 V 操作实现进程间的同步与互斥则图中空a空b和空c处应分别填入。答互斥信号量用于保护对共享变量此处为余票 Tj的临界区访问。初始量固定为1。a处要进入临界区所以执行P操作b\c处退出临界区所以执行V操作。3. 实时/分时操作系统实时操作系统RTOS的任务调度核心目标是保障任务执行的确定性与及时性。分时操作系统的核心目标任务公平性RTOS 通常采用抢占式调度模型即高优先级任务可打断低优先级任务从而保障响应时间。时间片轮转适用于分时系统而 RTOS 更常使用基于优先级的调度算法。许多 RTOS 使用静态优先级调度但也有一些采用动态优先级如 EDF或多种策略组合。4. 存储-文件索引节点法UNIX类文件系统的inode多级索引存储机制核心是通过直接地址索引、一级间接地址索引、二级间接地址索引部分系统还支持三级间接的组合兼顾小文件访问效率与大文件存储能力。例子某文件系统文件存储采用文件索引节点法。假设磁盘索引块和磁盘数据块大小均为 1KB每个文件的索引节点中有 8 个地址项 iaddr[0]iaddr[7]每个地址项大小为 4 字节其中 iaddr[0]iaddr[5] 为直接地址索引iaddr[6] 是一级间接地址索引iaddr[7] 是二级间接地址索引。如果要访问 icwutil.dll 文件的逻辑块号分别为 0、260 和 518则系统应分别采用。该文件系统可表示的单个文件最大长度是KB。答磁盘索引块 1KB1024B每个地址项大小4字节4B那么一个索引块可以存储1024/4256个地址iaddr[0]iaddr[5] 为直接地址索引对应6个数据块对应逻辑号0~5iaddr[6] 是一级间接地址索引一级可以指向256个数据块对应逻辑号6~261iaddr[7] 是二级间接地址索引可覆盖256*25665536个数据块对应逻辑号 262657970对应直接地址索引260对应一级索引518对应二级索引共覆盖62566553665798个数据块*1KB数据块大小65798KB