【図解】Linuxカーネルって?WSLの役割とは?

Windowsで、PythonやRubyの学習をする際、Windows上でLinuxを動かすために、WSL2のインストールが必要になるとよく言われる。

そもそもLinuxって、たまに聞くけど一体何なのか?

整理してみた。

OSとは?カーネルとは?

OS(オペレーティングシステム)

パソコン全体を管理し、ユーザーとアプリに使いやすい環境を提供する。

例:Windows, macOS, Android

構成要素:カーネル + 各種アプリケーション + システムツール

カーネル

OSの中核部分として、ハードウェアとソフトウェアをつなぐ。

例:Linuxカーネル, Windows NTカーネル, XNUカーネル

構成要素:CPU管理, メモリ管理, デバイス制御, ファイル管理

OSとカーネルの関係

図解すると以下のようなイメージ。
カーネルはあくまでOSの一部。

OSとカーネルの関係イメージ

私はずっとLinuxはOSのことだと思っていたが、Linuxはカーネルの名称だった。

以下はOSとカーネルの組み合わせ表。

OSカーネル
WindowsWindows NTカーネル
macOSXNUカーネル
Linux系(Ubuntu, Debian, Fedora など)Linuxカーネル
OSとカーネルの組み合わせ

よく耳にするUbuntsuはOSの名称。UbuntsuのカーネルがLinuxという関係性になる。

プログラミング学習におけるWSLの役割

WSLとは

WSL(Windows Subsystem for Linux)は、Window上でLinux操作できる仕組み。

以下のプロンプトで簡単にインストールできる。

wsl --install

 

WSLの役割

macOSには、開発ツールをすぐに使える機能が整備されており、Linuxと同様のパッケージ管理ができる。

一方、Windowsには、標準機能として開発ツールやパッケージ管理システムが備わっていない。
具体的には、Python開発やソフトのインストールをすることがそのままでは難しい。

そこで、WSLが大事な役割を果たす。
下図のように、WindowsOSにWSLを導入することで、LinuxカーネルやUbuntsuを使えるようになる。

結果として、Linuxと同様に開発ツールやパッケージ管理ができるようになる。

Windows上でのLinuxカーネルの動作イメージ

 

WSLの役割がクリアになっていないので、理解を深めていきたい。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


PAGE TOP