当前位置:七道奇文章资讯系统安全Linux安全
日期:2011-01-23 03:26:00  来源:本站整理

Linux调度战略及线程优先级设置[Linux安全]

赞助商链接



  本文“Linux调度战略及线程优先级设置[Linux安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

Linux内核的三种调度战略:

1,SCHED_OTHER 分时调度战略,

2,SCHED_FIFO及时调度战略,先到先服务.一旦占用cpu则一向运行.一向运行直到有更高优先级任务到达或自己放弃

3,SCHED_RR及时调度战略,时间片轮转.当进程的时间片用完,系统将重新分配时间片,并置于就绪行列尾.放在行列尾保证了全部具有相同优先级的RR任务的调度公道

Linux线程优先级设置

首先,可以通过以下两个函数来得到线程可以设置的最高和最低优先级,函数中的战略即上述三种战略的宏定义:

int sched_get_priority_max(int policy);

int sched_get_priority_min(int policy);

SCHED_OTHER是不支持优先级利用的,而SCHED_FIFO和SCHED_RR支持优先级的利用,他们辨别为1和99,数值越大优先级越高.

设置和获得优先级通过以下两个函数:

int pthread_attr_setschedparam(pthread_attr_t *attr, const struct sched_param *param);

int pthread_attr_getschedparam(const pthread_attr_t *attr, struct sched_param *param);

比方以下代码成立了一个优先级为10的线程:

struct sched_param

{

int __sched_priority; //所要设定的线程优先级

};

例:成立优先级为10的线程

pthread_attr_t attr;

struct sched_param param;

pthread_attr_init(&attr);

pthread_attr_setschedpolicy(&attr, SCHED_RR);

param.sched_priority = 10;

pthread_attr_setschedparam(&attr, ¶m);

pthread_create(xxx , &attr , xxx , xxx);

pthread_attr_destroy(&attr);   以上是“Linux调度战略及线程优先级设置[Linux安全]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • windows下的近似linux下的grep号令--findstr
  • linux下mysql链接被防火墙禁止的办理办法
  • Linux下mysql新建账号及权限设置办法
  • SUSE Linux下搭建Web服务器
  • Windows/Linux MySQL忘掉密码重置密码教程
  • Linux下Apache自动监测重启脚本(智能化程度较高)
  • linux备份 linux克隆 linux clone
  • <b>为什么 Linux不需求碎片整理</b>
  • CentOS6 yum搭建Linux+Nginx+PHP+MYSQL(LNMP)
  • Linux系统有效防备ARP攻击
  • Linux下 Memcache的安装和简单管理
  • 笔记本预装linux重装成windows系统
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .