2103年,927
1.简述操作系统有哪些接口?(命令接口,系统调用,图形用户接口)
2.多道程序设计中,进程间存在的制约关系有哪些?简述。
答:同步:某一进程收不到另一进程给他的必要信息,就不能继续运行下去,这种制约关系源于进程间的合作。 互斥:某一进程要求使用某资源,而该资源正被另一进程使用,并且这以资源不许两进程同时使用,那么进程只好等占用资源进程释放资源后才能占有使用。
3.高级通信机制与低级通信机制PV操作的区别是什么?简述消息缓冲队列的工作原理。
答:PV操作时指进程之间通过共享变量实现信息传递;而高级通信机制是由系统提供发送(sender)与接收(receive)两个操作,进程间通过这两个操作进行通信,无需贡献任何变量。基本原理:操作系统管理一个用于进程通信的缓冲池,其中的每一个缓冲区单元咳存放一条信息。发送消息时,发送者从中申请一个可用缓冲区,接受者取出一条信息时再释放该缓冲区,每个进程均设置一条消息队列,任何发送给该进程的消息均暂存在其中。
4.分页存储管理主要解决什么问题?试说明其原理。
答:分页系统只要解决内存外零头的问题,提高内存利用率。
5. 什么是链接?链接的方法有哪些?试说明链接需要解决的问题
答:将各个目标模块组织成可以装入内存的装入模块的过程,它包括静态链接,装入时动态链接,运行时动态链接。面对的问题:就是在运行时动态链接里面,为了使地址转换不影响指令的执行速度,还需要重定位寄存器的支持。
6.简述进程和线程的区别和联系。
答:1.调度:(进程拥有资源和调度,线程就是调度单位)
2.拥有资源(进程是拥有资源的基本单位,线程除一点必须资源外不拥有系统资源)
3.并发性(引入线程后,不仅进程之间可以并发执行,且同一进程内的多个线程也可)
4.系统开销(进程创建和撤销时,系统都得为其分配和回收资源,在进程切换时,设计整个进程当前的CPU环境的保存以及新调度到进程的CPU环境的设置,而线程切换只需保存和设置少量寄存器内容,开销很小,而且进程内多个线程共享进程地址空间、多线程之间的同步
与通信非常容易实现,甚至无需操作系统干预。
2013年 923
1.简述假脱机实现打印的过程。
2012年 927
1.分层结构的计算机系统由裸机,用户,CPU调度和PV操作,文件管理,作业管理,内存管理,设备管理及命令管理等部分组成。按层次结构的原则从内到外将各部分重新排列。
答:按层次结构的原则从内到外依次为:裸机;CPU调度,P、V操作;内存管理,作业管理,设备管理,文件管理;命令管理和用户。
2.试比较进程和程序的区别:
进程通信方式答:进程是程序的一次执行,属于动态概念;而程序是一组有序指令,是静态概念;
程序可以作为一种软件资料长期保存,而进程是程序的一次执行过程,是暂时的;
一个进程可以执行一个或几个程序;一个程序也可由多个进程同时执行;
进程具有并发性,二程序不具有;
没有线程的情况下,进程是一个独立运行的单位,也是系统进行资源分配的和调度的基本单位。
3.高级通信机制与低级通信机制PV操作的主要区别是什么?给出消息缓冲机制的工作原理。
答:交换信息量方面:利用P,V原语操作作为进程间的同步互斥工具是理想的,但进程之间只能交换一些信息,基本上是控制信息,缺乏传输消息的能力。而高级通信不仅可以解决进程间的同步互斥问题,且能很好的交换大量消息,是理想的进程通信工具。
通信对用户透明方面:用户要用PV原语进行进程间的通信必须在程序中增加PV编程,这样做不但增加了编程的复杂性,不便于直观的理解程序,同时还可能出现死锁,难以查原因。而高级通信机制不但能高效传输大量信息,而且操作系统隐藏了进程通信的实现细节,即通信过程对用户是透明的,大大简化了通信程序编制上的复杂性。
基本原理:
把消息缓冲区作为进程通信的一个基本单位,为了实现进程之间的通信,系统提供了发送原语Send(A)和接受原语Receive(B)。每当发送进程欲发送消息时,发送进程用Send(A)吧欲发送的消息从发送区复制到消息缓冲区,兵把它挂在接收进程的消息队列末尾。如果该接收进程因等待消息而处于阻塞状态,则将其唤醒。每当接受进程欲读取消息时,就用接受原语Receive(B)从消息队列头取走一个消息放到自己的接收区。
4.试举例说明在哪种情况下,必须互斥地打开文件;而在哪种情况下,可以共享的存取文件。
3.为什么要引入SPOOLing系统?SPOOLing系统带来哪些好处?
答:
1. 为什么要引入Spooling系统?Spooling系统可带来哪些好处? 解答: 所有字符设备都是独占设备并属于慢速设备,因此,当一个进程在某台字符设备上进行数据交换时,往往要等待较长时间,并且在此进程未释放该设备之前,其他进程不能同时访问这台设备,从而使这类设备成为系统中的瓶颈资源,使许多进程因等待它们而阻塞。另一方面,分配到字符设备的进程,在其整个运行期间,往往占有这些设备,却并不是经常使用这些设备,因而使这些设备的利用率很低。从而降低了整个系统的性能。 Spooling技术正是针对上述问题提出的一种技术。 | 带来的好处有: 1.提高了I/O速度 2.将独占设备改造为共享设备 3.实现了虚拟设备功能 |
2011年 927
1.什么是文件目录的索引节点?用一个实例分析引入索引节点的好处。磁盘索引节点和内存索引节点的作用有何不同/
答:
2.什么是多道性?举例说明,为什么躲到批处理操作系统能够提高CPU,内存以及I/O的利用率?
答:在计算机的内存中同时存放多道相互独立的程序,当某道程序因为某种原因不能运行下去的时候,管理程序就将另一程序投入运行,这样使几类程序在系统内并行工作,可使中央处理器和外设尽量处于忙碌状态,从而大大提高了计算机使用效率。
2010年 927
1.有人说先来先服务的调度算法有利于CPU繁忙的进程,而不利于I/O繁忙型进程。你认为这种说法有道理吗?为什么?
2011年 923
1.虚拟性是操作系统的基本特征之一,请问什么是虚拟性?操作系统的虚拟性是如何体现的(至少谈三个方面)?
答:虚拟是指通过某种技术把一个物理实体变成若干个逻辑上的对应物。
在多道分时系统中,利用多道程序设计技术可以把一台物理上的CPU虚拟为多台逻辑上的CPU,供多个终端用户使用;
在虚拟存储器中,仅把作业的一部分装入内存便可运行作业,从逻辑上对内存容量进行了扩充;
在虚拟设备管理中虚拟设备技术的使用,可将一台物理设备变换为若干台逻辑上的对应物。
总之虚拟体现在操作系统的各个方面的应用中。
2.编写程序时,源代码必须经过编译和链接生产目标代码,请问什么是链接?链接主要解决了什么问题?简述链接的主要类型以及其优缺点是什么?
答:将编译完成的目标模块转化为装入模块的过程叫链接,链接主要是对前一步编译完成后的目标模块进行处理,打包成装入模块,以便进入内存。它主要分为:
静态链接:在程序运行前,先把各个目标模块及所需的库链接为一个完整的可执行程序,以后不再拆开。这种做法操作简单。
装入时动态链接:将应用程序编译后所得到的的一组目标模块在装入内存时采用边装入边链接的链接方式。优点是:便于修改和更新还有便于实现对目标模块的共享。
运行时动态链接:直到程序运行过程中需要一些模块的时候,才对这些模块进行链接,优点:不仅可以加快程序的装入过程,还可以节省大量的内存空间。
3.什么叫重定位,为什么要重定位?
答:由于一个作业装入到与其地址空间不一致的存储空间,对有关地址部分的调整过程称为重定位。我们写正常程序的时候根本不用去关心变量(常量)的位置,因为源程序在编译的时候它的内存中的位置郡被计算好了。程序装入内存时,系统不会为它重定位。我们需要用到变量 (常量)的时候直接用变量名访问它就行了。有的程序不可避免也要用到变量 (常
量),各个变量 (常量)在内存中的位置自然也不相同。既然这些变量没有固定的地址,那么程序在运行的过程中只有重定位,才可以正常地访问相关资源。
4.
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论