ちょっぴりLinuxが語れるようになる基礎知識Linux通へのステップバイステップ(1/2 ページ)

Linuxディストリビューションは数多く、どれを選ぶか悩むところだ。特にここ最近で各ディストリビューターやプロジェクトに動きがあり、数年前とは状況が変わってきている。ディストリビューション選びのポイントとなる部分を整理し、Linuxディストリビューションのいまを掌握しよう。

» 2007年03月19日 08時00分 公開
[ITmedia]

Linuxとディストリビューション

 Linuxを利用するためには、最初に「ディストリビューション」という言葉を正確に抑えておきたい。一般にLinuxを導入する場合、必ずディストリビューションを入手することになるからだ。

英語での意味は以下のとおりになる。

distribute:配布する

distribution:配布物

distributor:配布者


 つまりLinuxディストリビューションとはOS配布物であり、ディストリビューターはメーカー/プロジェクトである。

 Linuxディストリビューションとは、Linuxカーネルに各種ソフトウェアを集め、システムとしての一通りの機能を持ったソフトウェアの集合である(図1)。「Linux」とはそもそもカーネル単体の名称だが、現在ではカーネルを含めたシステム全体を指す言葉としても用いられることが多い。

図1 図1 Linuxディストリビューション

カーネル

 カーネルとは、ハードウェアの管理、プログラムの実行管理、ファイルシステムなど、OSの基本サービスを提供するプログラムである。LinuxカーネルはGPLに従って配布され、誰もが入手/改造/再配布できるようになっている。2007年3月時点でLinuxカーネルの最新バージョンは、2.6.20.3であり、Linuxカーネルのソースは、kernel.orgから入手できる。

 Linuxカーネルは、1991年、当時フィンランドの学生だったリーナス・トーバルズ(Linus Torvalds)氏(現在、The Linux Foundationに所属)がi386のタスクスイッチ*の勉強のために作り始めたプログラムに端を発している。彼はMINIX*を参考にしたOSの基本となるプログラムソースを、「ハッカーが楽しむためのもの」としてネットニュース*に公開した。以来、多くの人々の協力によって開発が進められ、POSIX*準拠を目指すOSとして広く利用されている。

カーネルバージョンの意味が変わった

 ディストリビューションのスペックが紹介されるとき、最初に目につくのがカーネルのバージョンだ。ソフトウェア開発では、新機能をどんどん追加する更新頻度の高い開発版と、機能のバグフィックスなどだけを主に行う安定版が用意されることが多い。Linuxカーネルの開発もそのように行われている。

 これまで安定版と開発版はマイナーバージョン番号によって区別でき、開発版は奇数、安定版は偶数をつける決まりになっていた(図2)

図2 図2 バージョンとその意味

 しかし、2005年3月の2.6.11以降、「2.6.x.y」のようなさらなるメンテナンスナンバーが追加され、「2.6.x」に対して「2.6.x.y」は安全な修正のみを反映させることになった(図3)

図3 図3 Linuxカーネルのバージョン管理

 従来の管理方法に照らし合わせると、「y」のナンバーがないバージョンのみが開発版となり、「y」のナンバーがあるものが安定版ということになるだろう。しかし、これまでのような開発版と安定版をある程度の期間並行して開発する状態ではなく、機能取り込みとメンテナンスのサイクルが極端に縮まった状態の管理方法に変わったので、従来の意味での開発版はなくなった状態である。

2.4 or 2.6?

 現在、主要なディストリビューションでは、2.6系か2.4系のカーネルが搭載されている。2.6系は、2.4系のチューニングといった面が強く、過去のリリースと比べて安定した状態でリリースされたためもあってか、各ディストリビューションとも迅速に移行が進んでいる。

 しかし、2.4系を搭載されているからといって一概に古いとは限らない。主要な変更点が高負荷時の性能向上のため、負荷が少ない環境での利用、個人利用などでは2.4系でも大差はない。また、2.6系でサポートされたハードウェアも、ハードウェアサポート部分を2.6系からバックポート*していることもあるので、2.4系でもきちんとメンテナンスされ、2.6系とほぼ変わりなく使える場合もある。リリース日やメンテナンスアップデートの頻度などを目安とするといいだろう。

このページで出てきた専門用語

タスクスイッチ

複数アプリケーションが同時に動作するように見せるマルチタスクを実現するために、プログラムの実行を切り替えること。またその機能のこと。

MINIX

Andrew S. Tannenbaum教授が開発した学習・研究目的のUNIX互換OS。C言語で書かれたソースコード付きの書籍の形で1987年から販売された。

ネットニュース

電子掲示板システム。テーマごとにニュースグループがあり、インターネットの初期には主流の意見交換の場であった。利用するにはネットニュースを配信しているサーバにニュースリーダー(メールクライアントの機能としても実装されることが多い)と呼ばれるソフトウェアで接続する。

POSIX

IEEEによって定められた、UNIXベースのOSが備えるべき最低限の仕様のセット。Portable Operating System Interface for UNIXの頭文字をとったもので、「ポジックス」と読む。

バックポート

上位バージョンに実装された機能の一部を下位バージョンに実装すること。通常はバージョンが大きくなるにつれて機能が追加されていくが、安定版、開発版と分岐して開発しているプロダクトではよくある。


       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