【linux软件基础知识】Linux 中的普通进程的调度机制

活动集Active processes和过期集Expired processes

为了实现静态优先级较低的进程没有完全锁定并有机会运行,Linux 调度程序维护两个不相交的可运行进程集:活动集和过期集。 此机制是完全公平调度程序 (CFS) 算法的一部分。

以下是这两组的工作原理:

活动集Active processes:活动集包含当前正在运行的一个或多个进程。 这些进程仍在其时间量内,并且尚未消耗全部分配的 CPU 时间。
过期集Expired processes :过期集由已耗尽其时间量的进程组成。 这些进程已用完为其分配的 CPU 时间片,需要重新评估以进行调度。
当活动集中的进程完成其时间量时,它将被移至过期集中。 然后,Linux 调度程序根据优先级和公平标准从过期的进程集中选择下一个要运行的进程。 选择过期集中优先级最高的进程来运行下一个,以确保较高优先级的进程有机会运行。 然后调度程序将所选进程从过期集交换到活动集,然后继续循环。

此机制允许仍有剩余时间量的较低优先级进程抢占已耗尽其时间片的较高优先级进程。 它通过为较低优先级进程提供运行机会来防止饥饿,即使较高优先级进程仍然可以运行。

Linux 调度程序的目标是在考虑进程优先级的同时保持进程之间的公平性并平衡 CPU 利用率。 通过管理活动集和过期集,调度程序可确保优先级较低的进程不会完全挨饿,并且有机会在 CPU 上执行。

Linux 中的调度机制

Linux 中的调度机制更加复杂,尤其是在处理交互进程并确保其响应能力时。

相关推荐

  1. linux软件基础知识Linux 实时进程

    2024-05-11 03:10:03       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-11 03:10:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-11 03:10:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-05-11 03:10:03       87 阅读
  4. Python语言-面向对象

    2024-05-11 03:10:03       96 阅读

热门阅读

  1. QT--5

    QT--5

    2024-05-11 03:10:03      24 阅读
  2. 网络面试题目

    2024-05-11 03:10:03       29 阅读
  3. MySQL数据库——23.元数据

    2024-05-11 03:10:03       29 阅读
  4. android 获取唯一设备id

    2024-05-11 03:10:03       29 阅读
  5. k8s deployment

    2024-05-11 03:10:03       29 阅读
  6. typescript 命名空间、装饰器

    2024-05-11 03:10:03       36 阅读
  7. warm-up结合CosineAnnealingLR

    2024-05-11 03:10:03       37 阅读
  8. Hive优化(2)——join优化

    2024-05-11 03:10:03       43 阅读
  9. 序列练习.

    2024-05-11 03:10:03       31 阅读