linux的核心檔案vmlinuz

2022-03-27 09:32:53 字數 1008 閱讀 6844

vmlinuz是可引導的、壓縮的

核心。「vm」代表 「virtual memory」。linux 支援

虛擬記憶體

,不像老的作業系統比如dos有640kb記憶體的限制。linux能夠使用硬碟空間作為虛擬記憶體,因此得名「vm」。vmlinuz是可執行的linux核心,它位於/boot/vmlinuz,它一般是乙個

軟鏈結。

vmlinuz的建立有兩種方式。

一是編譯核心時通過「make zimage」建立,然後通過:

「cp /usr/src/linux-2.4/arch/i386/linux/boot/zimage /boot/vmlinuz」產生。zimage適用於小核心的情況,它的存在是為了向後的相容性。

二是核心編譯時通過命令make bzimage建立,然後通過:「cp /usr/src/linux-2.4/arch/i386/linux/boot/bzimage /boot/vmlinuz」產生。bzimage是壓縮的核心映像,需要注意,bzimage不是用bzip2壓縮的,bzimage中的bz容易引起誤解,bz表示「big zimage」。 bzimage中的b是「big」意思。

zimage(vmlinuz)和bzimage(vmlinuz)都是用gzip壓縮的。它們不僅是乙個

壓縮檔案

,而且在這兩個檔案的開頭部分內嵌有gzip

解壓縮**。所以你不能用gunzip 或 gzip –dc

解包vmlinuz。

核心檔案中包含乙個微型的gzip用於解壓縮核心並引導它。兩者的不同之處在於,老的zimage解壓縮核心到低端記憶體(第乙個640k), bzimage解壓縮核心到高階記憶體(1m以上)。如果核心比較小,那麼可以採用zimage 或bzimage之一,兩種方式引導的系統執行時是相同的。大的核心採用bzimage,不能採用zimage。

vmlinux是未壓縮的核心,vmlinuz是vmlinux的壓縮檔案。

vmlinux-2.4.20-8是未壓縮核心,vmlinuz-2.4.20-8是vmlinux-2.4.20-8的壓縮檔案。

檔案讀取 LINUX核心

file i o in kernel module by flyduck 2001 03 21 define kernel define module include include include include include include include define eof 1 defin...

linux核心檔案讀取

平時 網路部分的東西碰的多些,這塊一開始還真不知道怎麼寫,因為肯定和在 使用者空間下是不同的。google過後,得到以下答案。一般可以用兩種方法 第一種是用 系統呼叫。第二種方法是filp open 等函式。下面分別來說下這兩種方法。1 利用系統呼叫 sys open,sys write,sys r...

linux核心讀寫檔案

在vfs的支援下,使用者態程序讀寫任何型別的檔案系統都可以使用read和write著兩個系統呼叫,但是在linux核心中沒有這樣的系統呼叫我們如何操作檔案呢?我們知道read和write在進入核心態之後,實際執行的是sys read 和sys write,但是檢視核心源 發現這些操作檔案的函式都沒有...