操作系统简答题
(操作系统简答题)
一、什么是操作系统?功能是什么?
- 定义:操作系统(OS)是一组能有效地组织和管理计算机硬件和软件资源,合理的对各类作业进行调度,以及方便用户使用的程序的集合。
- 功能:
- os作为用户与计算机硬件系统之间的接口: os处于用户与计算机硬件系统之间,用户通过os来使用计算机系统。
- os作为计算机系统资源的管理者: os的主要功能是对处理机、存储器、I/O设备以及文件(数据和程序)进行有效的管理。
- os实现了对计算机资源的抽象: 为方便用户使用I/O设备,人们在裸机上覆盖一层I/O设备管理软件,由它来实现操作细节,所以用户无需关心I/O如何实现。
二、同步机制遵循的规则有哪些?
- 空闲让进:当无进程处于临界区时,表明临界资源处于空闲状态,应允许一个请求进入临界区的进程立即进入自己的临界区,以有效的利用资源。
- 忙则等待:当已有进程进入临界区时,表明资源正在被访问,所以其他试图进入临界区的进程必须等待,以保证对临界资源的互斥访问。
- 有限等待:对要求访问临界资源的进程,应保证在有限时间内能进入自己的临界区,以免陷入“死等”状态。
- 让权等待:当进程不能进入自己的临界区时,应立即释放处理机,以免陷入“忙等”状态。
三、进程七状态转换图
四、多级反馈队列调度算法的调度机制
- 首先设置多个就绪队列。为每个队赋予不同的优先级,第一个队列的优先级最高,第二个次之,其余递减。所以优先级越高对队列,时间片就越小。
- 每个队列都采用FCFS算法,当新进程进入内存后,首先将它放在第一队列的末尾,按照FCFS原则等待调度。轮到该进程执行时,如果它能在时间片内完成,就撤离系统,如果未完成,就把它转入第二队列的末尾。如果在第二队列中运行一个时间片后仍然没有完成,再将它放入第三队列队尾,以此类推。最后当进程被降到第n队列后,在第n队中采取RR的方式调度。
- 按照队列优先级调度,调度程序首先调度最高优先级队列中的诸进程运行,仅当第一队列空闲时才调度第二队列中的进程。
五、进程与程序的区别
- 进程是动态的,程序是静态的
- 程序是有序代码的集合;进程是程序的执行。
- 进程是暂时的,程序的永久的:
- 进程是一个状态变化的过程,程序可长久保存。
- 进程与程序的组成不同:进程的组成包括程序、数据和进程控制块(即进程状态信息)。 进程与程序的对应关系:通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。 )
六、什么是死锁?死锁产生的条件
- 定义:是指多个进程,因争夺资源或执行顺序不当而造成的一种互相等待的现象。
- 条件:
- 互斥条件:在一段时间内,某资源只能被一个进程占用,如果此时还有其他进程请求该资源,则请求只能等待,直到占有该资源的进程用完释放
- 请求和保持条件:进程已经保持了至少一个资源,但是又提出了新的资源请求,而该资源已经被其他进程占用,此时请求进程被阻塞,但是对自己占有的资源不释放。
- 不可抢占条件:进程已经获得的资源在未使用完之前不能被抢占。
- 循环等待条件:系统中的进程形成了环形的资源请求链。
七、什么是虚拟存储器?有哪些特征?
- 定义:是指具有请求调入功能和置换功能,能从逻辑上对内存容量加以扩充的一种存储器系统。
- 特征:
1. 多次性: 是指一个作业中的程序和数据无需在作业运行时一次性全部装入内存,而是允许被分成多次调入内存运行,即只需要将当前要运行的那部分程序和数据调入即可,以后每当要运行未调入对那部分时,再调入。
2. 对换性:是指一个作业中的程序和数据,无需在作业运行时一直常驻内存,而是允许在作业运行过程中换进、换出,即在程序运行期间允许将那些暂时不用的代码和数据调至外存对换区,等以后需要时再将它从外存调至内存。
3. 虚拟性:是指能够从逻辑上扩充内存容量,使用户看到的内存容量远大于实际内存容量。
八、I/O系统的基本功能有哪些?
- 隐藏物理设备细节:I/O系统必须通过对设备加以适当的抽象,以隐藏掉物理设备的实现细节,仅向上层提供少量的、抽象的读/写命令。
- 与设备的无关性:操作系统与设备之间没有固定的关系,做到即插即用。
- 提高处理机和I/O设备利用率:要尽可能的让处理机和I/O设备并行操作,以提高利用率。
- 对I/O设备进行控制:通过驱动程序控制,四种方式:程序直接控制方式、中断控制方式、直接存储器访问方式、I/O通道控制方式。
- 确保对设备的正确共享:可分为独占设备和共享设备。
- 错误处理:可分为临时性错误和持久性错误。
九、分页系统如何实现地址转换?
- 当进程要访问某个逻辑地址中的数据时,分页地址变换机构会自动地将有效地址(相对地址)分为页号和页内地址两部分,再以页号为索引去检索页表。查找操作由硬件执行。在执行检索之前,先将页号与页表长度进行比较,如果页号大于或等于页表长度,则表示本次所访问的地址已超越进程的地址空间。于是,这一错误将被系统发现,并产生一地址越界中断。若未出现越界错误,则将页表始址与页号和页表项长度的乘积相加,便得到该表项在页表中的位置,于是可从中得到该页的物理块号,将之装入物理地址寄存器中。与此同时,再将有效地址寄存器中的页内地址送入物理地址寄存器的块内地址字段中。这样便完成了从逻辑地址到物理地址的变换。
- 参考下王道考研: