vmlinux
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2020/11/24 16:01 UTC 版)
Linuxシステムにおいて、vmlinuxとは、内部にLinuxカーネル本体を包含する静的リンクされた実行ファイルである。ELF、COFF 、a.outのような実行可能バイナリ形式に準じた形式が利用されるが、通常の実行可能バイナリと異なりカーネル(のexecシステムコール)が対応している形式ではなく、ブートローダーが対応している形式でなければならない。vmlinuxファイルはカーネルデバッグ、カーネルのシンボルテーブル生成、またはその他の用途で利用される。通常、コンパイラが生成するバイナリから、さらに全てのシンボルを取り除き、圧縮をかけ、マルチブート用ヘッダ、ブートセクタ、BIOS用ローレベルブートセットアップルーチン、自己伸長ルーチンなどを追加して最終的に、ブート可能なイメージが完成する(ブート用に付加的な部分を追加し、圧縮(オプション)したカーネルのことをカーネルイメージ[1]と呼んで区別する場合もある)。
注釈
- ^ アーキテクチャによっては、"Decompressing Linux..."の場合もある。
出典
- ^ “カーネル・イメージとは - Linuxキーワード”. 日経ITpro. itpro.nikkeibp.co.jp (2008年2月18日). 2011年8月13日閲覧。
- ^ 「XFS」の記事の「XFSはファイルシステムの先頭ブロックをスーパーブロックとして使っておりブートローダーを先頭ブロックにインストールすることはできない。これはIRIXとの互換性の為であり変更の予定はないとしている。」という記述のこと。
- ^ a b 2009年6月9日にリリースされた2.6.30からは、LZMAやBZIP2アルゴリズムによるカーネルイメージの圧縮がサポートされている[1]。また2010年2月24日にリリースされた2.6.33からは、Lempel-Ziv-Oberhumer (LZO) 圧縮アルゴリズムのサポート (ChangeLog-2.6.33)、2.6.39からはx86アーキテクチャにおいて、LZMA2圧縮アルゴリズムのフリーな実装XZによる圧縮サポートが実装された (Decompressors: Add XZ decompressor module LWN.net)。
- ^ SPARCアーキテクチャ用 arch/sparc/boot/Makefile
- ^ i386アーキテクチャ用 arch/x86/boot/compressed/head_32.S
- ^ x86アーキテクチャ用 arch/x86/boot/compressed/misc.c
- ^ a b
objcopy(1)
– Linux User Commands Manual (en) - ^ x86アーキテクチャ用 arch/x86/boot/compressed/Makefile
- ^ x86アーキテクチャ用 arch/x86/boot/header.S
- ^ GNU Binary Utilities: objcopy
- ^ Documentation/x86/boot.txt
- ^ init/main.c
- ^ “vmlinuz を解凍するための 1f 8b 08 00”. apribase.net (2010年2月26日). 2011年8月13日閲覧。
- ^
readelf(1)
– Linux User Commands Manual (en)
- 1 vmlinuxとは
- 2 vmlinuxの概要
- 3 bzImage
- 4 オブジェクトファイルフォーマット
- 5 脚注
固有名詞の分類
- vmlinuxのページへのリンク