----
本書は、コンピュータのハードウェアとユーザーの間のインターフェースとして機能するオペレーティング・システム(Operating system; OS)を対象としている。オペレーティング・システムは、コンピュータの限られた資源の共有や活動の管理・調整を担っている。
オペレーティング・システムは通常、カーネルとユーザーランドに分離される。
カーネル
ソフトウェアがハードウェアと相互作用するための境界線を提供する。
カーネルはハードウェアを抽象化し、多くのソフトウェアが全く異なるハードウェア上で同じように動作することを可能にする。
カーネルは、ユーザーランドがカーネルと対話できるようにするためのシステムコールを提供する。
ファイルシステム（常にではありないが、通常は）、デバイス、プロセスの制御を含む多くのことを処理する。
ユーザーランド
カーネル以外のすべてのものとして存在する。
端末を含め、ユーザーが作成するすべてのプロセスはユーザーランドに属する。
プログラムを表示するGUI(Graphical User Interface)もユーザーランドに属する。
ウェブサーバーなどのデーモンもユーザーランドに属する。
一般的に用いられているOSには、以下のような種類がある。
スマートフォン用のOSとして、以下、Android（アンドロイド）やiOS（アイ オーエス）などがある。
大まかには上記のとおりとなる。以下に、それぞれの特徴を記す。基本的な使い方など踏み込んだ話題は、Windows については『Windows入門』を、ｍacOSについては『MacOS入門』を、Unixについては『Unix/Linux入門』を、それぞれ参照のこと。
『Microsoft Windows』（ウィンドウズ）は、米Microsoft社（マイクロソフト社）が販売する商用OSである。Windowsを使用できるハードウェアは、かつては「PC/AT互換機」と言われたが、現在ではほぼすべての市販のパソコンでWindowsは動作する。Windowsは、企業から一般家庭まで、多くのパソコンのOSとして用いられており、事実上の世界標準である。CPUアーキテクチャはx86およびamd64をサポートするほかARMアーキテクチャをサポートしたエディションもある。
Windowsは、歴史的にMS-DOS（エムエス ドス）上のアドオンソフトウェアとしてスタートし、1985年以降、Windows1.0からWindows 3.2までこの状態は続いたが、1993年にMS-DOSを必要としない32ビットOSであるWindows NT 3.1がリリースされた。その後の1995年、16ビットコードと32ビットコードが混在したWindows95がリリースされ、爆発的に普及した。その後も、複数回にわたってバージョンアップ版が提供された。その変遷は以下の通りである。
GUI（グラフィカルユーザーインターフェイス）を標準ユーザーインターフェイスとするOSである。
Windows Vista からが64ビット版と32ビット版が並売されていた。
Windows 7 は長く人気があり、後継の Windows 8/8.1 のシェアは Windows 7 を一度も超えることがなかった。
Windows 8からは大きなボタンのスタートメニューにするなどタブレット型のPCを意識したインターフェースの製品となっている。
Windows 10ではスタートメニューが復活した。
Windows 11では、32ビット版は廃止され、IE11が無効化された。
米Apple社（アップル社）が開発・販売するPC向けのOS。対応するプラットフォームはMac OS X以前では最初はMC68000後にPowerPCのみである。Mac OS Xで初めてPC/AT互換機、x86（Intel製CPUのみ）プラットフォームへの対応がなされたが、Appleが販売するコンピュータ以外のPC/AT互換機では動作しない。ユーザー主体の操作性を重視している。その登場はWindowsよりも早く、1984年の最初のシステムからすでにGUI（文字だけでなく、アイコンなどの画像や映像などで視覚的に分かりやすくした操作環境）を搭載していた。2001年にMac OS Xがリリースされたが、これは従来のMac OSとは仕様が大きく異なるものとなっている。
一般ビジネス用としてのシェアはWindowsに全く及ばないが、グラフィックデザイン、音楽、映画など、芸術・コンテンツ産業といった、いわゆる「クリエイティブ」な分野では一定の支持を得ており、また家庭用としても根強いユーザーを確保している。2006年、プロセッサのIntel製への全面移行に伴い、起動時にMac OS XとWindowsを選択したりあるいはMac OS XとWindowsを同時に使用できる機能（ブートキャンプ）が実用化、Windows専用PCからの乗り換えを検討するユーザーが増え始めた。また、Mac OS XはBSD系Unix（後述）ベースになっており、その中核部分（カーネル）はオープンソースOSであるFreeBSDをもとにして開発されている（Mac OSは、オープンソースの Darwin と、非オープンソースのコンポーネントから構成されている）。 そのため、Unix系のコマンドがマックOS上でも使用できる場合も多く、このようなUnixとマックとの親和性の高さから、Unix系 OSのプログラマーが、Mac OS X環境でUnixアプリケーションのプログラムを開発する例も見られる。
大まかに次のような変化をたどる。
※ Mac OS X Server 1.0 があるが、この製品は Mac OS X とは異なるコードベースの製品で互換性はなく、他方 Mac OS X Server 10.x は Mac OS X と互換性があった。
2001年登場の Mac OS 9.2.2（コードネーム：LU1） を最後に、登場以来の系統（上記の Classic 系）の Mac OS の開発は終了した。
Mac OS X は当初から多言語（英語やフランス語、日本語、中国語など）に対応しており、Classic Mac OS や Windows のような「xx語版」という区別はない。Mac OS X 10.4.5 より、それまでの PowerPC 版に加えて Intel プロセッサ版が登場した。
2020年にリリースされた macOS 11.0 Big Sur からは、Apple内製のM1プロセッサーがサポートするプラットホームに加わった。
1960年代,米AT&T社（エーティー アンド ティー社）のベル研究所で誕生した。しかし近年はUnixそのものが使われることは殆どなく、Unixシステムをベースとして様々な改良を施したOSがUnix系OSとして利用されている。主なものとしては、BSD系Unix, HP-UXやSolarisなど。
Unixの特徴：
これらに加え、カリフォルニア大学バークレー本校で開発されたBSDによる追加された機能
がAT&Tにもバックポートされ普及した。
かつてはミニコンやスーパーミニコンでの利用が中心であったが、その後、ワークステーションやサーバーでの採用が増加し、386BSD の登場でPCでの利用にも道がひらけたが、「UNIXの権利を侵害している」と主張する提訴をうけ、配布が停滞している間に登場した GNU/Linux にニッチを奪われる展開となった、その後「UNIXの権利を侵害していない」4.4BSD-LiteをベースにNetBSDやFreeBSDが再実装・リリースされた。
一般ユーザーに関してはWindowsのシェアは大きいが、しかしIT企業などでのサーバーや基幹コンピュータといった分野においては、現在でもUnixが多くのシェアを占める。
狭義の「Linux」（リナックス）は、カーネルだけを意味する。Linuxは、Free Software Foundation（FSF）の提供するGNUソフトウェア群などでユーザーランドを補いオペレーティング・システムとして構成されることが多い。
このため、FSFは Linux カーネルにGNUのユーザーランドを組合せてオペレーティング・システムとしているプロダクトを「GNU/Linux」と表記する事を推奨している。オペレーティングシステム全体を「Linux」と呼称するか、それとも「GNU/Linux」と呼称するかは、論争を引き起こすこともある。
オペレーティング・システムとしてのプロダクトは「Linuxディストリビューション」と言うのが厳密な用法である。「Linuxディストリビューション」とは、Linuxカーネルを元に、実用OSとするために多くのアプリケーションの実装を行ったものである。
カーネルにどのようなアプリケーションを加えるかにより、何通りもの構成がありえ、実際にOSとしての構成が何十通りもあるので、それら個々のプロダクトについては「Linuxディストリビューション」と表現することでカーネルとは区別する。
Linuxディストリビューションは、ディストリビューターごとにカスタマイズされて配布されており、Fedora（フェドラ）、Ubuntu（ウブンツー）、Debian（デビアン）などのディストリビューションがある。
Windowsに対するLinuxの大きなアドバンテージは、パッケージ管理システムが充実していることである（WindowsにもWindows Package Managerやchocolateyというパッケージマネージャがある）。
オープンソースのソフトウェアは、他のオープンソースのソフトウェアを組み合わせて作られている場合が多い。そのため、特に大きいソフトウェアでは、そのソフトウェアの動作に必要になる別のソフトウェアとして、どんなソフトウェアを準備して導入すればいいかの確認と導入が必要である。
このような確認・導入の作業を「依存関係の解決」という。
この依存関係わ解決のためのソフトウェアが開発されており、RPM（レッドハット系）、dpkg (デビアン系)などの依存関係の解決を自動化するソフトウェアがある。
2022年7月の時点で、macOS 上の類似のソフトウェアとして、Homebrewなどがある。
また、Linuxの誕生以前からBSD Unixでパッケージ管理システム ports/pkg があり、 パッケージ管理としてはGNU/Linuxは後発である。
Windows, Mac OS Xと大きく異なる点として、Linuxでは広範囲のカスタマイズができることがあげられる。例えば、LinuxにおいてはGUIはX Window Systemが用いられるが、これはオプションであり必須では無い。特に、主にサーバーとして扱う場合には、GUI無しで導入した方がよい場合もあるかも知れない。
Linuxを用いる上で難しいのが、ハードウェアのドライバ（そのハードウェアをパソコンで制御できるようにするためのプログラム）の導入である。特に、既に所持しているハードウェアがLinux上で動作するかを知るのは難しい。具体的にこれらについて調べるには、インターネットを使うのが普通だが、多くの情報は英語で与えられている場合があり、英語が使えないなら調べることは ほぼ不可能である。
別の方法として、LinuxはOSのソースコードが公開されているため、特に linux-x.x.x/drivers/ 以下を参照することで、自分の所持する機器のドライバがあるかを確かめることができる。ただし、これには相当のコードリーディング力と英語力が必要なため、あまりおすすめはできない。
Linux上で動くソフトウェアは、基本的に、Windows上では動作しない。なぜなら、LinuxとWindowsでは使えるライブラリが異なっているため、両者の間でソフトウェアを兼用できないのが通常である。
ただし、ビットマップ画像やJPEG画像、PNG画像などは、規格化団体などのより規格化されているので、Windowsなどの（ubuntuなどの）LinuxディストリビューションでもOSでも読み取れる。また、テキストファイル(拡張子が .txt) も、LinuxディストリでもWindowsでも読みとれる。
しかし、画像などのようなのは例外で、いわゆる実行ファイル（Windowsでいう拡張子「.exe」）のようなものは、まずLinuxでは読み取り不可・起動不可である。
世間のソフトウェアのなかには、Firefox（ファイアフォックス）、Inkscape（インクスケープ）、GIMP（ギンプ）などのように、Windowsと Linuxの両側で同じソフトウェアがあるが、これらは、それぞれのOSのライブラリに合わせて、1つのソースツリーから、別々のプラットホーム向けのバイナリーを生成している。
そのため、Windows用のインストールファイルをLinuxで実行しても、インストールできない。そもそも公式サイトからダウンロードをする時点で、すでに、各OSごとに対応バージョンのインストールファイルをダウンロードするようになっている。
他には、たとえば『午後のこーだ』というMP3エンコーダがあるが、このソフトウェアは中でLAMEを用いているため、似た機能はLinux上でも用いられる（ただし、ライセンス上の理由で、Fedora等はこのソフトウェアの使用を推奨していない）。
具体的にLinuxを導入するための注意を述べるが、いずれにしても、高校レベルのパソコン知識が、最低限、必須である。
ほとんどのLinuxは、少なくとも、インテル系のCPUや、AMD系のCPUで用いることができるのが普通である。
インテルの古いCPUにもとづく仕様で、X86系という仕様があり、AMDもこのX86系を踏襲しているので、Linuxでも想定されているCPUはX86系である。
LinuxとWindowsを同時にハードディスク上に入れておき、必要に応じて使い分けることは可能である。このことをデュアルブートとかマルチブートと呼ぶことがある。電源を入れてOSを起動することを「ブート」というのである。2種類（デュアル）のOSを起動できるようにするからデュアルブートというのである。
デュアルブートにより使用しているOSを変更する際には、いったん電源をシャットダウンするか再起動するなどして、ともかく一時的に電源を終了させて、再起動をする必要がある。
そのため、普段はWindowsを使っていても、特定用途でLinuxを導入することは可能である。ただし、その分のディスク容量は必要となるので注意。
デュアルブートとは別に、Windows内に、あるソフトを用いて、リナックスをアプリケーションとして認識させインストールする方法もあるが、これは「仮想化」（かそうか）といい、デュアルブートとは別の手法である。仮想化をするには、Windowsに、仮想化のための専用ソフトウェア（VirtualBoxなど）をインストールする必要がある。仮想化によるLinuxの起動中は、ウィンドウズのプログラムとリナックスのプログラムの両方を起動しているので、そのぶんメモリの使用量は多くなるので、動作が緩慢になったりする。
また、仮想化の場合でも、その分のディスク容量は必要となるので注意。
アプリケーションは、しばしば「応用ソフト」と呼ばれ、「基本ソフト」であるOSとの対比される。OSがコンピュータの動作における基本的な機能やシステムを提供するソフトウェアであるのに対し、アプリケーションはOSの提供するものを土台として、より専門性に特化した機能を追加・提供するためのソフトウェアである。OSにインストールすることで、使用することができる。
アプリケーションはOSに依存するため、OSの種類によってアプリケーションの対応状況は異なり、そのアプリケーションがサポートしていないOSで使用することはできない。例えば、Microsoftt 社の Word 2000というソフトはWindows用であり、MacやUnixでは使えない。Mac用にはMicrosoftから Word 2004 for Macというソフトが販売されているが、こちらは Windows や Unix では使えない、などといった具合である。
以下に、代表的なアプリケーションの種類と主なソフトを示す。
OSが提供している機能や、他のアプリケーションへのサポート的な役割を果たすソフト。代表的な機能としては、ウイルスチェック、メモリの使用状況やクリーンアップ、ハードウェア情報の表示など。
コンピュータウイルスが入ってこないか、または入っていないか監視するソフト。自動設定しておけば、毎日決まった時間にコンピュータ内をチェックすることもできる。基本的に、メールの送受信やファイルのダウンロードなど、ウイルスが入る可能性のある状況になると自動的にチェックを行ったりする。
Linuxでは、あまり用意されていない（少なくとも、家電屋にはLinux用のウイルス対策ソフトウェアは売ってない）。
PC-Unix上ではGNOME、KDEなどのソフトウェアを組み合わせてGUI環境を構築するようになっており、これらのソフトウェアを「デスクトップ環境」という。
デスクトップ環境の中身は、ランチャー、ファイル管理などのツールを組み合わせたものと言われる。Windows、Mac OSでは、これらの機能がOS付属であるので、一般ユーザーが「デスクトップ環境」という一般名詞を特に意識することは少ない。
各ソフトウェアのインストールやアンインストールを行うソフトウェアであるが、ソフトウェアのアップデートにも用いられる。
種類にもよるが、ソフトウェアのインストールに必要なパッケージをパッケージごとの依存関係を考えてインストールするものもある。ライブラリやソフトウェアの重複がなくなるので、インストールのデータ量が少なくてすみ、また、インストールに必要な時間も短い。
代表的なものに。Fink、RPM、dpkg（Debianを参照）などがある。
日本では、下記に述べる、ワープロソフト、表計算ソフト、プレゼンテーションソフトをまとめて、「オフィスソフト」という。
印刷までを想定して、文書を作成できるソフト。文字の種類や大きさ、色を変えたり、表や画像を挿入したりすることができる。
Word（ワード）、一太郎（いちたろう）、Writer（ライター）など。
『Word』は、マイクロソフト社の製品のワープロソフトである。
リブレオフィスWriter（ライター）は、無料である。
表計算ソフトは、計算式を用いて表計算をできるソフトである。集計表や家計簿を作成したり、式に基づいてグラフを挿入したりできるソフト。
Excel（エクセル）、Lotus1-2-3（ロータス）、Calc（カルク）、三四郎など。
『Excel』は、マイクロソフト社の製品の表計算ソフトである。
リブレオフィスCalc（カルク）は、無料である。
プレゼンテーションに特化しており、1ページ1ページを視覚的に表現することに特化されている。静止画的な修飾だけでなく、アニメーション機能なども搭載されている。
PowerPoint（パワーポイント）、Impress（インプレス）、Agreeなど。
Impress（インプレス）は、無料である。
マイクロソフト社が、マイクロソフト『Office』のような名前で、Windows用のオフィスソフトを販売している（基本的に有料）。
Linux では基本的に、マイクロソフト『Office』は動作せず、使えない。
そして、マイクロソフト『Office』には、上記のように『Word』『Excel』『Power Point』などがある。
マイクロソフト『Office』とは別に、オープンソースのコミュニウティの開発する無料の『リブレオフィス』（Libre Office）というオフィスソフトがある。
リブレオフィスには上記のように『Writer』『Calc』などがある。
データベースを作成し、多くの情報を管理しやすくするソフト。また、作成したデータベースの保守・管理・運用なども含む。
Access（アクセス）、MySQL（マイ エスキューエル）、PostgreSQL、Baseなど。
企業などで用いられる大規模データベースシステムでは、米国Oracle（オラクル）社のデータベース製品が主流となっている。
既存の画像などを加工したり、一から画像を作るためのソフト。様々な種類があり、用途に応じて使い分けられている。
映像関係の企業などでブランド的に用いられているのは、米国アドビ社のPhotoshop（フォトショップ）、Illustrator（イラストレーター）などだが、高価であり、数十万円ほどをする。
米Adobe社（アドビ社）が、PhotoshopとIllustratorを生産販売している。
アドビの製品が高価なこともあり、他の会社が、より低価格な製品を出している。
画像編集ソフトは、他にも多々ある。[https://www.hitpaw.jp/photo-enhancer.html HitPaw Photo Enhancer]は、AIを使ったモノクロ写真の自動カラー処理や低解像度の画像の高解像度化を楽しむことができる画像高画質化ソフトの一つである。
[https://picwish.com/jp/ PicWish]、Remove bg、[https://vanceai.com/ja/ VanceAI]、[https://www.fotor.com/jp/ Fotor]などのオンライン画像編集ツールもある。
線や円などといった、図形の情報によって画像を記録する方式の画像形式をベクター画像という。
SVGファイル形式などが、ベクター画像である。
inkscape（インクスケープ）はオープンソースの無料ソフトである。
ビットマップ形式やJPEG形式の画像をラスター画像という。
GIMPは無料ソフトである。
Internet Explorer( IE )のサポートは、2022年6月16日に終了しています。以下の文章は IE のサポート終了前のもので2022年以降の状況を反映していません。
HTMLファイルなどを閲覧するためのソフト。主に、インターネット上の情報を閲覧するのに使用する。Windowsに標準搭載されているInternet Explorer（インターネットエクスプローラー、通称「IE」アイイー ）が一般に使われているが、個人の開発者や民間企業が多く参入しており、シェア争いの激しい分野でもある。また、ほとんどがフリーで提供されている。
IEの他には、Firefox（ファイアフォックス）、Opera、Sleipnir（スレイプニル）、Lunascape（ルナスケイプ）など。これらはすべて無料で提供されている。また、IEはTridentエンジン、FirefoxはGeckoエンジンを使用し、Sleipnir,LunascapeなどはTridentとGeckoエンジンを切り替えて使用可能となっており、OperaについてはGecko、Tridentとは違う、独自に開発したPrestoエンジンを搭載している。
Firefoxはオープンソースである。
メールサーバからメールを受け取ったり、メールをメールサーバーに送信するソフトウェアである。
Windows メール、Thunderbird（サンダーバード）、Shurikenなど。
Thunderbird を提供している団体は、Firefoxを提供している団体と同一で、モジラ（Mozilla）財団である。
コンピューターネットワーク（主にインターネット）上でリアルタイムコミュニケーションを実現するアプリケーション。
ICQなど。
IP電話を行うためのソフトウェア。
Skypeなど。
PC上で作曲を行う作業をDTM（ディーティーエム）という。Desktop Music の略である。楽譜データを扱えるソフトウェアであることが多い。
Rosegarden（リンク先は英語）など。
そもそも現在、音楽制作では、すでにDTMソフトウェアに、主要な楽器の音で、それぞれの音階の音が、ソフトウェアに内蔵されている。
DTM作曲家は、それらのソフトウェア内蔵音を組み合わせて、作曲をしているのである。
PC上で書籍の編集を行う作業をDTP（ディーティーピー）という。Desktop Publishing の略である。PC上で出版物の内容データを扱うソフトウェア。操作性はワープロソフトと似ているが、DTPソフトのほうがレイアウトの自由度が高い。
Adobe InDesign、Scribusなど。
3Dのポリゴンデータを作ることを一般に「3Dモデリング」といい、そのためのソフトウェアを3Dモデラ―という。
Blender、LightWaveなど。
動画を再生するためのソフトウェアを、動画プレイヤーと呼んだり、ビデオプレイヤーなどという。
VLC、[https://www.hitpaw.jp/video-converter.html HitPaw Video Converter]など。
動画を編集するソフトウェア。
iMovie、Kinoなど。
低解像度動画の画質を上げるソフトウェア。
[https://www.hitpaw.jp/hitpaw-video-enhancer.html HitPaw Video Enhancer], [https://anyrec.io/ja/video-enhancer/ AnyRec Video Enhancer], [https://www.avclabs.jp/video-enhancer-ai.html AVCLabs Video Enhancer AI], [https://www.topazlabs.com/topaz-video-ai Topaz Video Enhance AI]など。
プログラミングを助けるためのソフトウェア。
VisualStudio、Eclipseなど。
また、VisualStudioはコンパイラ、デバッガ、GUIビルダを含んでいる。
ソースコードを実行形式に変換するソフトウェア。個別のプログラム言語に対して、それぞれのプログラム言語用のコンパイラが0種類インタープリターしか言語処理系がない言語もある。以上ある。
Windowsの場合、マイクロソフト社の提供するVisual Studio を導入すると（現在（2019年）は無料版がある）、いっしょにWindows用プログラムのコンパイラが付いてくる。
そのほかの団体の提供するコンパイラもあり、Unix系のOSので使える
などもある。
実行形式やバイトコードの動作を確認するソフトウェア。バグ（不具合）を取り除く作業をデバッグといい、そのためのソフトウェアなので、デバッガという。
Windowsの場合、Visual Studio にデバッガも付いてくる。
Unix系のOSでは、GCCを提供する団体と同一の団体であるGNU（グニュー、団体名）によるデバッガの
がある。
GUIの制作の際、GUIは、いくつかのパーツに分けられており、そのGUI部品をウィジェット（コントロール）という。ウィジェットを組み合わせてGUIを作るソフトウェアをインターフェースビルダーという。
gladeなど。
他のプロセス（クライアント）の要求を処理するソフトウェア。クライアントは同じPC上にあることもあるが、他のPC上にあってもよい。例えばWebサーバはネットワーク越しにクライアント（Webブラウザー）からの要求を受けることがある。
ホームぺージをクライアントに送るサーバー。このWikibooksのページもHTTPサーバーで運用されている。
ファイルをクライアントと送受信するサーバー。ファイル保存、ホームページファイルのアップロードで運用されている。
暗号や認証の技術を利用して、安全にリモートコンピューターと通信するサーバー。
多く運用されているプロトコルはPOP3（受信）、SMTP（送信）、IMAP（サーバー同期型）で、個人で運用すると取得ドメインの元に限って自由な利用ができる。