我对两个进程之间的进程切换感到困惑。使用fork创建新进程时,适用于在进程之间切换的一般规则是什么。是仅当一个进程进入空闲状态时?我几乎没有怀疑
答案 0 :(得分:2)
大多数preemptive调度程序将高度简化,为每个进程分配一定的最长时间。
当该时间到期时(例如10毫秒),它将重新安排,以便其他进程获得一些CPU。
如果在进程遇到某些其他等待条件(例如执行I / O)之前计时器没有到期,那么它将重新安排。
答案 1 :(得分:0)
当量子到期时发生上下文切换
当资源。
当系统调用触发时==>不确定。 re是发生中断切换
当具有较高优先级的另一个进程/线程进入就绪状态时,触发上下文切换。
当您的线程凭借i / o进入阻塞状态或等待任何其他线程时,共享被锁定