开发者社区> 问答> 正文

我要对我的Linux应用程序调优,我想了解一下上下文切换的基本概念?

我要对我的Linux应用程序调优,我想了解一下上下文切换的基本概念?

展开
收起
我是小美女 2021-11-01 13:55:33 736 0
2 条回答
写回答
取消 提交回答
  • 上下文切换 1.线程上下文切换,在同一进程中,运行其它线程 2. 进程上下文切换,在同一系统中,运行其它进程 3. 中断上下文切换,为了响应硬件做出的中断切换,例如键盘事件,网卡接收网络数据包

    2021-11-03 07:58:25
    赞同 展开评论 打赏
  • 网络规划设计师、敏捷专家、CISP、ITSS服务经理、ACA全科目、ACP4项、ACE、CBP、CDSP、CZTP等。拥有 PRINCE2 Foundation/Practitioner、CCSK、ITIL、ISO27001、PMP等多项国际认证。 专利5+、期刊10+、知识产权师。核心期刊审稿人。

    您好,在进程运行过程中,进程的运行信息被保存于处理器的寄存器和它的缓存中。正在执行的进程加载到寄存器中的数据集被称为上下文。为了切换进程,运行中进程的上下文将会被保存,接下来的运行进程的上下文将被被恢复到寄存器中。进程描述和内核模式堆栈的区域将会用来保存上下文。这个切换被称为上下文切换。过多的上下文切换是不受欢迎的,因为处理器每次都必须清空刷新寄存器和缓存,为新的进程制造空间。它可能会引起性能问题。

    如图,就描述了上下文切换过程。 image.png

    2021-11-01 14:09:41
    赞同 1 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Alibaba Cloud Linux 3 发布 立即下载
ECS系统指南之Linux系统诊断 立即下载
ECS运维指南 之 Linux系统诊断 立即下载