#define PR_READY
プロセスが準備完了(READY)状態。
void ctxsw(void *, void *)
コンテキストスイッチを行う(ctxsw.S に定義がある)
bool8 attempt
延期中に再スケジューリングが実行されたかどうか
#define firstkey(q)
リスト中の最初のプロセスのキーを返す。
int32 status
ステータスを意味する返り値の型(OK/SYSERR)
pid32 dequeue(qid16)
プロセスキューテーブルからキューを削除し、リスト先頭のプロセスIDを返す。
qid16 readylist
READY状態のプロセスリストに対するグローバルID.
pri16 prprio
プロセスのスケジューリング優先度。
#define PR_CURR
プロセスが現在動作中。
#define FALSE
Boolean False(0)
#define TRUE
Boolean True(1)
#define DEFER_STOP
遅延リスケジューリングの停止
#define QUANTUM
ミリ秒単位のタイムスライス
#define DEFER_START
遅延リスケジューリングの開始
status resched_cntl(int32 defer)
再スケジューリングを延期させるか、もしくは許可させるかを制御する。
int int32
符号あり32ビット整数(int)
遅延リスケジューリングに関連する項目を集約した構造体
uint16 prstate
プロセス状態(PR_CURR, ..., etc)。
struct procent proctab[]
プロセステーブル。
struct defer Defer
遅延リスケジューリングに関連する項目を集約した構造体
int32 ndefers
未処理の延期プロセスの数
uint32 preempt
プリエンプションカウンタ
status insert(pid32, qid16, int32)
優先度に基づいて、キューにプロセスを挿入する。
void resched(void)
最優先の適切なプロセスにCPU実行権を渡す。
char * prstkptr
保存されたスタックポインタ。