一:简述存储管理的任务。
存储管理有三个方面的任务:
- 首先,当多个程序共享有限的内存资源时,要考虑如何为多个程序分配有限的内存空间;
- 其次,存储在内存中的多个程序和数据应该彼此隔离、互不侵扰;
- 最后,解决内存扩充的问题,即将内存和外存结合起来管理,为用户提供一个容量比实际大得多的虚拟存储器。
二:简述指令执行的基本过程。
最简单的处理指令方式包括两个步骤:
- 首先,处理器每次从存储器中读取一条指令,并在取指令完成后,根据指令类别自动将程序计数器的值变成下一条指令的地址,通常是自增1;
- 其次,取到的指令被存储在处理器的指令寄存器中,处理器预算解释并执行这条指令。一个这样的单条指令处理过程称为一个指令周期。
程序的执行就是由不断取指令和执行指令的指令周期组成的。仅仅当机器关机、发生某些未发现的错误或者遇到停机相关的指令时,程序才会停止。
三:简述多个中断的处理策略。
(1)对于多个中断进行处理的第一种策略是,正当处理一个中断时禁止其他中断,此时系统将对任何新发生的中断置之不理。在这期间发生的中断将保持挂起状态。当处理器再次允许中断时,这个新的中断信号会被处理器检测到,并做出处理。
(2)对于多个中断进行处理的第二种策略是中断嵌套。即中断按照优先级分级,允许优先级较高的中断打断优先级较低的中断处理过程,于是引起中断处理的嵌套。
四:简述进程与程序的区别。
(1)程序是静态的,而进程是动态的。
(2)进程是程序的一个执行过程。程序的存在是永久的。而进程是为了程序的一次执行而暂时存在的。进程有生命周期,有诞生,亦有消亡。
(3)一个进程可以包括若干程序的执行,而一个程序亦可以产生多个进程。
(4)进程具有创建其他进程的功能。被创建的进程称为子进程,而创建者称为父进程,从而构成了进程家族。
五:简述引起进程调度的因素。
执行进程调度一般是在下述情况下发生的:
(1)正在执行的进程运行完毕。
(2)正在执行的进程由于某种错误而终止。
(3)时间片用完,即有一个进程从运行状态变为就绪状态。
(4)正在执行的进程调用阻塞原语将自己阻塞起来,即一个进程从运行态进入阻塞状态。
(5)创建了新的进程,即有一个新的进程进入就绪队列。
(6)正在执行的进程调用了唤醒原语操作激活了等待资源的进程,即一个等待状态的进程变为就绪状态。