ソフトウェア
[Wikipedia|▼Menu]
ソフトウェアの階層図。上からユーザー(人間)、アプリケーションオペレーティングシステムハードウェア。通常はアプリケーションとオペレーティングシステムが「ソフトウェア」である。

ソフトウェア(: software)は、コンピューター分野でハードウェア(物理的な機械)と対比される用語で、何らかの処理を行うコンピュータ・プログラムや、さらには関連する文書などを指す[1][2]
ハードウェアの対比語としてのソフトウェア

「ソフトウェア」は「ハードウェア」の対比語であり、コンピュータの分野以外でも、物理的な装置の対比語として使われている。

DVDなどで物理的な記録メディアに対する映像(動画)や音楽等のコンテンツ、組織・都市・軍事などで施設・設備・車両などに対する規則・運用・教育などを意味する[3]

ある機能をもつソフトウェアに対して、「ソフトウェア」という言葉が接頭辞形容詞的に用いられることがある。エンコードをするソフトウェアを「ソフトウェアエンコーダ」、DVDを再生するソフトウェアを「ソフトウェアDVDプレーヤー」と呼ぶことがある。情報を処理する(DVD再生の場合は、DVDに収録されたデジタル画像データを可視化する)際に、専用のハードウェア(DVD再生機)で処理されるか、パーソナルコンピュータなどの汎用的なコンピュータ上のソフトウェアで処理されるかを区別するためである。
性質
複製コストがゼロ

ソフトウェアはコストゼロで複製できる。すなわちソフトウェア量産の限界費用は0である[4]

これはソフトウェアがデジタルデータの一種であることに由来する。デジタルデータはゼロコストで複製(コピー・アンド・ペースト)が可能であるため、ソフトウェアもゼロコストで複製できる。同じ大根を1本、車を1台、マッサージを1回追加で生産するには少なくないコストが発生するため、複製コストゼロはソフトウェアがもつ著しい特徴の1つである。
分類

ソフトウェアは、一般的にはワープロソフトなど特定の作業や業務を目的としたアプリケーションソフトウェア(応用ソフトウェア、アプリ)と、ハードウェアの管理や基本的な処理をアプリケーションソフトウェアやユーザーに提供するオペレーティングシステム (OS) などのシステムソフトウェアに分類される[5]
階層

階層に基づく分類では、ソフトウェアは機能を提供する相手の階層によって分類される。提供相手はエンドユーザー(人間)からアプリケーションソフトウェアまで様々である。
システムソフトウェア詳細は「システムソフトウェア」を参照

コンピュータのハードウェアを管理・制御するなど、コンピュータの稼動自体に必要となるソフトウェアである。典型的なシステムソフトウェアとして、オペレーティングシステム (OS) があり、様々なソフトウェア処理のプロセスに対し、CPUやメモリの割り当てを管理したり、記憶装置にデータファイルを正しく読み書きできるようにするなど、さまざまな処理を行っている。キーボードやマウスなどの入力機器からの信号を、後述のアプリケーションソフトウェアに通知したり、アプリケーションソフトウェアの要求に応じて、画面への図形や文字の表示を行うのも、オペレーティングシステムの機能である。

パーソナルコンピュータをはじめとする、家庭用のコンピュータ機器では、これらのソフトウェアは購入時にコンピュータ本体に同梱あるいはプリインストールされていることが多い。

そのほか、オペレーティングシステムでは提供されない機能のうち、さまざまなアプリケーションソフトウェアで利用される一般性のある機能を提供するものを、ミドルウェアという。
アプリケーションソフトウェア詳細は「アプリケーションソフトウェア」を参照

アプリケーションソフトウェアは、利用者の目的に応じた機能を提供するソフトウェアである。

一般事務で利用されるワープロ表計算ソフトウェアを初め、娯楽を目的としたゲームソフトや、工場の作業を自動化するファクトリーオートメーション、事務手続きや経営を管理するためのビジネスソフトウェアブラウザ、教育や医療などあらゆる目的に応じてソフトウェアが開発されている。ソフトウェアの開発自体に使われるプログラミングツール[6]もある。

これらのアプリケーションソフトウェアは、既製品をパッケージソフトウェアなどのかたちで購入するほか、利用者自身が、目的を果たすソフトウェアを開発する場合もある。大規模なものでは銀行の預貯金口座を管理する勘定系システムJRの「みどりの窓口」で使われるマルスなどのオンラインシステムを始め、販売や営業、生産などの各種業務管理システムなどの個別開発のソフト群(各企業内でのコンピュータシステム情報システム)の一部を形成する)から、小は表計算ソフトのテンプレート、ワープロソフトのマクロ、科学技術シミュレーション、グラフィックスやアニメーションのためのスクリプトなどが含まれる。電子メールフィルタなども一種のユーザー作成ソフトウェアである。ユーザーは自身の作成したこれらのソフトウェアの重要性に気づいていないことが多い。ユーザー作成ソフトウェアが購入されたアプリケーションソフトウェアとうまく統合されていると、多くのユーザーはその区別ができない。
ハードウェア

ハードウェアに基づく分類ではソフトウェアが機能するハードウェアによって分類される。ハードウェアには特定機能のみを提供する組み込みシステムから汎用計算をサポートするパーソナルコンピュータまで様々である。
組み込みシステム詳細は「組み込みシステム」を参照

特定の機能を実現するために家電製品や機械等に組み込まれるコンピュータシステムのこと。ソフトウェアは、明らかにコンピュータとわかるもの以外に、様々な機器に搭載されて稼働している。近年では、家庭用機器の高機能化に伴い、携帯電話やゲーム機をはじめ、多くの電化製品や自動車などの機能を実現するために必要不可欠なものとなっている。
コンピュータハードウェアとの関係

LSIなどを例にとると、LSIの物理的な回路そのものはハードウェアであり、その回路によって表現される処理手順はソフトウェアと考えられる。

一般的なソフトウェアは、補助記憶装置の中に機械語として記録されている。なお機械語は中央処理装置(CPU)の製品種別ごとに異なっている。ソフトウェアの利用時には補助記憶装置の内容が主記憶装置に読み込まれた後、中央処理装置において、データの移動、計算、制御フローなどの処理が実行される。これにより機械語は、コンピュータの状態を次々と変化させる。従ってソフトウェアは、ハードウェアの状態を変化させる命令列と考えられる。

記憶装置に異なる命令群を読み込んで計算を制御する概念は階差機関の一部としてチャールズ・バベッジが考案した。これら、ほとんどの近代ソフトウェアの基礎となる理論はアラン・チューリング1935年の論文 Computable numbers with an application to the Entscheidungsproblem で初めて提唱された[7]。詳細は「機械語」を参照

ソフトウェアの表現である機械語は、中央処理装置への命令となる2進数の値から構成されている。機械語の種類には、記憶装置間でのデータの移動や、条件による処理の分岐命令、演算などがある。これらを組み合わせて、1つずつ順に演算が実行される逐次処理や、条件つきで実行される処理、繰り返し実行されるループ処理などが実現される。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:29 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef