ハードウェアのコントロールを中心とする基本機能を一式備えた特殊な
ソフトウェアこそがOSの実体である、と説明しました。では、それらの
基本機能をユーザソフトウェアから実際に利用するにはどうすればよいの
でしょうか。この目的に応えるのが「システムコール」と呼ばれる手法です。
CPUは、ユーザソフトウェアの実行中にint命令を実行すると、そのとき
実行中だった処理を一時中断し、別のプログラムを呼び出すことができます。
これを利用して、カーネルの基本機能をint命令で呼び出せるようにしたのが
「システムコール」です。これにより、ユーザソフトウェアはいつでも必要な
ときにカーネルの基本機能を利用できるというわけです。
ユーザソフトウェアですべてを処理せず、カーネルの基本機能をわざわざ
システムコール経由で利用する仕組みになっているのはなぜか。
1.プログラミングが容易になる。
ハードウェアの詳細な取り扱い方法がわからなくても、システムコール
を使うだけで済みます。プログラム自体も短く簡単になります。
2.安全性が高い
システムコールは、特権的な命令を使える「カーネルモード」で実行
されます。ユーザソフトウェアは勝手にこのモードを使えないため、
誤って特権的な命令を実行してしまう恐れがありません。
3.ソフトウェアを簡単に「移植」できる。
異なるハードウェア環境であっても、同じシステムコールを装備した
OSさえ稼動していれば、同じユーザソフトウェアをそのままコンパイル
して実行できます。
■2008/10/12(日)■
■2008/10/19(日)■
にLinux初心者のための講座
(勉強会)を開催します。
詳細は下記リンクをご覧ください
■2008/10/13(祝)■
Linux+ネットワークの講座(勉強会)です。
詳細は下記リンクをご覧ください
初心者向けのLinux
コミュニティ型のWebサイトです。
※会員制になります。
アクセス先は下記リンクになります。
Linuxとネットワークの備忘録です。
アクセス先は下記リンクになります。
Linuxな日々、会社での出来事
(サーバ、ネットワーク)
について語ります。
アクセス先は下記リンクになります。
Linux初心者の方を対象に解説していきます。Linuxマスターを目指しましょう!!
登録先は下記リンクになります。
2008/10/10 12:00 現在
残り3個!!
【りなっくま先生の
Linux超入門講座】