目录:
操作系统-进程调度
Linux进程调度就像一场“时间分配游戏”,操作系统需要把有限的CPU时间公平且高效地分给多个进程,既要让进程快速响应,又要避免某个进程“独占”CPU。
先来先服务调度算法(First Come First Served, FCFS)是最简单的调度算法,可以用于作业调度和进程调度。按照作业进入系统后备作业队列的先后次序来挑选作业,加入就绪队列,等待执行。FCFS是非抢占式的,易于实现,效率不高,性能不好.有利于长作业(CPU繁忙性)而不利于短作业(I/O繁忙性)。
通过中级调度,系统可以在内存紧张时将不活跃的进程暂时调出内存,以释放内存空间供其他进程使用。当这些进程需要重新执行时,再将它们从外存调入内存。综上所述,高级调度、低级调度和中级调度是进程调度中常用的三种方式,它们各自承担着不同的功能和职责,共同协作以确保操作系统的正常运行和高效性能。
操作系统中如何引发进程调度?
1、当处理机空闲时,进程调度程序必将处理机分配给一个处于就绪态的进程 ,该进程便由就绪态转换为运行态。当处于运行态的进程在运行过程中需要等待某一事件发生后(例如因I/O请求等待I/O完成后),才能继续运行,则该进程放弃处理机,从运行态转换为阻塞态。
2、FIFO(先进先出调度)原理:按照进程到达的顺序进行调度,先到达的进程先获得CPU资源。优点:实现简单,公平性较好,每个进程都能按顺序获得执行机会。缺点:短作业劣势:若短作业后到达,需等待长作业执行完毕,导致短作业周转时间变长。缺乏灵活性:未考虑进程的执行时间,可能导致系统整体效率低下。
3、进程优先级或实时性变化:当一个优先级更高的进程出现,或者有一个实时进程需要被立即执行时,调度器可能调度该进程运行。 进程的时间片用尽:在时间片轮转调度算法中,每个进程被分配一个固定的时间片段来执行。如果一个进程的时间片用尽,调度器将把CPU切换到下一个进程上。
4、进程调度的必要性资源竞争:处理机数量有限,而进程数量通常远多于处理机,需通过调度避免进程长时间等待。合理分配:通过调度算法(如先来先服务、短作业优先等)动态分配处理机资源,平衡系统效率与公平性。
5、操作系统中schedule()函数的触发时机主要包括以下六种情况: 进程状态转换的主动触发当进程主动改变自身状态时,会直接调用调度程序。例如,进程通过sleep()进入睡眠状态或通过exit()终止运行时,系统会立即触发schedule()以选择下一个可运行的进程。这种触发方式属于进程的主动行为,确保资源及时释放。
6、执行中的进程在调用P原语操作时,若因资源不足而被阻塞,需要进行进程调度。当调用v原语操作激活了等待资源的进程队列时,也需要进行进程调度,以选择被激活的进程执行。I/O请求:执行中的进程如果提出I/O请求后被阻塞,此时CPU也处于空闲状态,同样需要进行进程调度。
进程调度的方式通常有___和___方式两种。
1、进程调度的方式通常有剥夺调度(可抢占式)和非剥夺调度(不可抢占式)方式两种。剥夺调度(可抢占式)剥夺调度,也称为可抢占式调度,其核心特点是系统具有强制中断当前正在运行进程的能力。
2、进程调度的两种方式包括非剥夺调度方式、剥夺调度方式。非剥夺调度方式,又称非抢占方式 是指当一个进程正在处理机上执行时,即使有某个更为重要或紧迫的进程进入就绪队列,仍然让正在执行的进程继续执行,直到该进程完成或发生某种事件而进入阻塞状态时,才把处理机分配给更为重要或紧迫的进程。
3、进程的调度方式有两种: 非剥夺调度方式(非抢占式)和剥夺调度方式(抢占方式)。 非抢占式:只允许进程主动放弃处理机。如进程运行结束、异常结束或主动请求I/O阻塞。
4、某进程被唤醒并立即运行并不能说明该系统是剥夺调度算法。进程调度有以下两种基本方式:(1)非剥夺方式:分派程序一旦把处理机分配给某进程后便让它一直运行下去,直到进程完成或发生某事件而阻塞时,才把处理机分配给另一个进程。
5、【答案】:B 对于多核CPU,优化操作系统任务调度算法是保证效率的关键。一般任务调度算法有全局队列调度和局部队列调度。前者是指操作系统维护一个全局的任务等待队列,当系统中有一个CPU核心空闲时,操作系统就从全局任务等待队列中选取就绪任务开始在此核心上执行。这种 *** 的优点是CPU核心利用率较高。
6、进程常用的调度方式主要有高级调度、低级调度和中级调度三种。 高级调度(作业调度)功能:决定把外存上处于后备队列中的哪些作业调入内存,并为它们创建进程、分配必要的资源,然后将其排入就绪队列。重要性:高级调度是进程进入系统的之一道关卡,它决定了哪些作业能够进入内存并有机会被执行。
进程同步机制应遵循的原则
进程同步机制应遵循的原则如下:互斥原则:在任何时刻,只有一个进程可以执行。这意味着任何两个进程不能同时占用临界资源,必须互相等待对方释放资源。同步原则:进程之间应按照一定的顺序执行,这个顺序是由它们的依赖关系确定的。一些进程需要等待其他进程到达某个状态后才能继续执行,这被称为同步。
进程同步机制应遵循的原则包括: 互斥原则:确保在任何给定时刻,只有一个进程可以执行。这要求临界资源不能被多个进程同时访问,必须通过同步机制来保证进程之间的互斥访问。 同步原则:进程必须按照它们之间的依赖关系顺序执行。
同步机制应遵循以下基本准则: 空闲让进:当没有进程在临界区时,资源空闲,应允许请求进入临界区的进程立即使用资源,以提高资源利用率。 忙则等待:当有进程已在临界区时,其他请求进入的进程应等待,确保临界资源互斥访问。
让权等待:当进程不能进入自己的临界区时,应立即释放处理机,以免进程陷入“忙等”状态。(受惠的是其他进程)。让权等待是进程同步机制应遵循的原则之一。

