[復刻版]のlinux-grubの歴史紹介

linux-grubの歴史紹介

HTTPS:// baijiahao.baidu.com/s?id=1623284658075331489&wfr=spider&for=pc 

もパスワードを変更するために使用されます。..

 

 

GNU GRUBは、非常に強力なブートローダーがオペレーティングシステムのカーネルソフトウェアへの荷重伝達制御を担当して実行するコンピュータの起動時に、という最初のプログラムです。

 

エーリッヒ・ブーリンはGNU Hurdのを開始するためにユタ州のマッハ4マイクロカーネル大学(今GNUマッハとして知られている)にしようとしたときにGRUBは1995年に始まりました。彼らはあなたのPCを起動するために互換性のない方法が多数参加しないことを決めたので、エーリヒとブライアン・フォードは、マルチブート仕様を設計しました。

 

既存の機能を破ることは困難である場合には、今後数年間で、GRUBは多くのニーズを満たすために拡張し、しかしすぐにそれに追いつくために拡大するように設計されていることが発見され、我々はそれ以上の変更なしに達していません。

GRUB2

 

およそ2002年には、義則K. OKUJIは(GNU GRUB予備汎用プログラミングアーキテクチャ)研究蛹に始まった、目的はそれはきれい、より安全、より強力でより強力な作り、GRUBのコアを書き換えます。

 

ランキンピューパが最終的にGRUB 2に改名された、GRUBのオリジナルバージョンは、GRUBレガシーに名前が変更されました。

 

GRUBレガシーは、低メンテナンスのために続けますが、最後のバージョン(0.97)は、執筆時点では、それは別のバージョンがあるだろうとは考えにくい、2005年に完成しました。

 

GNU / Linuxディストリビューションは、GRUB 2は、限られた範囲で使用される開始について2007年までに、2009年末までに、デフォルトでは、複数のメジャーリリースをインストールします。

 

GRUBの機能

 

GRUBの主な目標:

 

1、使用者は、基本的な機能はシンプルかつ明確でなければなりません。

 

2、豊富な機能を備えた、カーネルパラメータのカスタム設定の多様性をサポートします。

 

図3は、下位互換性のFreeBSD、NetBSDの、OpenBSDのとLinuxを起動するために使用しました。チェーンロード機能により、独自のカーネル(例えばDOS、Windows NTおよびOS / 2など)のサポート。

 

特定の互換モードに加えて、コアが全マルチステートスタートアップガイドの仕様のために同じになり、(チェーンロードはフォーマットおよびLinux搭載しました)。

 

GRUBは、次の機能があります。

 

図1に示すように、複数の実行可能形式を識別する:a.outのは、多くのバリエーションをサポートELF。シンボルテーブルがロードされます。

 

2、非マルチブートカーネルをサポートしています。多くのマルチブート互換性の無料の32ビットカーネル(主にFreeBSDの、NetBSDの2、OpenBSDのおよびLinux)のサポートの欠如。また、他のチェーンの負荷にブートローダーをサポートしています。

 

図3に示すように、複数のモジュールをロードする:マルチブート機能搭載複数のモジュールを完全にサポートします。

 

4、ローディングプロファイル:ガイド支持体が所定の人間可読テキストコマンドプロファイルを有します。また、動的に別の構成ファイルと画像ファイルに埋め込まれたデフォルトのGRUBの設定ファイルを読み込むことができます。コマンドのリストは、(コマンドを参照)、コマンドラインのサポートのスーパーセットです。コンフィギュレーション・ファイルの構成の一例を提供します。

 

5、メニューインタフェースを提供します。インターフェイスは、メニューリストにプログラム可能なタイムアウト設定のbootコマンドを使用することができます。ガイドのエントリの数は、固定された制限、数百のスペースの現在の実装ではありません。

 

かなり柔軟なコマンド・ライン・インターフェースは、任意のプリセットコマンドを編集したり、新しいコマンドセットを記述するためにゼロからスタートするために使用することができ、メニューからアクセス:6は、柔軟なコマンドラインインターフェイスを持っています。なし設定ファイル場合は、GRUBはコマンドラインに返されます。コマンドリストは、構成ファイルのサポートのサブセットです。編集コマンドは、ディレクトリのコンテキストで完了TABコマンド、機器、パーティションおよびファイルと、(bashの特性のコマンドライン編集を参照)、コマンドラインをbashに非常に類似しています。

 

