LinuxとWindowsの違い・特徴について比較します|OSの比較

Linuxを勉強したい人向け

この記事は、Linux初心者向けの記事です。

こんにちは。

普段はIT業界についてのブログを執筆してるエンジニアです。
» 参考:プログラマーの年収は200万円以下です【IT業界の残酷な成功法則】

今回は、Linuxについての解説記事です。

LinuxとWindowsの違いと特徴を知りたい人

LinuxとWindowsの違いを知りたい人「Windowsはわかりますが、LinuxってどういうOSなんでしょう?違いや特徴について教えて欲しいです。なんでWindowsだけじゃダメなんでしょうかね。」

こんな疑問に答えます。

この記事を書いた私は、金融業界でアプリケーションエンジニアとして年収1,000万円ちょっと稼いでいます。これまでのキャリアは、
 ・大学では情報学科、大学院ではコンピュータサイエンスを専攻
 ・就職してIT業界に13年間従事

高校生の頃から約20年間、Linux/UNIX、Windows、Macなど様々なOS環境を使ってきました。

これまでの経験を踏まえ、本記事ではWindowsと比較しながらLinuxの特徴や違いを解説します。

LinuxとWindowsの特徴を比較

   
Linuxの特徴

Windowsの特徴
1 リーナス・トーバルズが
ネットコミュニティの
協力を得て開発
Microsofが開発
2 エンジニア向け 一般の人向け
3 原則、無料 有料
4 CUIが基本、GUIも使える GUIが基本、CUIも使える
5 サーバに強み、
クライアントとしても使える
クライアントに強み、
サーバ版もある(高額)
6 コードが公開されている
(オープンソース)
コードは非公開
7 OSの中核機能(カーネル)のみLinuxが提供し、
ディストリビュータが付随機能を付けてOSを公開
MicrosoftがOSだけでなく、
独自のハード(Surface)も販売

LinuxのWindowsとは違うところ

LinuxのWindowsとは違うところ

1.ネット上で作られたOS

Windowsは販売目的で作られたOSですが、Linuxは趣味と興味によって作られたOSです。
LinuxはUNIXという商用のOSを真似て作られ、ネット上のコミュニティに公開され、様々なエンジニアが片手間に手が加えられて立派なOSとなりました。

2.エンジニア向けのOS

Linuxはエンジニア向けのOSです。
一般の人にはWindowsやMacの方が使いやすいのですが、Linuxはサーバに最適でサーバを構築・管理するのに便利な機能が充実しています。
Windowsとは思想の異なるOSで、最初は覚えることが多いですが、一度覚えるとエンジニアにはとても便利なOSで、Windowsの機能だけでは物足りなく感じると思います。

3.無料で使える

Windowsと異なり販売目的で作られたOSではないため、無料で公開されています。
Linuxを学習したい人にとってはとても良いことですし、それ以上に”フリー”(無料/自由)というLinuxの文化を最もよく象徴していると思います。

4.CUIで操作するOS

LinuxはCUIで操作するのが基本です。
CUIはGUIに比べて、シンプル&簡単&正確に命令を処理することができます。
画面が不要な繰り返し処理を行うサーバには、CUIがちょうど良いインターフェースです。
WindowsのようなGUIを立ち上げて操作することもできますが、サーバ用途での利用が多いLinuxは、基本的にCUIで操作するOSといえます。

5.主にサーバ用途で使われるOS

家庭やオフィスでの利用はWindowsが9割近くにのぼり、残りの1割りもLinuxではなくMacだそうです。

一方、サーバ用途ではLinuxのシェアは約7割で、Windowsが3割です。

一般には馴染みのないLinuxですが、サーバではWindowsよりもLinuxがメジャーと言えます。

6.オープンソースのOS

オープンソースはLinuxのもらたした重要な文化の一つといえます。

WindowsやMacはソースコードが非公開ですが、Linuxは全て公開されており、誰でも見たり修正してビルドすることができます。

これにより技術者が片手間にソフトウェアの技術に触れたり、改善したりできるようになり、お金を払って技術者を雇わなくてもソフトウェアをレベルアップさせることができるという大きな利点があります。

7.Linuxディストリビューションが存在

スマホで言うと、LinuxはAndroidみたいなものです。

AndroidはSONY、シャープ、HTC、サムスン、huaweiなどの企業が独自にカスタマイズしたスマホを製品化しています。

LinuxもRedhat、CentOS、Ubuntuなど多くの製品パッケージがあり、これらをLinuxディストリビューションと言います。

