一、什么是操作系统?你都用过什么操作系统?各有什么特点?操作系统是管理计算机硬件资源,控制其他程序运行并为用户提供交互操作界面的系统软件的集合。
操作系统是计算机系统的关键组成部分,负责管理与配置内存、决定系统资源供需的优先次序、控制输入与输出设备、操作网络与管理文件系统等基本任务。
DOS系统都是以命令的方式运行指令,有的也支持鼠标,甚至也可以做成菜单方式,但跟windows的亲和性相比是无法相比的。
windos系列的操作系统主要特点就是简单,图形操作,不需要死记命令,适合非专业人士使用。
unix系列由于是开源的,所以操作复杂,功能强大,可以按自己的需求设计与改造,适合专业人士,不适合初学者。
二、试说明操作系统系统的主要功能模块及其主要任务?处理机管理的主要功能是:进程管理、进程同步、进程通信和处理机调度;进程管理:为作业创建进程,撤销已结束进程,控制进程在运行过程中的状态转换。
进程同步:为多个进程(含线程)的运行进行协调。
进程通信:用来实现在相互合作的进程之间的信息交换。
处理机调度:(1)作业调度。
从后备队里按照一定的算法,选出若干个作业,为他们分配运行所需的资源(首选是分配内存)。
(2)进程调度:从进程的就绪队列中,按照一定算法选出一个进程,把处理机分配给它,并设置运行现场,使进程投入执行。
内存管理的主要功能有:内存分配、内存保护、地址映射和内存扩充。
内存分配:为每道程序分配内存。
内存保护:确保每道用户程序都只在自己的内存空间运行,彼此互不干扰。
地址映射:将地址空间的逻辑地址转换为内存空间与对应的物理地址。
内存扩充:用于实现请求调用功能,置换功能等。
设备管理主要功能有: 缓冲管理、设备分配和设备处理以及虚拟设备等。
主要任务: 完成用户提出的I/O 请求,为用户分配I/O 设备;提高CPU 和I/O 设备的利用率;提高I/O速度;以及方便用户使用I/O设备.文件管理的主要功能是文件存储空间的管理,目录管理,文件的读写管理和文件的共享与保护。
主要任务是对用户文件和系统文件进行管理,以方便用户使用,并保证文件的安全性。
三、什么是多道程序设计技术?试叙述多道程序运行的特征。
所谓多道程序设计指的是允许多个程序同时进入一个计算机系统的主存储器并启动进行计算的方法。
也就是说,计算机内存中可以同时存放多道(两个以上相互独立的)程序,它们都处于开始和结束之间。
从宏观上看是并行的,多道程序都处于运行中,并且都没有运行结束;从微观上看是串行的,各道程序轮流使用CPU,交替执行。
多道程序技术运行的特征:多道、宏观上并行、微观上串行。
四、在一个分时操作系统中,用户提交了一个作业,作业的内容包括:①请求内存(memory);②计算并将结果存于memory;③请求打印机printer;④将memory 中的内容在printer上输出;⑤释放printer;⑥释放memory;⑦结束。
试用分时系统对资源管理的观点论述该作业从提交开始到结束为止,操作系统为其提供服务与控制的全过程。
五、某系统的进程状态转换如图所示,请说明:(1)引起各种状态转换的典型事件有哪些?(2)当我们观察系统中某些进程时,能够看到某一进程产生的一次状态转换能引起另一进程作一次转换。
在什么情况下,当一个进程发生转换3时能立即引起另一个进程发生转换1?在本题所给的进程状态转换图中,存在四种状态转换。
当进程调度程序从就绪队列中选取一个进程投入运行时引起转换1;正在执行的进程如因时间片用完而被暂停执行就会引起转换2;正在执行的进程因等待的事件尚未发生而无法执行(如进程请求完成I/O)则会引去转换3;当进程等待的事件发生时(如I/O完成)则会引起转换4。
如果就绪队列非空,则一个进程的转换3会立即引去另一个进程的转换1。
这是因为一个进程发生转换3意味着正在执行的进程由执行状态变为阻塞状态,这时处理机空闲,进程调度程序必然会从就绪队列中选取一个进程并将它投入运行,因此只要就绪队列非空,一个进程的转换3能立即引起一个进程的转换1。
六、设系统中仅有一类数量为M的独占型资源,系统中N个进程竞争该资源,其中各进程对该类资源的最大需求量为S。
当M、N、S分别取下列值时,试判断哪些情况会发生死锁?为什么?(1)M=2,N=2,S=1 (2)M=3,N=2,S=2(3)M=3,N=2,S=3 (4)M=5,N=3,S=2(5)M=6,N=3,S=3(1),不会死锁,因为每个进程的资源都可以得到满足。
(2),不会,总共两个进程,总有一个进程的申请可以得到满足,当它退出时会释放占有的资源,从而满足另一个进程。
(3),可能,比如说其中一个进程占有两个资源,另一个进程占有1个,两个进程的资源都得不到满足,相互等等,出现死锁。
(4),不会,因为总有两个进程的资源申请得到满足,它们运行完后会释放资源,满足另一个进程。
(5),可能,3个进程,每个进程都分配两个资源的情况下,这时三个进程都没有得到资源的满足,出现相互等待,从而产生死锁。
七、有三类资源A(17)、B(5)、C(20),括号内为资源的数量。
有5个进程P1、P2、P3、P4、P5。
T0时刻系统状态如下:问(1)、T0时刻是否为安全状态,给出安全序列。
(2)、T0时刻,P2: Request(0,3,4),能否分配,为什么?八、在具有快表的段式存储管理方式中,如何实现地址变换及存储保护?在CPU给出有效地址后,由地址变换机构自动将页号P送入高速缓冲寄存器,并将此页号与高速缓存中的所有页号比较,若找到匹配页号,表示要访问的页表项在快表中。
可直接从快表读出该页对应物理块号,送到物理地址寄存器中。
如快表中没有对应页表项,则再访问内存页表,找到后,把从页表项中读出物理块号送地址寄存器;同时修改快表,将此页表项存入快表。
但若寄存器已满,则OS必须找到合适的页表项换出。
九、某多道程序设计系统配有一台处理器和两台外设IO1和IO2,现有3个优先级由高到低的作业J1、J2和J3都已装入了主存,它们使用资源的顺序和占用时间分别是:J1:IO2(30ms),CPU(10ms),IO1(30ms),CPU(10ms)J2:IO1(20ms),CPU(20ms),IO2(40ms)J3:CPU(30ms),IO1(20ms)处理器调度采用可抢占的优先数算法,忽略其他辅助操作时间,回答下列问题:(1)分别计算作业J1、J2和J3从开始到完成所用的时间;(2)3个作业全部完成时CPU的利用率;(1)J1占用IO2传输30ms时,J1传输完成,抢占J2的CPU,运行10ms,再传输30ms,运行10ms,完成。
由图1-2可见,J1从开始到完成所用的时间为:30+10+30+10=80ms。
J2与其并行地在IO1上传输20ms,抢占J3的CPU,J2运行10ms后,被J1抢占CPU,等待10ms之后,J2再次得到CPU,运行10ms,J2启动IO2传输,40ms 完成。
由图1-2可见,J2从开始到完成所用的时间为:20+10+10+10+40=90ms。
J3在CPU上执行20ms,被J2抢占CPU,等待30ms,再运行10ms,等待10ms,J3启动IO1进行20ms的传输,完成。
J3从开始到完成所用的时间为:20+30+10+10+20=90ms。
(2)三个作业全部完成时,CPU的利用率为:(10+20+30+10)/90=7/9=78%。
(3)三个作业全部完成时,外设IO1的利用率为:(20+30+20)/90=7/9=78%。
十、某程序在内存中分配三个块,访问页的走向为4,3,2,1,4,3,5,4,3,2,1,5,按FIFO、 LRU、OPT算法分别计算缺页次数(假设开始时所有页均不在内存)。
十一、什么是缓冲池?设计一个数据结构及相应的操作来管理缓冲池。
十二、试说明实现打印机共享的SPOOLing系统的组成,并说明其工作原理。
SPOOLing 系统由输入井和输出井、输入缓冲区和输出缓冲区、输入进程 SPi 和输出进程 SPo 三部分组成。
将一台独享打印机改造为可供多个用户共享的打印机,是应用SPOOLing技术的典型实例。
具体做法是:系统对于用户的打印输出,但并不真正把打印机分配给该用户进程,而是先在输出井中申请一个空闲盘块区,并将要打印的数据送入其中;然后为用户申请并填写请求打印表,将该表挂到请求打印队列上。
若打印机空闲,输出程序从请求打印队首取表,将要打印的数据从输出井传送到内存缓冲区,再进行打印,直到打印队列为空。
十三、什么是文件分配表FAT?假定磁盘块的大小为1K,对于540M的硬盘,其文件分配表FAT至少需要占用多少存储空间?一种供MS-DOS及其它Windows操作系统对文件进行组织与管理的文件系统。
文件分配表(FAT)是当您使用FAT或FAT32文件系统对特定卷进行格式化时,由Windows 所创建的一种数据结构。
Windows将与文件相关的信息存储在FAT中,以供日后获取文件时使用。
硬盘总块数为:540M/1K=540K个因为:220>540K 即文件分配表的每个表目为20/8=2.5字节则FAT占用:2.5*540=1350K十四、如果磁盘的每个磁道分成9个块,先有一文件共有A、B、C、D、E、F、G、H、I共 9个记录,每个记录的大小与块的大小相等,设磁盘转速为27ms/转,每读出一块后需要2ms的处理时间。
若忽略其他辅助时间,试问:(1)如果顺序存放这些记录并顺序读取,处理该文件需要多少时间?(2)如果要顺序读取该文件,记录如何存放处理时间最短?最短多少时间?十五、下图给出了4个进程P1、P2、P3、P4,合作完成某一任务的前趋图,试用P、V操作描述这4个进程间的同步关系。
十六、某寺庙有小、老和尚若干。
庙中有一水缸,由小和尚提水供老和尚饮用。
水缸可容纳10桶水,水取自同一井中。
水井很窄,每次只能容纳一个水桶打水。
水桶总数为3个。
每次和尚取缸水仅为1桶水,且不可同时进行。
试给出有关小和尚从井中提水放入缸中、老和尚从缸中取水的算法描述。
十七、如图所示的交通管理例子(各方向的汽车是单行、直线行驶),试用P、V 操作实现各方向上汽车行驶的同步。