システムコールの数を見つけるには?

システムコールの数を見つけるには?

システムコール番号はマシンごとに異なりますか?プロセッサによって異なりますか? i586とi386の間に違いがあるという意味ですか?

マシンごとに異なる場合は、マシン番号をどのように知ることができますか?

一般的な場所は/usr/include/asm*ですが、そのフォルダは存在しません。

ベストアンサー1

ほとんどのオペレーティングシステムでは、番号は次のとおりです。/usr/include/sys/syscall.h

通常は電話をかけることができますsyscall(number, rest of parameters)

一部の「システムコール」はsyscalls.hにはないかもしれません。これは、複数のシステムコールインターフェイスが、一連のコールからコールを選択するためにサブ番号を使用する単一のシステムコールとして実装されるためです。

システムコール番号は、特定のオペレーティングシステムの特定のバージョンにのみ有効です。

Solaris には安定したシステムコールインタフェースはありませんが、libc の上に安定したインタフェースがあります。 POSIX は意図的にシステムコールとライブラリ機能を区別しないため、これは完全に POSIX と互換性があります。

おすすめ記事