GETPRIORITY

Section: System Calls (2)
索引 jman

BSD mandoc
 

索引

名称

getpriority setpriority - プログラムスケジュール優先順位を取得 / 設定する  

索引

ライブラリ

Lb libc  

索引

書式

In sys/time.h In sys/resource.h Ft int Fn getpriority int which int who Ft int Fn setpriority int which int who int prio  

索引

解説

Fa which および Fa who で指示されるプロセス、プロセスグループ、 またはユーザのスケジュール優先順位は Fn getpriority システムコールで取得され、 Fn setpriority システムコールで設定されます。 Fa which 引数は、 PRIO_PROCESS PRIO_PGRP または PRIO_USER のどれかであり、 Fa who は Fa which に関連して解釈されます ( PRIO_PROCESS の場合はプロセス識別子、 PRIO_PGRP の場合はプロセスグループ識別子、および PRIO_USER の場合はユーザ ID)。 Fa who の値が 0 であるのは、 現在のプロセス、プロセスグループ、またはユーザを表します。 Fa prio 引数は -20 から 20 の範囲の値です。 デフォルトの優先順位は 0 です。 優先順位が低いと、スケジュール調整にはより都合がよくなります。

Fn getpriority システムコールは、指定のプロセスのいずれかが享受する最高の優先順位を 返してきます (最も小さい数値です)。 Fn setpriority システムコールは、指定されたすべてのプロセスの優先順位を指定の値に設定します。 スーパユーザだけが優先順位を低くできます。  

索引

戻り値

Fn getpriority は処理を正しく完了しても値 -1 を返すことがあるので、 呼び出しの前に外部変数 errno をクリアしてから、後にこれをチェックして -1 がエラーであるか、 または正当な値であるか判定する必要があります。

Rv -std setpriority  

索引

エラー

Fn getpriority と Fn setpriority システムコールは次の場合に失敗します:

Bq Er ESRCH
指定された Fa which と Fa who の値を使用しているプロセスが見つかりませんでした。
Bq Er EINVAL
Fa which 引数が PRIO_PROCESS PRIO_PGRP または PRIO_USER のどれでもありませんでした。

上記のエラーだけでなく、 Fn setpriority は次の場合に失敗します:

Bq Er EPERM
プロセスは検出されたものの、その実効 ID も実ユーザ ID の どちらも、呼び出し側の実効ユーザ ID に一致しませんでした。
Bq Er EACCES
スーパユーザでないものがプロセスの優先順位を下げようとしました。

 

索引

関連項目

nice(1), fork(2), renice(8)  

索引

歴史

Fn getpriority システムコールは BSD 4.2 ではじめて登場しました。


 

索引

Index

名称
ライブラリ
書式
解説
戻り値
エラー
関連項目
歴史

jman



Time: 07:06:26 GMT, January 12, 2009