編譯Linux內核內存
不放以前的系統里放什麼地方?另一台計算機里?之後你這個機器啟動時自己跑到那台計算機上要數據啟動完後,在自己跑回來?
initrd 是內核啟動的一個虛擬的磁碟。作用是在 Linux 內核啟動時,不直接進入硬碟上的 root 分區,而是進入內存裡面的虛擬的 root 分區。
這個用意是當內核不能直接讀取硬碟時(比如用了內核沒有自帶的驅動的硬碟、分區。或者 root 分區在網路上)。那麼就可以用 initrd 裡面的驅動來過渡進入正確的 root ,或者乾脆就停在 initrd 模擬的內存檔裡面。
PS:我編譯內核都是 make xconfig ; make ; make moles_install ; make install
前3個不解釋,最好一個其實就是吧編譯好的內核復制到 /boot 裡面。並且根據這個目錄裡面的某些特點。進行一些操作。
Ⅱ linux 內核編譯需要多少空間
配置內核
有了要編譯配置的內核,先來介紹怎麼樣配置內核。具體的步驟分為一下幾 步:
1.在開始配置內核之前,首先需要通過下面的命令清除所有的臨時文件、中間件和配置文件。對於一個剛從網 上下載的內核來說,它肯定是干凈的,這么做只會多此一舉。但是這是一個良好習慣,而且不會有壞結果。
#make mrproper
2. 然後 要了解自己系統的硬體配置情況,比如CPU的類型、主辦晶元、顯卡和音效卡的型號等。
3. 配置 內核選項,用到的命令是:
#make
用到的配置工具有:
◆ config 基於互動式的文本配置界面。每個問題以線形格式出現,並被一個一個地回答,而且一旦作出了回答就不能再修改 了。
◆ oldconfig 同config相似,但是使用原有的配置文件, 而且只會提問有關新內核特性的問題,對於內核升級很方便。
◆ menuconfig 一個文本模式、選單驅動的配置界面。
◆ xconfig 基於Tcl/Tk的X圖形配置界面。
現在開始配置內核,使用的工具為menuconfig。在命令行模式下執行下面的命 令:
#make menuconfig
在閃過幾行字之後就出現內核配置界面。
使用方向鍵在各選項間移動;使用「Enter」鍵進入下一層選單;每個選項上的 高亮字母是鍵盤快捷方式,使用它可以快速地到達想要設置的選單項。在括弧中按「y」將這個項目編譯進內核中,按「m」編譯為模塊,按「n」為不選擇(按空格鍵也可在編譯進 內核、編譯為模塊和不編譯三者間進行切換),按「h」將顯示這個選項的幫助信息,按「Esc」鍵將返回到上層選單。
注 意,如果「make menuconfig」命令失敗,很可能是ncurses庫沒有安裝。
Ⅲ linux 編譯內核 空間不夠怎麼辦我分給linux的盤只有8G
8g按理夠了,如果不行,可以卸載一些不用軟體,也可以動態載入內核。
如果你是學習linux內核,建議不要覆蓋內核,這樣新的不行還可以用舊的,如果是單純的使用,可以覆蓋。
Ⅳ 編譯Linux內核
Kernel packaging:
rpm-pkg - Build both source and binary RPM kernel packages
binrpm-pkg - Build only the binary kernel package
deb-pkg - Build the kernel as an deb package
tar-pkg - Build the kernel as an uncompressed tarball
targz-pkg - Build the kernel as a gzip compressed tarball
tarbz2-pkg - Build the kernel as a bzip2 compressed tarball
下面這些包裝完後,連GLIBC都能正常編譯,編個內核應該是小case了,當然,這些包中有一些內核是不需要的,不過裝上也沒問題
sudo apt-get install flex bison autoconf texinfo build-essential libncurses5-dev gawk
如果你不是x86下的,還需要配cross_compile,和arch
確保你能夠正確編譯linux內核,編好你的bzImage之後,然後用make deb-pkg即可。
具體的可以怎麼編
在源代碼目錄下,打一個make help就行了
Ⅳ 自己編譯linux內核真的可以加速系統嗎
一定程度上說:是的。
自己編譯內核可以作深度裁剪定製,把不需要的東西去掉,這樣至少在內存佔用、存儲空間、啟動速度上是有優勢的。
但前提是你得知道自己在干什麼。
Ⅵ 在LINUX中可否把應用程序都編譯到內核中,讓系統啟動後完全在內存中運行不讀硬碟!
不行,
內核是內核,只提供最基本的服務。很多服務可以編譯成模塊裝入內核,但是模塊也不是無限多的。你編譯過內核嗎?內核文件不大,解壓出來有200多M吧,如果全部功能編譯的話,一般電腦沒有幾天可能下不來。
把程序編譯到內核,不是不行,不過你的程序要修改。如果你能為linux內核提供代碼的水平,估計離你說的就不遠了。
你的想法有點...... 在你硬碟上讀點東西就那麼吝嗇嗎?
我Linux4G多的文件,分了6G數據空間,還有2G的交換文件,我都沒心疼。
Ⅶ 編譯linux內核要多久
至於說編譯 Linux 內核需要多長時間,這個和電腦的整體性能(例如:CPU主頻、內存大小等)有很大關系。我的親身體會就是:計算機性能差的,編譯 Linux 內核需要一個多小時的都有(以前在老舊的電腦上就需要這么長的時間)。
Ⅷ 大家編譯一個x86的Linux內核需要多長時間
make 時加參數 -jX
X 是你的 CPU 核心數量 +1 。
可以加快你的編譯速度。
我的本本 T5450 編譯需要 10 分鍾。我的內核是針對機器剪裁了的。不剪裁的全功能內核貌似我就需要 30 分鍾了。
Ⅸ Linux 0.11版內核內存問題
我上網上查了點資料不知道有用不
以win32程序為例。
程序執行時,操作系統將exe文件映射入內存。exe文件格式為頭數據和各段數據組成。頭數據說明了exe文件的屬性和執行環境,段數據又分為數據段,代碼段,資源段等,段的多少和位置由頭數據說明。也就是說,不僅僅只是代碼段和數據段。這些段由不同的編譯環境和編譯參數控制,由編譯器自動生成exe的段和文件格式。當操作系統執行exe時,會動態建立堆棧段,它是動態的,並且屬於操作系統執行環境。
也就是說,程序在內存的映射一個為exe文件映射,包括數據段、代碼段等它是不變的。
另一個為堆棧段,它是隨程序運行動態改變的。
其他操作系統會有他自己的執行方式,但大體如上。
http://www.17lamp.net/forum/lamp/20081028122208
http://blog.csdn.net/lijingze2003/archive/2005/04/09/340804.aspx