上一任务的CPU上下文如何保存下来?

CPU上下文会被保存在进程的内核空间(kernel space)上。OS在给每个进程分配虚拟内存空间时,会分配一个内核空间,这部分内存只能由内核代码访问。OS在切换CPU上下文前,会先将当前CPU的通用寄存器、PC等进程现场信息保存在进程的内核空间上,待下次切换时,再取出重新装载到CPU上,以恢复任务的运行。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 什么是上下文切换 上下文切换在多任务操作系统中是一个必须的特性。多任务操作系统是指多个进程运行在一个 CPU 中互...
    LMojito阅读 1,435评论 0 0
  • 栈空间 用户态函数栈主要用于用户态的函数调用image.png 内核栈Linux 给每个 task 都分配了内核栈...
    kar_joe阅读 666评论 0 0
  • 参考文章:https://www.cnblogs.com/winclpt/articles/10873024.ht...
    testerPM阅读 453评论 0 0
  • Linux 是一个多任务操作系统,它支持远大于 CPU 数量的任务同时运行。当然,这些任务实际上并不是真的在同时运...
    taj3991阅读 327评论 0 0
  • Linux 是一个多任务操作系统,它支持远大于 CPU 数量的任务同时运行。当然,这些任务实际上并不是真的在同时运...
    taj3991阅读 316评论 0 0