Linux CPU context switching performance monitoring
发布时间
阅读量:
阅读量
目录
- 上下文切换机制
-
- 1 系统调用引发的上下文切换过程
- 2 进程间切换时的上下文转换
- 3 线程切换过程中涉及的上下文迁移
- 4 中断处理时发生的上下文切换操作
-
vmstat工具
-
性能测试工具sysbench
-
上下文切换
简而言之,这一过程涉及将前一任务所使用的寄存器与程序计数器的相关信息进行存储,随后读取并配置下一任务所需的寄存器与程序计数器等内容,最终实现对新任务地址的跳转与执行。
CPU在进行上下文切换时,主要存在以下几种类型:
- 系统调用引发的上下文切换
- 进程间切换所涉及的上下文转换
- 线程层面的上下文切换
- 中断处理过程中发生的上下文切换
系统调用与上下文切换机制
系统调用能够使进程从用户态进入内核态,此过程中涉及用户空间与内核空间之间的上下文切换。同时,在系统调用完成之后还需返回到用户态,因此整个过程共发生两次上下文切换。值得注意的是,这一过程并未引发进程的切换,通常被称作“特权模式切换”。
2 进程上下文切换
进程的调度工作由操作系统内核负责执行,因此在进行进程上下文切换时,仅发生在内核空间。此时需要切换的资源涵盖了用户空间中的虚拟内存、栈以及全局变量等要素,同时也包括内核空间中的堆栈、寄存器等资源。
虚拟内存的切换过
全部评论 (0)
还没有任何评论哟~