7、複数のファイルシステムタイプのサポートは:透過的に多くのファイルシステムタイプと便利な表示ブロックリスト記法をサポートしています。現在サポートされているファイルシステムの種類はアミーガ高速、cpioの(ビッグエンディアンとリトルエンディアンのビン、ODCとnewc変種)(RAID0、RAID1、RAID10、gzipとLZOを含む)ファイルシステム(AFFS)、AtheOSのFS、BeFS、のbtrfs、Linuxのです、JFS、Minixのfsを(バージョン1、2及び3)、NILFS2、NTFS(ジョリエット、ロックリッジ、および複数のファイルを含む)EXT2 / EXT3 / ext4の、DOS FAT12 / FAT16 / FAT32、exFATの、HFS、HFS +、ISO9660 (圧縮を含む)、ReiserFSの、ROMFS、アミーガインテリジェントファイルシステム(SFS)、Squash4、タール、UDF、BSD UFS / UFS2、XFS、およびZFS(含むlzjb、GZIP、ZLE、ミラー、ストライプ、raidz1 / 2/3及びAES-CCMとAES-GCM)での暗号化)があります。

 

8、自動解凍をサポートしています。あなたはgzipやxz3圧縮ファイルを解凍することができます。この関数は(すなわち、すべての関数は、指定されたファイルの内容を操作が圧縮されていない)ユーザに対して自動的かつ透過的です。これは非常にフロッピーディスクが大きな利点である、特にため、ファイルサイズとロード時間が短縮されます。特定のカーネルモジュールは、圧縮された状態でロードする必要があり、解凍モジュールを避けるために、異なる負荷コマンド・モジュールを指定することが可能です。

 

図9に示すように、デバイス上のデータへのアクセスがインストールされている:かかわらず、ルートデバイスの設定、ソフトまたはハードディスクのいずれかまたはすべては、BIOSから識別データを読み取るサポート。

 

ドライブのジオメトリ翻訳の独立した10、:他の多くの異なったブートローダーで、GRUBの変換は、特定のドライブは問題ではありません。インストールし、変換されたドライブが別の変換に変換することができます実行し、GRUBの設定は、任意の悪影響や変更はありません。

 

11は、インストールされているすべてのRAMを検出:GRUBは、一般的にPC互換機にインストールされているすべてのRAMを見つけることができます。これは、すべてのメモリ領域を見つけるために、高度なBIOSクエリ技術を使用しています。マルチブート仕様以来、この情報ではないすべてのカーネルの使用、(マルチブート仕様は動機を説明参照)、GRUBはやる人のためにそれを提供します。

 

12、論理ブロック・アドレス・モードをサポートします(CHSモードと呼ばれる)は、従来の磁気ディスクコール、BIOS 1024シリンダにアクセスすることができない幾何学的変換の問題は、このように少なくとも508メガバイトのスペース、および8 GBまでへのアクセスを制限します。すべてのマシンは、標準的なインタフェースを使用していないので、GRUBは普遍的に、この問題を解決することはできません。しかし、いくつかの新しいマシンが新しいインターフェース、すなわち、論理ブロックアドレス(LBA)モードを有します。GRUBは自動的にLBAモードが利用可能であることを検出し、かつ利用可能な場合、それを使用しています。LBAモードでは、GRUBは、ディスク全体にアクセスすることができます。

 

13は、ネットワークブートをサポートしています。GRUBは、基本的には、ディスクベースのブートローダーであるだけでなく、ネットワークをサポートしています。あなたは、ネットワークからオペレーティングシステムイメージをロードするためにTFTPプロトコルを使用することができます。

 

14は、リモート端末のサポート:コンソールを持っていないコンピュータをサポートするためには、GRUBを使用すると、リモートホストからGRUBを制御することができそうという、リモート端末のサポートを提供します。現在、唯一のシリアル端末のサポートを実装しています。

 

改善されたGRUB2

 

図1に示すように、手動で編集するには、GRUBの/boot/grub/menu.lstを文書に直接スタートアップファイルを編集することができるが、中には、/ etc / default / grubのGRUB2グラブでプロファイルを有し、次いで、編集は、対応するオプションは、GRUB-mkconfigを使用して生成されますgrub.cfgファイル。

 

2、GRUB2ブートメニュー項目が自動的に生成されたから/ブーツ、ないのmenu.lst構成を開始しています。

 

最初のパーティションが現在1ではなく0であるが、最初のデバイスは、HD0として、カウントを開始することが0:3は、パーティション番号を変更します。

 

4、GRUB2でカスタマイズ可能なインターフェイス、より柔軟な、テーマのサポート。

 

5、利用可能なコアと使用可能なハードディスクシステムの自動検索。

おすすめ

転載: www.cnblogs.com/jinanxiaolaohu/p/12348672.html