Vmlinux
旧来より、ブート可能なカーネルイメージを生成した際、カーネルはまた、zlibアルゴリズムを用い圧縮されている。Linuxカーネルバージョン2.6.30からはこれに加え、圧縮率が高いLZMAやBZIP2アルゴリズムによる圧縮もサポートされている。システムに電源を投入し、BIOSがブートローダを読み込み、ブートローダが圧縮されたカーネルイメージコードを読み込む。このコードからカーネルコードが伸長(展開)されると、いくつかのシステムでは、ブートプロセスが進行するにつれコンソールにドット(.)が何個も表示される。
圧縮ルーチンは、いくつかのアーキテクチャ、とりわけ、i386のようにブート時に読み込めるデータサイズが極端に制限される場合必須であったが、bzImageが開発された現在においては、ブートプロセスにおいては、取るに足らない要素である。
x86アーキテクチャとは異なり、SPARCアーキテクチャにおいては、カーネルイメージはvmlinuxファイル自体を単にgzipで圧縮したものである。これはSPARC Linuxシステムにおいて使用される、SILO(英語版)ブートローダがgzipで圧縮されたイメージを透過的に伸長できるからである。
ブートイメージのファイル名はさほど重要ではなく(なぜなら近年のブートローダはイメージを設定ファイルで指定可能、もしくはブート時に指定可能だからである)、しかし、慣習的には、vmlinuz または zImageとなる場合が多い。