死锁 Q&A
1. 试举例说明竞争不可抢占资源所引起的死锁。不可抢占资源:也就是在p1进程占有使用的时候,p2进程不能去抢。 在两个进程都在运行中,且在进行下一步的时候操作所需的不可抢占资源都被对方正在占有。进程此时没有办法进行下一步结束释放资源,也不能自己终止,就进入了无限等待的状态,此为死锁。
It all returns to nothing.
1. 试举例说明竞争不可抢占资源所引起的死锁。不可抢占资源:也就是在p1进程占有使用的时候,p2进程不能去抢。 在两个进程都在运行中,且在进行下一步的时候操作所需的不可抢占资源都被对方正在占有。进程此时没有办法进行下一步结束释放资源,也不能自己终止,就进入了无限等待的状态,此为死锁。
计算机是一个不断进行“取指-执行”的自动化设备,内存的使用也离不开这个“取指-执行”的基本过程。现在有一条指令 mov %eax,[300],如何“取指-执行”这条指令呢?我们将自己想象成一台计算机认真梳理整个过程: 这条指令需要放在内存中; 用 PC 指针指向这条指令; 将这条指令取到 CPU 的IR寄存器中; 解释这条指令发现要从300这个内存单元中取出一个32位二进制数赋给EAX寄存器;
1. 高级调度与低级调度的主要任务是什么?为什么要引入中级调度? 高级调度又称为作业调度。它是批处理系统中使用的一种调度。其主要任务是按照某种算法从外存的后备队列上选择一个或多个作业调入内存,并为其创建进程、分配必要的资源,然后再将所创建的进程控制块插入就绪队列中。
1. 什么是前趋图?为什么要引入前趋图?前驱图是一个有向无环图,用于描述进程之间执行的先后顺序。图中的每个结点可用来表示一个进程或程序段,节点间的有向边则表示两个结点之间存在的偏序或前驱关系。 原因:为了更好地描述进程地顺序和并发执行情况。