操作系统复习(自用)1
2012级:操作系统 第一题是用英文解释概念 比如进程线程等等
还有死锁以及死锁检测和死锁预防算法 就是那个银行家算法
最后一题用信号量解决实际问题
操作系统还考了虚拟内存 好像有个页面置换
概念题(英文)5*3份
简答题、计算题、编程题:10+分/题
CPU调度;银行家算法;磁盘调度;
分段式、分页式的区别;
总结子系统共有的特点;
编程(利用信号量实现同步和互斥,用语言描述、分析有多少进程、各干什么、使用资源哪些共享哪些互斥,几个信号量的初值,wait和signal的位置)
Q:OS如何实现保护(CPU、内存、I/O)
A:在分页环境下,内存保护是通过与每个帧相关联的保护位来实现的,通常存在页表中。
采用内存保护的操作系统可以预防许多硬件和应用程序的错误。
I/O的保护:为了防止用户执行非法I/O,定义所有I/O指令为特权指令,因此用户必须通过操作系统来进行操作。操作系统在监控模式下,检查请求是否合法,如合法,则处理I/O请求,然后返回给用户。另外,所有的内存映射和I/O端口内存位置都收到内存保护系统的保护。
Q:进程和线程;
A1:手抄整理部分
A2:
每个进程由4个要素组成:控制块,程序块,核心块和数据块(*略有不同)
进程上下文又3部分组成:用户级上下文,寄存器上下文,系统级上下文
进程控制块包含3类信息:标识信息,现场信息,控制信息
PCB(进程控制块)是操作系统中最为重要的数据结构
进程组织方式—进程队列
队列:把处于同一状态的所有进程的PCB链接在一起的数据结构成为进程队列 队列的组织方式:线性方式,链接方式,索引方式
Q:wait和signal的内容;
A:wait(semaphore *s)
{
s->value - -;
if (s->value<0)
{
add this process to s->list;
block();
}
}
signal(semaphore *s)
{
s->value + +;
if (s->value<=0)
{
remove a process P from s->list;
wakeup(P);
}
}
Q:进程同步;
A:是指并发进程之间存在一种制约关系,一个进程的执行依赖另一个进程的消息,当一个进程没有得到另一个进程的消息时应等待,直到消息到达才被唤醒。
称为直接制约关系,这些进程的并发是异步的,它们相互合作,共同完成一项任务。在操作系统中,要对并发进程进行同步。
Q:操作系统各个部分具有的特性;
OS有哪几大特征?其最基本的特征是什么?
并发性、共享性、虚拟性和异步性。最基本的特征是并发性。
在微内核OS中,为什么要采用客户/服务器模式?--C/S 模式具有独特的优点:⑴数据的分布处理和存储。⑵便于集中管理。⑶灵活性和可扩充性。⑷易于改编应用软件。
试描述什么是微内核OS--1)足够小的内核 2)基于客户/服务器模式3)应用机制与策略分离原理 4)采用面向对象技术
Q:分时系统(人机交互、多进程并发、及时响应)、批处理系统;
A:
Q:机制(信号量、进程同步、银行家算法、CPU调度)
Q:选择进程调度算法的准则是什么?
由于各种调度算法都有自己的特性,因此,很难评价哪种算法是最好的。一般说来,选择算法时可以考虑如下一些原则:
① 处理器利用率;
② 吞吐量;
③ 等待时间;
④ 响应时间。
在选择调度算法前,应考虑好采用的准则,当确定准则后,通过对各种算法的评估,从中选择出最合适的算法。