1.静态重定位和动态重定位?
静态重定位是在目标程序装入内存时,由装入程序对目标程序中的指令和数据的地址进行修改,即把程序的逻辑地址都改成实际的地址。对每个程序来说,这种地址变换只是在装入时一次完成,在程序运行期间不再进行重定位。动态重定位是在程序执行期间每次访问内存之前进行重定位。这种变换是靠硬件地址变换机构实现的。通常采用一个重定位寄存器,其中放有当前正在执行的程序在内存空间中的起始地址,而地址空间中的代码在装入过程中不发生变化。
文件目录结构有哪几种,各有什么优缺点?
文件目录结构一般有一级目录结构、二级目录结构和多级目录结构。(2分)
一级目录结构的优点是简单,缺点是文件不能重名,限制了用户对文件的命名。(2分)
二级目录结构实现了文件从名字空间到外存地址空间的映射:用户名->文件名->文件内容。其优点是有利于文件的管理、共享和保护;适用子多用户系统;不向的用户可以命名相同文件名的文件,不会产生混淆,解决了命名冲突问题。缺点是不能对文件分类;当用文件较多时查找速度慢。(3分)
多级目录结构的优点是便于文件分类,可为每类文件建立一个子目录;查找速度快,因为每个目录下的文件数目较少;可以实现文件共享;缺点是比较复杂。(3分)
13
什么是死锁﹖产生死锁的4个必要条件是什么?
多道程序系统中,一组进程中的每一个进程均无限期地等待被该组进程中的另一个进程所占用且永远不会释放的资源。(3分)
产生死锁的必要条件:
互斥条件:进程要求对所分配的资源进行排它性控制,即在一段时间内某资源仅为一进程所占用。(1.5分)
请求和保持条件:当进程因请求资源而阻塞时,对已获得的资源保持不放。(1.5分)
不可抢占条件:进程已获得的资源在未使用完之前,不能剥夺,只能在便用完时由自己释放。(1.5分
循环等待条件:在发生死锁时,必然存在一个进程–资源的环形链。(1.5分)
在生产者一消费者的程序中,两个P,V操作的次序能颠倒吗?为什么?
两个P操作不能颠倒,两个V操作可以颠倒,因为两个P操作颠倒后,会形成临界区里面出现P操作,很可能会形成死锁,而两个V操作颠倒后不会形成这种危险,所以可以互相颠倒。
在实现后台打印时,SPOOLing系统应为请求I/o的进程提供那些服务?
(1)输出进程在输出井申请一空闲盘块,并将要打印的数据送入其中;(3分)
(2)输出进程为用户进程申请空白用户打印表,填入打印要求,将该表挂到请求打印队列; (3分)
(3)一旦打印机空闲,输出进程便从打印队列的队首取出一张请求打印表,根据表中要求将要打印的数据从输出井传送到内存缓冲区,再有打印机打印输出。(4分)
请简述RAID和RAIDO,RAID1,RAID3。
磁盘阵列(Redundant Arrays of Independent Drives,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。
磁盘阵列是由很多价格较便宜的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。3分
RAID0最简单的实现方式就是把N块同样的硬盘用硬件的形式通过智能磁盘控制器或用操作系统中的磁盘驱动程序以软件的方式串联在一起创建一个大的卷集。在使用中电脑数据依次写入到各块硬盘中,它的最天优点就是可以整倍的提高硬盘的容量。2分
RAID1称为磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件,在不影响性能情况下最大限度的保证系统的可靠性和可修复性2分
RAID3使用单块磁盘存放奇偶校验信息。如果一块磁盘失效,奇偶盘及其他数据盘可以重新产生数据。如果奇偶盘失效,则不影响数据使用。RAID3对于大量的连续数据可提供很好的传输率,但对于随机数据,奇偶盘会成为写操作的瓶颈。2分
在经典的生产者消费者问题中为什么需要3个信号量,可以省略吗?为什么?
1)很多生产者和消费者,只有一个缓冲区,同时可以有好几个生产者进程,甚至进入wait ( empty)的也可以有几个。
2)两个资源信号量,一个互斥信号量。资源信号量负责将何时将生产者或消费者阻塞起来,互斥信号量负责互斥访问缓冲区。
7
请简述为什么静态重定位后的程序在内存中不能移动,动态重定位的程序在内存中可以移动。
静态重定位后的程序在内存中不能移动的原因如下:
静态重定位后的程序的代码发生了变化,由原来逻辑地址的程序已经变为物理地址的程序,按物理地址的方式运行,因此不能再进行移动。(6分)
动态重定位的程序在内存中可以移动的原因如下:
动态重定位是在程序运行过程中由硬件进行地址变换,变换的结果存放在内存地址寄存器中。程序代码并没有发生变化,仍然是逻辑地址的代码,按逻辑地址的方式运行。因此,在内存中移动程序代码之后,仅需要根据代码新的起始位置,重新设定基地址寄存器的值。(6分)
I/0控制方式有几种?分别适用何种场合?
1程序I/0方式,义称作"忙等”方式,该方式执行一个循环程序,反复育询外设状态,如果外设“忙德“则循环查询直到食得外设状态为“闲置时正,该方式适用子机质没有中商机构得场合:25分2、中断控制I/0万式,该方式在进行1/ON,CPU问设备控制器发出Ⅰ0命令后便转其他任务行处理,外没操作山设各控的器控制,CPU于外设并行工作。当外设完成/0后向CPU发中断信,CPU只需花费很少的时间进行I/o的善后处理,此前无须进行干预。该方式造用子低速设备1/0.并可合DMA和通道方式实现1/0(2.5分.
3,DMAC百接内寻动问.万式,该方式适用于白速外设I/0,一次可以在外设与内存之间传输一个或多个数据快,传输完单后才福CPLI预。_(2.5分)
4通道方式。该方式中系统预先要将T/0的过程实现为一段通道程家,置于内存的特定位置,而后启动迪道。山通道负责执行通道程序对外没进行1/0将制:CPl转其他程序运行。T/0完成后通道向CPU发中断信9,CPU化很少时同作善后处理。2.5分)



