36.4. 显示调度程序策略的有效范围


您可以使用 sched_get_priority_min ()sched_get_priority_max () 函数来检查给定调度程序策略的有效优先级范围。

流程

  1. 创建 sched_get.c 源文件,并在文本编辑器中打开该文件。

    $ {EDITOR} sched_get.c
    Copy to Clipboard Toggle word wrap
  2. 在文件中输入以下内容:

    #include <stdio.h>
    #include <unistd.h>
    #include <sched.h>
    
    int main()
    {
    
      printf("Valid priority range for SCHED_OTHER: %d - %d\n",
             sched_get_priority_min(SCHED_OTHER),
             sched_get_priority_max(SCHED_OTHER));
    
      printf("Valid priority range for SCHED_FIFO: %d - %d\n",
             sched_get_priority_min(SCHED_FIFO),
             sched_get_priority_max(SCHED_FIFO));
    
      printf("Valid priority range for SCHED_RR: %d - %d\n",
             sched_get_priority_min(SCHED_RR),
             sched_get_priority_max(SCHED_RR));
      return 0;
    }
    Copy to Clipboard Toggle word wrap
    注意

    如果系统不知道指定的调度程序策略,则函数 return -1errno 被设置为 EINVAL

    注意

    SCHED_FIFOSCHED_RR 可以是 199 范围内的任意数字。但是,POSIX 无法保证遵守此范围,而可移植的程序应使用这些功能。

  3. 保存文件并退出编辑器。
  4. 编译程序。

    $ gcc sched_get.c -o msched_get
    Copy to Clipboard Toggle word wrap

sched_get 程序现已就绪,可以从保存它的目录中运行。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat