このページを編集する際は、編集に関する方針に従ってください。

概要

  • linux2.6/kernel/sched.cにて定義
  • 引数で渡されたタスクに、スケジューラポリシー、スケジューラ優先度を設定する

引数

  • p--タスク
  • policy--スケジューリングポリシー
    スケジューリングポリシー
    SCHED_NORMAL0
    SCHED_FIFO1
    SCHED_RR2
  • prio--スケジューラの優先度

実装

/* Actually do priority change: must hold rq lock. */

static void __setscheduler(struct task_struct *p, int policy, int prio) {

	BUG_ON(p->array);
	p->policy = policy;
	p->rt_priority = prio;
  • リアルタイム優先度rt_priorityに優先度prioを設定
	if (policy != SCHED_NORMAL)
		p->prio = MAX_USER_RT_PRIO-1 - p->rt_priority;
  • MAX_USER_RT_PRIOは100と定義
	else
		p->prio = p->static_prio;
  • 固定優先度static_prioを優先度prioに設定

}

呼出元


履歴

  • 作者:ひら
  • 日付:2007/1/31
  • 対象:2.6.10
    更新日更新者更新内容

コメント/タグ?



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2009-11-24 (火) 07:10:28 (3129d)