• 意外と知らない?UnixとLinuxの違いとは

    公開日:2016年06月09日 最終更新日:2022年04月25日

    プロエンジニアの無料会員登録はこちら

    目次

    パソコンのOSといえば、一般的に「Windows」と「Mac OS」の2つを挙げる人が多いと思います。さらにエンジニアやPCに詳しい人であれば、その次に「UNIX」や「Linux」が思い浮かぶのではないでしょうか。

    しかし名前を知ってはいても、とっさにUNIXとLinuxの違いを説明できる人は意外に少ないと思います。今回は、そのUNIXとLinuxの違いと関係性について簡単にご紹介したいと思います。

    1. まず、UNIXとは?

    意外と知らない?UnixとLinuxの違いとは【フリーランスエンジニア案件情報 | プロエンジニア】

    UNIX(ユニックス)とは、アメリカ最大手の電話会社であるAT&T社が1968年に開発したOS、およびその流れをくむOSの総称です。
    (なお同社は電話を発明したグラハム・ベルが設立した、ベル電話会社が前身です)

    1.1 UNIXはアセンブリ言語からC言語へ

    AT&T社における開発当初のUNIXは、アセンブリ言語で書かれていました。
    アセンブリ言語と聞いてもピンと来ない方も多いと思いますが、IPA主催の基本情報技術者試験の午後試験で、選択言語のひとつとなっているCALSⅡがアセンブリ言語だと言えばイメージしやすいでしょう。アセンブリ言語は、コンピュータが理解できる機械語(0と1のみ)よりは人間が理解しやすくなったとはいえ、CPU毎に記述方法が異なるなど、当時はまだまだ敷居の高いものでした。

    社内でUNIXが広まるにつれ、保守のしやすさや移行の利便性を求めて、もっと人間がわかりやすい言語で書き直そうという思いからデニス・リッチーによってC言語が開発されました。その後、UNIXはアセンブリ言語からC言語で書換えられ、ソースコード付きの状態で大学や研究機関に向けて公開されたことから、利用者がさらに広まっていきました。

    1.2 SystemVとBSD版UNIX

    UNIXが広まる中、カリフォルニア大学のバークレー校では、より優れた機能(ネットワーク機能や、現在のUNIXエディタviなど)を盛り込んだ、バークレー校のUNIX(Berkeley Software Distribution)=BSD版UNIXが開発され、評判となっていました。

    BSD版UNIXは大きな反響をよび、派生元のAT&T社のUNIX=System Vと並んで、UNIXの2大柱として、UNIXの歴史に大きな影響を与えました。現在、BSD版UNIXで有名なものにはFreeBSDなどがあります。

    1.3 UNIXは商用化へ

    UNIXは、世界的に広まるにつれ商用化される流れとなり、UNIXを利用するためのライセンス管理が始まりました。
    「UNIX」の商標権は現在、「The Open Group」という団体が保有しており、同団体から共通仕様「Single UNIX Specification」を満たしていると認証されたOSだけが「UNIX」と正式に名乗ることができる仕組みです。現在の商用UNIXは、ほとんどAT&T社のSystemVが元になっています。

    1.4 UNIXはCLIを採用

    UNIXは、WindowsやMac OSなどの「GUI(Graphical User Interface)」に主眼を置いたOSとは異なり、「CUI(Character User Interface)」を採用しています。

    GUIとはファイル操作がグラフィカルに表現されているインターフェースのことで、アイコンをマウスでドラッグするとファイルが移動されるなど、直観的な操作が可能になっています。

    CLIとは【フリーランスエンジニア案件情報 | プロエンジニア】

    例えばファイルのコピーをしたい場合は、マウスを右クリックして「コピー」を選択し、任意の場所で「貼り付け」を選択します。

    それに対してCUIは、命令コマンドを文字で打ち込むことで、ファイル操作やアプリケーションの起動を行います。Windowsのアクセサリ(Win10では管理ツール)にあるコマンドプロンプトは、WindowsをCUIで操作するためのツールです。

    CLIとは【フリーランスエンジニア案件情報 | プロエンジニア】

    図は、Windowsのコマンドプロンプトのものです。同じ「Download」というフォルダ内に、「aaa.txt」を「bbb.txt」という名前でコピーしています。その際、マウスではなく「copy」というコマンドを打ち込むことでファイルを操作しています。

    コマンドプロンプトはWindowsの前身(厳密には違いますが)でCUIのOSである「MS-DOS」のソフトをWindows上で動作させるために用意され、かつてはDOS窓と呼ばれてもいました。

    なお逆にUNIX上で動くGUI操作を可能とするツールも存在しており、「X-Windows System」という名称でリリースされています。

    ▲目次へ戻る

    2. では、Linuxとは?

    意外と知らない?UnixとLinuxの違いとは【フリーランスエンジニア案件情報 | プロエンジニア】

    Linux(リナックス、リーナックス、ライナックスとも)の開発は1991年、ヘルシンキ大学で当時大学院生だったLinus Torvalds(リーナス・トーバルズ)によって行われました。大学で教育用UNIXとして使われていたMINIXを、より良いものに作り替えようとしたのが始まりと言われています。

    2.1 LinuxはUNIX互換OS

    正式にTOGから認証を受けたUNIX以外に、UNIX風の仕様や操作感を持つ(=互換性の高い)OSが、実は多数存在しています。それが「UNIX系OS(UNIX-like OS)」であり、そのUNIX系OSのうち最も有力な存在が「Linux」なのです。
    LinuxはUNIXと同じであると思われがちですが、LinuxはUNIXとは別物であり、ソースコードも全く別物です。しかし、UNIXの標準規格であるPOSIXを満たしていることから、UNIX互換OSと言われています。

    2.2 Linuxはオープンソースソフトウェア

    UNIXとの大きな違いは、Linuxはオープンソースソフトウェアとして広く公開・配布されており、GPLというライセンス体系に基づいて誰でも自由に入手・改変・再配布が可能な点です。UNIXは商用化によってライセンス管理が必要でしたが、Linuxはフリー、つまり誰でも無料で使用することができるのです。

    ◆注釈:一部のLinuxディストリビューション(Linuxカーネルとドライバ、いくつかのアプリケーションをパッケージングしたもの)には、有料で配布されているものもあります。 企業向けに開発された「Red Hat Enterprise Linux」などはサポートなどが充実している代わりにこれまで有償のみの提供でしたが、2016年3月31日から開発者向けに、無償サブスクリプション「Red Hat Enterprise Linux Developer Suite」の提供を開始しました。

    2.3 Linuxは世界中のエンジニアが開発者

    Linuxは現在に至るまで20年以上にわたって成長を続けてきただけでなく、オープンソースであるがゆえ、今後も世界中のエンジニア達がLinuxの開発者として改良を行い、日々ブラッシュアップを続けていくOSとも言えます。

    さらにLinuxはネットワークやセキュリティの分野で優れており、非常に安定しているという特徴があります。そのためスパコンからメインフレーム、サーバ、PC、果ては組み込み系までの幅広いハードウェア用に使用されており、特にスパコン、メインフレーム、サーバにおいては最も使用率の高いOSとなっています。

    3. シェルスクリプトはプログラミングの学習にも

    UNIXやLinuxには、OSの核となる部分(カーネル)が存在し、そのカーネルに処理を伝える役割としてシェルが存在します。
    シェルスクリプトという言葉を一度は聞いたことがあると思いますが、シェルに命令を伝えるためのコマンドを列挙したものをシェルスクリプトと言います。シェルスクリプトは単純にコマンドを並べるだけではなく、プログラミングの知識として必要な「条件分岐」や「繰り返し」を用いて記述することも可能です。

    作業でよく使うコマンドであれば、シェルスクリプトとしてコマンドを記述して保存しておくことで、毎回入力する手間もなくなって作業効率が上がるだけでなく、スペルミスもなくなります。他のプログラミング言語に比べると比較的簡単なため、まず最初に学ぶプログラミング言語としても最適です。プログラミングに限らず、UNIX/LinuxのOSの知識やコマンドの習得は、エンジニアとして仕事をしていく上での必須スキルとも言えるでしょう。

    4. まとめ

    いかがでしたでしょうか。UNIXとLinuxの操作感が似ているけど違うOSである背景には、こんな経緯がありました。コスト面でも安定性でも優れているLinuxの利用場面は、今後も増えていくと考えられます。CUIで個人利用には敬遠されがちなUNIX系OSですが、Linuxにも無償のGUIパッケージがあります。

    また専用マシンを準備するのが難しいという場合には、「Cygwin」、「VirtualBox」というWinsows上で動くUNIX系OSの環境を再現する無料のソフトウェアパッケージもあります。
    これを機会に、ぜひ貴方もLinuxで遊んでみてはいかがでしょうか。

    ▲目次へ戻る

    最新求人情報をチェック!

    月額単価70万円〜80万円
    勤務地 東京都 港区
    月額単価60万円〜70万円
    勤務地 東京都 港区
    月額単価70万円〜80万円
    勤務地 東京都 港区
    月額単価70万円〜
    勤務地 東京都 千代田区

    フリーランスの方でこのようなお悩みありませんか?

    • 定期的に案件を紹介してほしい
    • 完全フルリモートワークや、週1出勤など、働き方を選びたい
    • 単価交渉など営業周りが苦手なので、誰かに任せたい

    プロエンジニアにお任せください!

    プロエンジニアはほとんどEND直案件!高額単価案件ならお任せください。
    完全フルリモートや、週1出勤など、希望に合わせた働き方ができる案件を多数ご用意しています。
    単価や契約交渉などは弊社キャリアコンサルタントに全てお任せください。

    無料登録して、あなたの希望に合った案件をチェック!

    簡単60秒!無料登録はこちらから

    おすすめ記事

  • ピックアップ

    フリーランス

    NEW 【PHP/Laravel】バックエンドエンジニア★自社プロダクト開発

    医院開業/経営コンサルティング事業を行なう企業にて、自社プロダクトの開発に携わっていただきます。 ...

    月額単価:70万円〜80万円

    フリーランス

    NEW 【PHP/Laravel/他】PM/テックリード★自社プロダクト開発

    医院開業/経営コンサルティング事業を行なう企業にて、自社プロダクトの開発に携わっていただきます。 ...

    月額単価:60万円〜70万円

    フリーランス

    NEW 【PHP/AWS/Nuxt.js/他】フルスタックエンジニア★自社プロダクト開発

    医院開業/経営コンサルティング事業を行う企業にて、自社プロダクトの開発に携わっていただきます。 ...

    月額単価:70万円〜80万円

    フリーランス

    NEW 【POC】特許庁向け運用効率化支援(要件整理・設計検証)

    工程:要件整理、検証実施等 内容: ・SNOW開発分の要件定義・設計 ・SNOW実装部隊製造物の受け入れ...

    月額単価:70万円〜

SCROLL TOP