UNIXとLinuxはどう違う?それぞれの特徴と共通点も詳しく解説
UNIXとLinuxとは、ともにWindowsやiOSなどと同じOS(オペレーティング・システム)の一種です。しかし、似た名前の響きから、似たようなものだと考えている人、具体的に何が違うのかを知らない人も多いのではないでしょうか。
UNIXとLinuxの概要やそれぞれの特徴などを解説しています。本記事を読むことで、UNIXとLinuxの共通点と違いがはっきり理解できるでしょう。
UNIXとLinuxってなに?
UNIXとLinuxとは、Windowsなどと同じOSの一種です。UNIXは現在でも残っているOSの中でもっとも古いOSであり、さまざまなOSのベースになったものです。
UNIXは黒いコマンド画面を使ってCUI操作を行い、コンピュータを操作します。一方、LinuxはUNIXを参考にして開発されたOSで、UNIXと同様に黒いコマンド画面を使って操作するケースが多いです。
このことから、UNIXとLinuxは非常によく似ていると言えるでしょう。
UNIXの特徴
UNIXとLinuxの違いについて理解するためには、それぞれの特徴を把握しておく必要があるでしょう。ここではまず、UNIXの特徴について解説していきますので参考にしてください。
- アセンブリ言語からC言語へ変更
- CLIを採用している
- 派生OSと互換OSがある
- マルチタスクとマルチユーザーに対応している
- 特定のハードウェアに依存していない
Unixの発祥
Unixは1969年に、アメリカにあるAT&T社ベル研究所のケン・トンプソン氏が中心となったメンバーにより開発されました。もとはMultics(マルティックス)とタイムシェアリングシステムを、ベル研究所とマサチューセッツ工科大学(MIT)、ゼネラルエレクトリック(GE)で開発しようとする動きがあったものを、プロジェクトから離脱したベル研究所が開発しました。
ミニコンと呼ばれる小型コンピュータの普及により、サイズの小さいOSのニーズが高まったことに合わせて開発されました。
アセンブリ言語からC言語へ変更
開発当初のUNIXはアセンブリ言語で記述されていました。アセンブリ言語は機械語よりは人の言葉に近いとは言え、CPUによっても記述方法が異なることから、人にとっては理解することが難しい言語でした。
そのため、より人にわかりやすい言葉で書きなおすために、プログラミング言語であるC言語が開発され、UNIXもC言語で書きなおされたという経緯があります。さらにソースコードも公開されたことで、よりユーザー数を増やすことになりました。
CUIを採用している
CUIとは「Character User Interface」を略した言葉で、黒いコマンド画面に手入力で命令コマンドを入力し、ファイル操作などと行うものです。UNIXはWindowsやmacOSなどと違い、CUIを採用しています。
一方、現在一般的に用いられているWindowsやmacOSなどのインターフェースはGUI(Graphical User Interface)と呼ばれており、ウィンドウやボタン、アイコンなどを使って直観的に操作できるようになっています。
派生OSと互換OSがある
さまざまな派生OSや互換OSが存在している点も、UNIXの特徴でしょう。UNIXの派生OSや互換OSはUNIXに新しい機能を付けて使いやすくしたものであるため、現在でも使用されています。
UNIXの有名な派生OS・互換OSとして、BSDやSolarisなどが挙げられます。なお、LinuxもUNIXとの互換性を持っていますが、厳密に言えば派生OSではなくUNIXを参考にゼロベースから開発されたOSです。
マルチタスクとマルチユーザーに対応している
マルチタスクとは、一つのコンピュータで複数のプログラムを同時に実行することを指します。また、マルチユーザーとは一つのコンピュータに複数人のユーザーが同時にログインし、利用できることを意味します。
UNIXの特徴として、このようなマルチタスク、マルチユーザーに対応している点は大きいでしょう。現在ではマルチタスクは普通のことですが、UNIXが開発された当時、貴重なコンピュータを効率的に使用できるマルチタスクは画期的なものでした。
特定のハードウェアに依存していない
開発当初のUNIXはアセンブリ言語で記述されていたため、特定のコンピュータへの依存度が高いものでした。しかしC言語で書き直されてからのUNIXは機種依存性が低くなり、特定のハードウェアに依存するようなことはなくなりました。
また、前述のとおりC言語に書き直されたタイミングでソースコード付きで公開されたため、これを機にUNIXは本格的に普及することになったと言われています。
Linuxの特徴
Linuxは、元々UNIXをより良くするためにUNIXを参考にしてゼロベースから開発されたOSです。ここまでUNIXに特徴について解説してきましたが、Linuxはどのような特徴を持つOSなのでしょうか。
ここでは、Linuxの特徴について解説していきます。
- UNIX派生OSである
- 世界中のエンジニアが開発したOSである
- オープンソースソフトウェアである
Linuxの発祥
Linuxは1991年、当時学生だったフィンランド人のリーナス・トーバルズによって自身の学習や趣味を目的として開発されました。UNIXは高価なライセンス制限があり、勝手に改変することが難しかったため、リーナスは自らUNIXのソースコードを参考にして生み出されたのが独自のOS「Linux」です。
彼がオープンコードとして公開したことにより、Linuxはその後も世界中のエンジニアたちがブラッシュアップを重ね、大きなシェアを獲得するOSへと進化しました。
UNIX派生OSである
Linuxは厳密に言えばUNIXから派生したわけではありません。UNIXを参考に改良を加えられて開発されたため、ソースコードも全く異なっています。
しかしUNIXに近い仕様や操作感を持っており、UNIXの標準規格となっているPOSIXを満たしていることから、UNIX派生OSだと言われています。さらに、UNIX派生OSの中でもメジャーで有力なOSがLinuxであると言えるでしょう。
世界中のエンジニアが開発したOSである
LinuxはオープンソースのOSであるため、世界中の支持者が改良を行ってきたという歴史があります。そのため、世界中のエンジニアがLinuxの開発者であると言えるでしょう。
Linuxは現在でも日々ブラッシュアップされ続けており、これまで多くの改良が加えられてきたことから、セキュリティ面やネットワーク面でも安定しています。
そのため、サーバーや組み込み系、さらにはスーパーコンピュータにまで使用されている、非常に使用率の高いOSであると言えます。
オープンソースソフトウェアである
UNIXを利用する場合、ライセンスを購入する必要があります。しかしLinuxはオープンソースのOSであることから、ソースコードが公開されており、誰でも無料かつソフトウェアフリーに利用することが可能です。
UNIXに限らずWindowsやmacOSなども有料であるため、たとえば空のパソコンにこれらのOSを導入しようと思うと費用が必要になります。しかしLinuxの場合は無料で広く公開、配布されているため、コストを掛けずに導入できるでしょう。
UNIXとLinuxの違いとは?
ここまでUNIXとLinuxそれぞれの特徴について解説してきましたが、Linuxは元々UNIXを参考にして開発されたため、両者は非常に似ている部分の多いOSです。それでは、UNIXとLinuxには具体的にどのような違いがあるのでしょうか。
ここではUNIXとLinuxの違いについて解説していくため、参考にしてみてください。
ライセンスの有無
UNIXとLinuxでは、ライセンスに関する考え方が違っています。UNIXの場合、ライセンスはAT&T社が保有しているため、UNIXを扱う場合はライセンス許諾が必要です。一方、Linuxはオープンソースかつライセンスフリーです。
UNIXはSolarisが無償化されたことで、「無償で利用できるOSである」と誤認されているケースもあります。また、Linuxの場合もLinuxディストリビューションのほとんどは無料で利用できますが、一部有償のものも存在しています。
しかし、原則としてUNIXはライセンス許諾が必要であり、Linuxはライセンスフリーです。
コマンドが異なる
UNIXとLinuxでは、操作を行う際の命令コマンドが異なっています。ただし、ほとんどのコマンドに違いはないため、一般のユーザーでは違いはわからないでしょう。
UNIXとLinuxで大きく異なるコマンドとしては、たとえばパッケージの取得や更新を行う際のコマンドが挙げられます。UNIXやLinuxではWindowsなどと違ってCUI操作を行うため、このようなコマンドを覚える必要があります。
ファイルシステムが異なる
ファイルシステムとは、データを格納している場所を管理する仕組みのことです。ファイルシステムは種類によって、ファイル名の長さや格納できるファイル数などさまざまな点で違いがあります。
UNIXとLinuxではこのようなファイルシステムが異なっています。たとえばUNIXではFFFS(Fat Fast File System)やZFSなどのファイルシステムが利用されるケースが多く、Linuxではext4が利用されるケースが多いです。
デフォルトシェルが異なる
UNIXとLinuxにはどちらもシェルという概念が存在しています。シェルとはカーネルとのコミュニケーションを行うためのソフトです。
シェルは人が入力したコマンドをカーネルに伝えて、カーネルはコマンドに応じたプログラムを実行するという仕組みになっています。このようなシェルにはさまざまな種類がありますが、UNIXとLinuxではデフォルトで使用されるシェルが異なります。
たとえば、UNIXの場合はBsh(Bourne Shell)やtcshなどが使用されるケースが多く、Linuxの場合はbashが使用されるケースが多いです。
想定環境が異なる
UNIXとLinuxでは想定環境が異なっています。UNIXの場合、当初は小型コンピュータでの利用を想定し、学術研究や開発などを目的として開発されました。
一方、Linuxは学生がUNIXをより使いやすくするために開発したもので、最初からビジネスユースを想定して開発されました。
ただし、現在ではどちらにも派生OSがあり、商用利用がされていることから、違いは分かりにくくなっています。
歴史の長さが異なる
UNIXとLinuxでは、歴史の長さにも違いがあります。Linuxは1990年代にUNIXを参考にして開発されましたが、UNIXはそれよりもはるか昔、OSという考え方自体が存在していなかった1969年に誕生したと言われています。
そのため、UNIXはLinuxよりも20年以上長い歴史を持ったOSです。
UNIXとLinuxの共通点
ここまで紹介したようにUNIXとLinuxには違いもありますが、基本的には共通点も多く、よく似ているOSだと言えます。LinuxはUNIXを参考に開発されたため、それも当然でしょう。
ここでは最後に、UNIXとLinuxの共通点について紹介していきます。
両方安定している
UNIXとLinuxはどちらも安定しており、安全性が高いという共通点があります。UNIXとLinuxはサーバーOSとして用いられることが多いため、これまでの歴史の中でセキュリティ性能を向上させてきました。
また、そもそもこれらのOSはWindowsほどユーザーが多くないため、コンピュータウィルス自体が少ないです。そのため、安全に利用しやすくなっています。
安価で利用が可能である
Linuxは無料で利用できますが、UNIXの場合も安価で利用できるという共通点があります。一般的に使用されているWindowsやmacOSなどを利用する場合、高いコストが必要になりますが、それに比べるとUNIXやLinuxは安いです。
また、UNIXやLinuxはスペックの低いパソコンでも扱えるため、全体的なコスト削減にも繋がります。
サーバー向けOSに使用できる
UNIXとLinuxは、どちらもサーバーOSとして使用できるという共通点があります。UNIXやLinuxの場合、前述のとおり安定性が高く操作感も軽いため、企業でサーバー用OSとして採用されているケースが多いです。
そのため、一般的なパソコン向けのOSとしてはWindowsが高いシェアを獲得していますが、サーバーOSとしてはUNIXやLinuxがシェアを獲得していると言えるでしょう。
カスタマイズ可能である
UNIXやLinuxはカスタマイズができるという共通点があります。ソースコードはC言語で記述されているため、カスタマイズできるエンジニアも多いでしょう。
このような自由度や拡張性の高さも、UNIX、Linuxの特徴であると言えます。
CUI操作である
先に紹介したとおり、UNIXとLinuxはどちらもCUI操作のOSです。WindowsやmacOSなどはGUI操作であるため、誰が見てもわかりやすいボタンやアイコンが表示されており、マウスやキーボードを使って簡単に操作できます。
一方、CUIの場合はパソコンやソフトウェアとのやりとりをコマンドで行うため、手動でのコマンド入力によって操作することが可能です。WindowsやmacOSでもCUI操作は可能ですが、UNIXやLinuxの場合は原則としてCUI操作が基本である点が共通点となっています。
UNIXとLinuxの違いを理解しておこう
UNIXとLinuxにはCUI操作やサーバーOS向けであるなど多くの共通点がありますが、元々別のOSであるため異なっている点も多くあります。
ぜひ本記事で紹介したUNIXとLinuxそれぞれの特徴や、UNIXとLinuxの違い、共通点などを参考に、UNIXとLinuxについて理解を深めてみてはいかがでしょうか。