视频字幕
操作系统的进程调度是计算机系统中的重要组成部分。它负责决定哪个进程获得CPU的使用权。调度器从就绪队列中选择合适的进程,并将CPU分配给它执行。这个过程涉及多种调度算法,如先来先服务、短作业优先等。
先来先服务调度算法按照作业到达的先后顺序进行调度。在这个例子中,作业1最先到达,运行24个时间单位。作业2在时间1到达,但要等作业1完成后才能执行。作业3在时间2到达,同样需要等待前面的作业完成。这种算法简单易实现,但可能导致短作业等待时间过长。
死锁是多个进程因竞争资源而造成的一种僵局。死锁的产生需要同时满足四个必要条件。互斥条件指资源在同一时刻只能被一个进程使用。占有且申请条件是指进程在持有资源的同时还要申请新的资源。不可强占条件表示资源不能被强制性地从进程中剥夺。循环等待条件是指存在一个进程等待链,形成环路。只有四个条件同时满足,系统才会发生死锁。
信号量是操作系统中实现进程同步和互斥的重要机制。信号量S的值表示可用资源的数量。P操作用于申请资源,会将信号量减1,如果结果小于0,进程就会阻塞等待。V操作用于释放资源,将信号量加1,如果有等待的进程就会唤醒它们。通过P、V操作的配合使用,可以有效解决进程间的同步和互斥问题。
这道题考查的是记录型信号量P操作的定义。P操作首先将信号量减1,然后判断结果。如果减1后的值小于0,说明没有可用资源,进程必须阻塞等待。例如,当信号量为1时执行P操作,结果为0,进程可以继续。但当信号量为0时再执行P操作,结果为负1,此时进程就会阻塞。因此答案是B,当信号量的值小于0时,执行P操作的进程变为阻塞状态。