一.46题答案和解析
(1) 仅使用nice值作为进程的优先数基于priority调度策略时,若有一个nice值较高的进程,在等待cpu时一直有nice值更低的进程插入等待队列,则分配cpu时不会分配给该nice值高的进程,时间一长容易发生饥饿.
(2) 我给出的动态优先数为priority=nice-k1*waitTime+k2*cpuTime,k1,k2为非负常数,waitTime的的作用是指明进程已经等待的时间供调度程序参考,保证waitTime比较高的进程被执行的优先级更高,避免出现饥饿现象.
二.47题答案和解析
2.1.知识背景
【链接分配】解决了连续分配的外部碎片和文件大小管理问题
显式链接分配:把隐式文件中的指针单独抽离出来
介绍:把用于链接文件到各物理块的的指针现实的存放在一张表中,即【文件分配表FAT】。一个磁盘只会建立一张【文件分配表FAT】。开机时,文件分配表放入内存并常驻内存
优点:方便文件拓展;不会有碎片化问题;外存利用率高;支持随机访问;相比隐式,显式在转换地址时不需要访问磁盘,访问率超高
缺点:占用一定存储空间
2.2.答案
(1) 目录文件有dir,dir1
目录文件dir的内容为dir1 簇号48
目录文件dir1的内容为file1 簇号为100 file2 簇号200
(2) FAT的每个表项存放簇号,2个字节一共占16位,FAT的最大长度为2^16*2B=2^17B=128KB,该文件系统支持的最大长度为2^16*4KB=256MB
(3) 以目录文件实现按名存取,由于是显式链接,FAT表下一块的簇号存放在上一块中,故106的表项存放在100中,108的表项存放在106中
(4) 需要访问的簇有48,读入dir1的目录,再访问file1在内存中打开file1,并访问第5000字节,需访问簇106