区分操作系统中的进程切换和模式切换
operating systemhardwaresoftware & coding更新于 2026/2/8 13:22:17
进程是指正在执行的程序,也是系统中要实现的基本工作单元的实体。
进程切换
它的定义是处理器从一个线程/进程切换到另一个线程/进程。它会保存 CPU 寄存器和指令指针的内容。
对于新任务,寄存器和指令指针会被加载到处理器中,然后新进程的执行才会开始/恢复。
旧程序将不再继续执行,但该进程的状态会保存在内存中,因为内核会决定何时再次执行它。这个概念类似于多任务处理,但实际上,CPU 上一次只能运行一个进程。
上下文切换可以通过硬件或软件实现。硬件中断来自键盘、鼠标或系统计时器等设备,这会导致代码开始执行中断代码。软件切换是由于内核手动执行任务切换而发生的。
这是调度程序使用上下文切换的方式。
特点 −
- 它会影响性能
- 它会增加 CPU 处理器的负载。
- 在这里,每个数据包都由路由器或交换机处理器检查。
- 在每个数据包上执行负载平衡。
- 通过一个命令轻松启用。
模式切换
当 CPU 改变权限级别时使用模式切换。内核以比标准用户任务更高的权限工作。
为了访问由内核控制的用户任务,必须进行模式切换。
在模式切换期间,当前正在执行的进程不会改变。处理器使用这些模式来保护操作系统免受不当行为或恶意程序的侵害,并控制对 RAM、I/O 设备等的并发访问。
必须先进行模式切换,才能进行软件上下文切换。只有内核才能触发上下文切换。
注意 −一般保护错误的概念是,用户应用程序试图执行不允许执行的操作,例如访问其无法访问的地址空间的某些部分。
模式切换步骤 −
-
执行程序时,我们有两种模式:用户模式和内核模式。
-
因此,当程序在用户级别执行时,必须有一个用户域/模式。
-
当内核模式负责程序执行时,就会有内核模式。
-
现在,当进程急需系统资源时,就会发生模式切换。
-
它借助系统调用接口或使用中断来实现。
-
此后,可以从用户模式调用内核函数并管理系统调用。