「システムコール」の版間の差分
提供: FreeBSD入門
(ページの作成:「<!-- vim: fileencoding=utf-8 filetype=mediawiki --> [[{{PAGENAME}}]] (system call)とは、カーネル (OS) の機能を呼び出すための機構です。 ...」) |
|||
行1: | 行1: | ||
− | + | [[システムコール]] (system call)とは、[[カーネル]] (OS) の機能を呼び出すための機構です。 | |
− | + | ||
− | + | ||
− | [[ | + | |
'''読み方''' | '''読み方''' | ||
− | ;[[ | + | ;[[システムコール]]: しすてむこーる |
;system call : しすてむこーる | ;system call : しすてむこーる | ||
行12: | 行9: | ||
== 概要 == | == 概要 == | ||
+ | [[システムコール]] (system call)とは、[[カーネル]] (OS) の機能を呼び出すための機構です。 | ||
− | + | CPU は、いくつかのレベルを持っており、ユーザーモードとスーパーバイザーモード と呼ばれるモードがあります。 | |
− | + | ||
− | + | ||
[[システムコール]] は、ソフトウェア割り込みによって実行されます。 | [[システムコール]] は、ソフトウェア割り込みによって実行されます。 | ||
通常のアプリケーション・プログラムからアクセスできない保護されたメモリ領域にアクセスすることなどができます。 | 通常のアプリケーション・プログラムからアクセスできない保護されたメモリ領域にアクセスすることなどができます。 | ||
− | + | libc で提供される fopen や fputs などの関数は、その関数内で [[システムコール]] を呼び出しています。 | |
fopen では、 open システムコール、 fputs では、write システムコールです。 | fopen では、 open システムコール、 fputs では、write システムコールです。 | ||
システムコールの呼び出しには、オーバーヘッドがあります。 | システムコールの呼び出しには、オーバーヘッドがあります。 | ||
− | |||
== 関連項目 == | == 関連項目 == | ||
− | |||
* [[カーネル]] | * [[カーネル]] | ||
+ | <!-- vim: fileencoding=utf-8 filetype=mediawiki | ||
+ | --> |
2015年9月27日 (日) 17:30時点における最新版
システムコール (system call)とは、カーネル (OS) の機能を呼び出すための機構です。
読み方
- システムコール
- しすてむこーる
- system call
- しすてむこーる
概要
システムコール (system call)とは、カーネル (OS) の機能を呼び出すための機構です。
CPU は、いくつかのレベルを持っており、ユーザーモードとスーパーバイザーモード と呼ばれるモードがあります。
システムコール は、ソフトウェア割り込みによって実行されます。 通常のアプリケーション・プログラムからアクセスできない保護されたメモリ領域にアクセスすることなどができます。
libc で提供される fopen や fputs などの関数は、その関数内で システムコール を呼び出しています。 fopen では、 open システムコール、 fputs では、write システムコールです。
システムコールの呼び出しには、オーバーヘッドがあります。