Windowsには無い考え方ですね。

LinuxでもWindowsでもできること

LinuxでもWindowsでもできること

クライアントとして利用し、ブラウザやオフィス製品を動かす

あまり一般的ではないのですが、LinuxでもGoogle chromeやFirefoxなどのブラウザが動きますし、文書や表計算用のソフトウェアも存在します。

LinuxをWindowsのようなクライアントとしての使い方をすることが可能です。

適当なパソコンにインストールして動かせる

Linuxの前身となったUNIXはパソコンでは動かすことができず、専用のマシンが必要でした。

しかしLinuxはWindowsと同じパソコンで動かすことができるため、例えば古くなったWindows PCにインストールして使うことも可能です。

WEBサーバ、ファイルサーバ、データベースサーバを構築する

LinuxでもWindowsでもサーバを構築することができます。

多くのサーバ製品は、Linux用、Windows用それぞれの製品を出しているため、どちらのOSでも動かすことができます。

Amazon AWSなどのクラウド上で稼動させる

サーバ用途を中心に、現在ハードウェアのクラウド化が進んでいます。

Amazon AWSやGoogle Cloud Platform、Microsoft AzureなどのクラウドサービスではいずれもLinuxとWindows両方の環境を構築することができます。

また、クライアントとしてもサーバとしても利用することが可能です。

Windows上でLinuxを動かす

Windows上でLinuxを動かす

Linux学習のためなら、メインはWindowsを使いたまにLinuxを動かしたいというのがほとんどでしょう。
Windows上でLinuxを動かす方法を紹介します。

Windowsの標準機能 WSL(Windows Subsystem for Linux)を使う

Windows10にはOS標準の機能でWSL(Windows Subsystem for Linux)があり、Windows上に仮想OSとしてLinuxを動かすことができます。

Linux上でWindowsを動かす

Linux上でWindowsを動かす

逆のパターンです。Windows上でLinuxを動かす方がオススメですが、Linuxをメインで使っていてどうしてもWindowsにしかないアプリを使いたいときなどに便利なので紹介します。

Windowsをそのまま動かすならVirtualBoxを使う

VirtualBoxなら仮想OSとしてWindowsをまるまるインストールして使うことができます。

Windowsの特定のアプリを動かすならWineを使う

Windowsの特定のアプリだけを動かしたいなら、Wineが便利です。Linux常でWindowsのアプリを動かすことができます。

今回は以上です。LinuxとWindowsの違いと特徴などを解説しました。参考になりますと幸いです。

Blog TOP  Linuxコマンドを勉強したい人向け|Linuxの使い方 記事まとめ

Linux&Linuxコマンドを勉強したい人向けの記事もくじ

用語解説・技術一般

  "UNIXとLINUX"の違いについて解説します
  CUIとGUIの違い・特徴について解説します

サーバリソースを確認するコマンドの使い方

  【Linux】CPU使用率を確認する3つの方法を解説します
  【Linux】topコマンドで,CPU消費の原因を特定する方法
  【Linux】ps実行時に-efオプションを付ける理由について
  【Linux】メモリ使用率を確認する|容量・空きの確認も
  【Linux】ディスク容量を確認する|ディスク容量監視も

ファイル操作に関するコマンドの使い方

  【Linux】ファイルの行数をカウントする方法を解説
  【Linux】文字コード変換ならiconvコマンド1択です
  【Linux】/dev/nullを、エンジニアが使う2つの目的
  【Linux】findのexecオプションの使い方とその注意点
  【Linux】findの結果から圧縮ファイルを作るコマンド
  【Linux】hostsの場所はどこ?→/etc/hostsにあります
  【Linux】touchコマンドで,時刻更新&空ファイル作成

Linux管理者用コマンドの使い方

  【Linux】再起動コマンド(shutdown)の使い方と注意点

よく使う便利なコマンドの使い方

  【Linux】改行なしでechoコマンドを使う時の -nオプション
  【Linux】sleepコマンドの使用例と注意点について解説する
  【Linux】rmコマンドでディレクトリを削除する方法を解説
  【Linux】ファイルを削除するコマンド2選【rm以外もあり】
  【Linux】awkの区切り文字を指定する,-Fオプションを解説
  【Linux】sedで文字列の置換をするeオプションを解説する
  【Linux】dateコマンドのフォーマットとその便利な使い方
  【Linux】大文字から小文字に変換する方法【小文字から大文字も】

シェルの便利機能

  【Linux】コマンド履歴を検索する【Ctrl+r】