オペレーティングシステムとLinuxおよびUNIX
オペレーティングシステムとは
基本ソフトウェアとも呼ばれる。オペレーティングシステム(Operating System,OS)は,ハードウェア(ハードディスク,メモリ,DVD,入出力装置など)やアプリケーションソフトウェア(ワープロ,表計算,Webブラウザなど)の間で様々な処理をするためのソフトウェアである。
その中心はカーネル(kernel)と呼ばれる。カーネルは,メモリの管理・CPUの割り当て・入出力の管理など,最も基本となるコンピュータの機能を提供する。これを狭い意味でOSと呼ぶこともある。
また以下のような,コンピュータを操作するために必要な基本的な機能で,カーネルと関わりの強いサービスも提供する。広い意味では,これらの機能も含めてOSと呼ばれる。
- ファイル管理
- 周辺装置の管理
- 使い易いユーザインターフェイス
画面・マウス操作など
- システムサービス
ネットワーク・スケジュール・ヘルプ
OSの例
Microsoft Windows,MAC OS,UNIX,Linux など
携帯電話でもOSが使用されている。(Symbian OS,Microsoft Windows Mobile,iOS,Android など)
OSの役割
1.コンピュータシステムから見た役割
ハードウェア資源(プロセッサ・メモリ・キャッシュ・I/Oなど)・ソフトウェア資源(多くのアプリケーションが共通で利用するプログラムやデータなど)の管理,効率良く信頼性の高い制御を行う。
例
複数のプログラムで1つのCPUを使うために,時間を区切って切り替える
プログラムごとに使用するメモリ領域を区切って割り当てる。
2.ユーザ側から見た役割
コンピュータをより使いやすいものにするためのユーザインターフェースを提供する。
コンピュータが一般化するにつれて,この機能の重要性が増している。
例
マウス操作によるアプリケーションの起動・終了。
ドラッグ&ドロップによるファイル操作
3.OSが無いと
- アプリケーションひとつひとつが資源管理用の処理も担当しないといけない ==> 開発が大変。 バグが生じやすい
- アプリケーションごとにユーザ環境・操作方法が異なる ==> 使いにくい
などの弊害が出る。
UNIX とは
UNIXとは,1968年にアメリカAT&T社のベル研究所で開発されたOSである。移植のしやすさと使いやすさから,多くのプラットフォームに移植された。
UNIXは以下のような特徴を持つ。
- 強力なネットワーク機能
MS Windows で使われているネットワークの機能は,ほとんどUNIXを起源とする。
- アプリケーションの堅固な保護機能
あるアプリケーションでエラーが起きても,他のアプリケーションにトラブルが及ばない。
- マルチユーザ
複数のユーザが使用することを前提に設計されているので,他のユーザからファイルを守る機能がしっかりしている。
- オープン性
アプリケーションやOS自体,ソースコードが公開されている物が多い。
- 文字ベースのユーザインターフェース
最近は,X ウィンドウシステムをによりグラフィカルな環境で利用されることが多くなってるが,操作の基本は文字による入出力である。
UNIX の種類
UNIX には大きく分けて,AT&T がライセンスを有している System V(しすてむふぁいぶ)系,UC Berkeley系(BSD)の2種類があった。
- System V 系
Solaris,HP-UX,SGI IRIX など。
以前はこちらの系統が"UNIX"の名称を正式に使用できた。
- BSD系
Solaris1.x,FreeBSD,NetBSD など。
Apple のコンピュータ Macintosh 用のOS である Mac OS X もベースはBSD系のUNIXである。実際にMacintoshでは,シェル(後に説明)も使用できる。
この UNIX という名称は商標であり,現在権利を有している The Open Group が認めたものはUNIXという名称を使用できる。その結果,以前はUNIXを名乗れなかった
Mac OS X などもUNIXの名称を使用できるようになった。
Linuxとは
- UNIX系OSの一種
UNIXは登録商標であり,厳密に言うとLinuxのことをUNIXとは呼べない。またコードの生成においても,まったく違う歴史をたどってきた。
しかし,操作性や機能面ではUNIXと殆ど違いがない。組み込みOSとして利用されるなど,現在はUNIXより広く普及している。
- Linux はカーネル
正確にはカーネルだけを指すが,広い意味ではそれに多くのソフトウェアを組み合わせて配布される物を指す。
- オープンソース
カーネルのソースプログラムは完全に公開されているので,誰でも読むことが出来る。(GPL,Linux標準教科書参照)
- フリー
Linux は原則として無料で配布される。(GPL,Linux標準教科書参照) ただしソフトウェアと組み合わせて有料で配布することも認められている。
- ディストリビューション
上記のように,厳密にはLinuxというのはカーネルだけを指す。しかしカーネルだけでは広い意味のOSとしては機能していないので,カーネルに種々のツールやアプリケーションソフトを組み合わせて実用的な形にパッケージ化して配布されている。このパッケージのことをディストリビューションという。(ディストリビューションの種類は以下を参照)
- Linus Torvaldsが作成
1991年に,Linus Torvaldsがヘルシンキ大学の学生のときに公開した。(カーネルのみ) 現在もTorvalsを中心に開発が進めれれている。
- PC用だけでなく,音楽プレイヤーや携帯電話をはじめとする様々なデジタル機器の組み込みOS,スーパーコンピュータや汎用機・サーバのOSとしても採用されている。
Linuxのディストリビューション
Linuxのディストリビューションは非常に沢山ある。以下はその代表的なものである。
- RedHat Enterprise Linux
- RedHat Linux は,従来最も普及していたディストリビューションで,有償・無償両方存在した。しかし現在は有償のEnterprise Linuxのみである。
- Fedora
- RedHat Linux としては無償版の開発・公開を止めたが,それに代わりRedHatをベースにオープンソースで開発を進め,完全にフリーとして配布しているディストリビューション。開発の周期が短く,積極的に先進的な技術を導入するのが特徴。
- CentOS
- Red Hat Enterprise Linux の完全互換を目指しているディストリビューション。Red Hat Enterprise Linux
から商標等に関する部分を取り除いている。サーバOSとして利用されることが多い。
- Vine Linux
- RedHat をベースに,日本語環境を整備したディストリビューション。有償版・無償版共にある。
- Ubuntu
- 使いやすく長期サポートが保障されていることから,最近人気が出ているディストリビューション。日本ではFedoraの人気が高いが,世界的にはUbuntuのダウンロード数がもっとも多い。創始者のMark
Shuttleworth は世界で2番目に私費で宇宙旅行をした人物としても知られている。
- Linux Mint
- 強力さと使いやすさの両方を兼ね備えた,現代的・エレガント・快適なオペレーティングシステムを目的に作成されたディストリビューション。
- openSUSE
- ノベル株式会社 が販売している商用ディストリビューション。openSUSE project が無償版の配布も行っている。
- Turbolinux
- ターボリナックス社 が販売している商用ディストリビューション。日本語環境に定評がある。有償版のみ。
- Debian GNU/Linux
- GNUプロジェクトで開発されているツールを中心に構成されているディストリビューション。豊富なツールが特徴。無償版のみ。
- KNOPPIX
- Debian をベースに開発された,最近流行のCDから起動できるLinux。CDから起動できるのでインストールの作業が不要で,Linuxの入門などに向いている。DVDの版もある。
日本語版
ITProのLinuxディストリビューション全集には,その他のディストリビューションに関する情報も掲載されている。