web-dev-qa-db-ja.com

マニュアルページ:セクション2に新しいシステムコールを配置するタイミングとセクション3に配置するタイミング

大学での演習では、うるう秒を適切に計算するシステムコールutctimeを使用してMinix(v2)を拡張するように求められます(Minixのtimeの実装では実行されません)。

新しいシステムコールを作成し、<time.h>に追加されたこのシステムコールをラップする新しいライブラリ関数を作成しました。

ここで、utctimeのmanページを追加します。ただし、timeには、セクション2(システムコール)とセクション3(ライブラリコール)の両方のマンページがあります。

これらの両方にutctimeを追加する必要がありますか?または、標準化されたCライブラリ呼び出しではないため、2だけに?

2
Qqwy

セクション2をお勧めします。たとえば、openシステムコール(実際には、セクション2でのみ説明されているopenシステムコールのCライブラリ関数ラッパー)について考えてみます。

2
Andy Dalton

関数がユーザースペースCライブラリではなくカーネル自体に存在する場合は、セクション2に配置します。

セクション3は、libc関数だけでなく、カーネルの一部ではない低レベルのオペレーティングシステムサブルーチンを提供する他のライブラリにすることもできます。たとえば、PAM機能のマニュアルページはセクション3に保存されています。

この場合、カーネルシステムコールとライブラリ関数がある場合は、システムコールのマニュアルページをセクション2に、ライブラリ関数のマニュアルページをセクション3に配置します。

1
theferrit32