typora/note/操作系统/操作系统控制进程切换.md
2024-12-12 10:48:55 +08:00

897 B
Raw Blame History

1. 协作方式:等待系统调用或非法操作

  • 操作系统相信进程会合理运行
  • 运行时间长的进程被假定为会定期释放CPU以便操作系统可以运行其他进程
  • 大多数进程通过系统调用将CPU还给操作系统例如打开文件创建一个新的进程
  • 如果进程尝试非法操作也会将CPU还给操作系统比如除0或者尝试访问无法访问的内存

2. 非协作方式:时钟中断

时钟中断

TODO

  • 在操作系统启动时,时钟也会跟随启动
  • 可以理解为每隔一段时间产生一次时钟中断
  • 运行的进程在接收到中断信号时会停止
  • 操作系统预先配置好的中断程序会运行

3. 保存和恢复上下文

  • 保存当前进程的通用寄存器,程序计数器,以及进程的内核栈指针
  • 恢复或准备即将执行的进程的寄存器