システムソフトウェア

システムソフトウェアの最新ニュースをまとめて検索!

システムソフトウェア: System Software)ないし基本ソフトウェアは、コンピュータハードウェアを管理・制御するなど、コンピュータの稼動や使用そのものをサポートするためのソフトウェア全般を指す用語である。

最も明らかな例としてオペレーティングシステム(OS)がある。他に、オペレーティングシステムの基本機能を拡張する為のソフトウェア(ミドルウェア)や、コンパイラインタプリタなどの言語処理系のソフトウェア、更にはROMなどの集積回路に格納されたファームウェアも含む場合がある。

対義語はアプリケーションソフトウェア(アプリケーション、あるいは一般に言うソフト)である。

なお、例えばオペレーティングシステムに付属する時計やゲームなどは、製品パッケージ上は「オペレーティングシステム」の一部だが、技術的・構造的にはアプリケーションソフトウェアであり、オペレーティングシステム(システムソフトウェア、基本ソフトウェア)では無い。

目次

[編集] システムプログラミング

システムプログラミング: System programming)は、システムソフトウェアのプログラミングを指す。アプリケーションソフトウェアのプログラミングとの主な違いは、ハードウェアとの関わりが大きい点である。他にも以下のような特徴がある。

システムプログラミングはアプリケーションプログラミングとかなり異なるため、プログラマはそれぞれの領域に特化する傾向がある。

システムプログラミングでは、プログラミングに利用できる道具が制限されることが多い。ガベージコレクションは一般的ではないし、デバッグが困難な場合もある。ランタイムライブラリはあったとしても貧弱で、あまりエラーチェックをしない。このような制限があるため、モニタリングやデータロギングといった技法が使われることが多い。オペレーティングシステム(特にカーネル)はそのようなロギングを多用している。

古くは、システムプログラマは例外なくアセンブリ言語を使っていた。1960年代後半に高級言語によるハードウェアサポートの試みにより、BLISSBCPLC言語などが使われるようになり、UNIXの普及もあって1980年代にはそれが一般化した。Mac OS XのI/O Kitドライバなどでは、Embedded C++ が使われることもある。

オペレーティングシステムやネットワーク関連の実装ではシステムプログラミングが必要となる(例えば、仮想記憶を実装する場合やデバイスドライバを実装する場合など)。

[編集] 関連項目

[編集] 脚注

[編集] 外部リンク

最終更新 2009年11月15日 (日) 04:38 (日時は個人設定で未設定ならばUTC)。
【システムソフトウェア】変更履歴

ご利用上の注意