计算机操作系统(汤子瀛)习题答案
断开;
d. shmct(),对共享存储区的状态信息进行读取和修改,也可以断开进程与共享存储区的连接.
15 核心在执行shmget 系统调用时,需完成哪些工作?
a. 首先检查共享存储区表,若找到指定key 的表项,表明该共享区已经建立,此时返回该表项的描述符shmid;
b. 若未找到指定的key 表项,而flag 标志又为IPC_CREAT,且参数size 值在系统限制值内,则分配一系统空闲区作为共享区的页表区,分配响应的内存块,再将这些块号填入页表中;
c. 核心在共享存储区和系统区表中,为新建立的共享区分配一空表项,并在共享存储区表填上存储区的关键字及其大小,共享区页表的始址,指向系统区表项的指针等,最后
a. semget(),建立信号量集; b. semop(),对信号量进行操作. 17 核心是如何对信号量进行操纵的?
a. 核心根据sem_op 来改变信号量的值,可分为3 种情况; b. sem_op 的值为正,则将其值加到信号量的值上,它相当于通常的V 操作;
c. sem_op 的值为负,相当于P 操作,若信号量的值大于操作值的绝对值,则核心将一个负整数加到信号量值上,否则,核心将已经操作了的信号量,恢复到系统调用开始时的值; d. 若(sem_flg&IPC_NOWAIT)为真,便立即返回,否则,让进程睡眠等待. 18 为实现请求调页管理,在UNIX 系统中,配置了哪些数据结构? a. 页表;
b. 磁盘块描述表; c. 页框数据表;
返回共享存储区的描述符---shmid. d. 对换使用表. 16 在信号量集机制中,有哪些系统调用?并说明它们的用途.
33
19 在UNIX 系统中,如何改变有效页的年龄?并用实例说明之.
计算机操作系统(汤子瀛)习题答案
a. 一个页可计数的最大年龄,取决于它的硬件设施;
b. 对于只设置两位作为年龄域时,
21 在将一页换出时,可分为哪几种情况?应如何处理这些情况? a. 若在对换设备上已有被换出页的
其有效页的年龄只能取值为0,1,2,拷贝,且被换出页的内容未被修改,3,当该页的年龄为0,1,2 时,该页处于不可换出状态,而当其年龄达到3 时,则可为换出状态,每当内存中的空闲页面数低于某规定的低限时,核心便唤醒换页进程,又换页
则此时核心不必将该页重写回对换设备上,而只需将该页的页表项中的有效位清零,并将页框数据表项中的引用计数减1,最后将该页表项放入空闲页链表中;
进程取检查内存中的每一个活动的,b. 若在对换设备上没有被换出的拷非上锁的区,对所有有效区的年龄字段加1,对于那些年龄已增至3 的页便不再加1,而是将它们换出,如果这种页已被进程访问过,便将年龄域中的年龄降为0.
20 当需访问的缺页是在可执行文件上或在对换设备上时,应如何将它调入内存?
核心先为缺页分配一内存页,修改该页表项,使之指向内存页,并将页面数据表项放入相应的散列队列 中,然后把该页从对换设备上调入内存,当I/O 操作完成时,核心把请求调入该页的进程唤醒.
34
贝,则换出进程应将该页写到对换设备上,可采用页面链集中写入; c. 在对换设备上已有换出页的副本,但该页内容已被修改过,此时核心将该页在对换设备上的原有空间释放,再重新将该页拷贝到对换设备上,使在对换设备上的拷贝内容总是最新的.
相关推荐: