### 1. 协作方式:等待系统调用或非法操作 - 操作系统相信进程会合理运行 - 运行时间长的进程被假定为会定期释放CPU,以便操作系统可以运行其他进程 - 大多数进程通过系统调用,将CPU还给操作系统,例如打开文件,创建一个新的进程 - 如果进程尝试非法操作,也会将CPU还给操作系统,比如除0或者尝试访问无法访问的内存 ### 2. 非协作方式:时钟中断 > 时钟中断 > > TODO - 在操作系统启动时,时钟也会跟随启动 - 可以理解为每隔一段时间产生一次时钟中断 - 运行的进程在接收到中断信号时会停止 - 操作系统预先配置好的中断程序会运行 ### 3. 保存和恢复上下文 - 保存当前进程的通用寄存器,程序计数器,以及进程的内核栈指针 - 恢复或准备即将执行的进程的寄存器