XINU
getprio.c
Go to the documentation of this file.
1 
5 #include <xinu.h>
6 
18 {
19  intmask mask; /* Saved interrupt mask */
20  uint32 prio; /* Priority to return */
21 
22  mask = disable();
23  if (isbadpid(pid))
24  {
25  restore(mask);
26  return SYSERR;
27  }
28  prio = proctab[pid].prprio;
29  restore(mask);
30  return prio;
31 }
void restore(intmask)
syscall getprio(pid32 pid)
プロセスのスケジューリング優先度を取得する。
Definition: getprio.c:17
全てのシステムヘッダファイルをインクルードする。
#define isbadpid(x)
プロセスIDを検証する。割り込みが無効になっている事を想定している。
Definition: process.h:71
#define SYSERR
処理が失敗した場合
Definition: kernel.h:79
pri16 prprio
プロセスのスケジューリング優先度。
Definition: process.h:90
uint32 intmask
保存された割り込みマスク
Definition: kernel.h:38
struct procent proctab[]
プロセステーブル。
Definition: initialize.c:23
int32 syscall
システムコール関数 返り値の型
Definition: kernel.h:47
int32 pid32
プロセスID
Definition: kernel.h:26
unsigned int uint32
符号なし32ビット整数(unsigned int)
Definition: kernel.h:15
intmask disable(void)
割り込み禁止(intr.Sに定義がある)