見出し画像

Linuxの特徴

カーネルとユーザーランド

ソフトウェアは、基本ソフトウェアと応用ソフトウェアの二つに分かれると説明。
基本ソフトウェアは、さらに二つの領域に分かれる。
それらを「カーネル」「ユーザーランド」という。
それぞれには、以下の特徴がある。

カーネル
カーネルはオペレーティングシステムの中核となる部分で、ハードウェアと直接やりとりするなどもっとも中心的な機能を受け持つ部分です。カーネルはハードウェアの違いを吸収して、プログラムがどのようなハードウェア上でも同じように動作する役割があります。

ユーザランド
OSが動作するのに必要な、カーネル以外の部分のことです。ファイルシステムやファイル操作コマンド、シェルなどの基本的なソフトウェア群を指します。

ユーザランドOSが動作するのに必要な、カーネル以外の部分のことです。ファイルシステムやファイル操作コマンド、シェルなどの基本的なソフトウェア群を指します。
コマンドはユーザランドで動作します。また、LinuxにXWindowSystemとGNOME、KDE、Xfceなどのデスクトップ環境を導入することで、WindowsやMacなどのようにマウス入力による操作が行なえるようになります。

1.3.3シェル前項で
「Linuxはコマンドで操作する」と説明しました。コマンドは文字通り「命令」のことで、さまざまな用途のコマンドがあります。Linuxにはシェルという対話型のコマンド入力環境が用意されています。シェルは入力されたコマンドを理解し、実行します。シェル自体には大きく2つの機能があります。1つは、前述の通りコマンド入力を受け付けることです。もう1つはシェルスクリプトの実行にあります。シェルスクリプトとは、「コマンドの入力を自動化する」ためのものです。1つのファイルにコマンドを1行ずつ記述して作成します。作成したシェルスクリプトを実行することで、コマンドの実行を自動化することができます。また、作成したシェルスクリプトをサーバーの起動時に実行したり、数時間毎に実行したりすることができます。

ログイン
Linuxでは、利用開始時にユーザ名とパスワードを入力します。このユーザ名とパスワードの組み合わせをアカウントといいます。アカウントを使ってLinuxを使い始めることを「ログインする」といいます。ログインするのは、そのコンピュータの利用許可を得るためです。パスワードはログイン名の認証に利用され、例えばログイン名を銀行の口座番号としたとき、パスワードは口座の暗証番号に相当します。

ディストリビューション
1.4.1ディストリビューションの誕生Linuxは日々改良が進み、はじめは単機能しか備えていなかったものが、さまざまなハードウェア上で動くように改良されていき、次第にUNIX互換OSとして機能するまでになりました。
しかし、当初のLinuxはインストール作業が非常に困難で、一部のコンピュータのスキルが高いユーザしか使うことができませんでした。そこで、さまざまな団体がLinuxを使う上で必要なプログラムをまとめ、簡単な手順で手軽にインストールできるようにしました。これがLinuxディストリビューションのはじまりです。このようにLinuxディストリビューションを開発する団体をディストリビューターといい、代表的なLinuxディストリビューターとしてはRedHatやDebianProject、Ubuntuを開発しているCanonicalなどがあり、さまざまな団体によって「Linux」はリースされ続けています。

1.4.2パッケージ
パッケージはLinuxに対して追加機能を提供するものです。従来、応用ソフトウェアの実行をLinux上で行なうにはソースをダウンロードして自らビルドする必要がありました。これは非常に時間と手間がかかります。この問題を解決するため、ディストリビューターの手によりビルドして応用ソフトウェアを簡単に導入できるようにするためにパッケージが作られるようになりました。

パッケージマネージャ
応用ソフトウェアの導入には、複数の応用ソフトウェアやこの動作を補足するライブラリが必要な場合があります。依存するプログラムがさらに別のプログラムを依存しているとなると、それらを正しい場所に正しい順序でインストールしなくてはなりません。さらに開発が盛んなプログラムは、バグの修正や機能改善、セキュリティ脆弱性の修正など常に更新されています。新しいプログラムをインストールするときは、現在稼働している古いプログラムをきれいに削除してインストールします。インストールする作業もさることながら、削除する作業も非常に困難です。そこでパッケージを簡単にインストールしたり、アップデートするパッケージマネージャというものが標準で用意されるようになりました。今日のLinuxディストリビューションには何らかのパッケージマネージャが必ず用意されており、インターネットに接続されていれば最新のパッケージ(と、依存するパッケージやライブラリ)を導入、更新することが容易にできるようになっています。

この記事が気に入ったらサポートをしてみませんか?