我正在爲運行uClinux 2.4的ARM平臺構建內核,並在Linux配置下的「General Setup」下有一個選項,名爲「m68knommu-style attached romfs in RAM support」。我的ARM組裝技能有點有限,但據我所知,如果啓用此選項,ROMFS將被複制到內核BSS的末尾。將ROMFS附加到RAM中意味着什麼?
這是什麼目的?
我正在爲運行uClinux 2.4的ARM平臺構建內核,並在Linux配置下的「General Setup」下有一個選項,名爲「m68knommu-style attached romfs in RAM support」。我的ARM組裝技能有點有限,但據我所知,如果啓用此選項,ROMFS將被複制到內核BSS的末尾。將ROMFS附加到RAM中意味着什麼?
這是什麼目的?
正如您正確指出的那樣,該選項會將附加到內核映像的romfs重定位到.bss節的末尾。這允許系統從romfs作爲其根文件系統啓動。
以上不完全正確;我相信我確實發展了這個變化,如果不是的話我肯定會使用它。如上所述,該功能支持連接到內核映像的romfs文件系統 - 兩者都放在RAM中。然後這個選項可確保romfs文件系統自動評估其大小並將其移至RAM的保留區域(以及通過MTD RAM驅動程序傳遞的適當指針)。
沒有這個改變,它仍然有可能用完RAM;你只需要讓你的引導程序把它放在預定的位置並傳入適當的內核選項。這個變化增加的一個重要特性是能夠以Coldfire構建的方式擁有單一的,統一的內核+文件系統鏡像。
請注意,它只在你的head-platform有適當的改變時才起作用,正如我記得 - 我認爲它可能只適用於NetSilicon NS7520。
有趣,但它已經啓動romfs作爲根啓動沒有這個選項。 – 2009-08-20 08:21:30
是的,但是該選項允許您使用根文件系統在RAM之外運行,而不是從外部存儲中運行(可能會提高執行速度)。如果沒有選擇,我假設情況並非如此。 – 2009-08-20 08:39:01
由於內存不足,您也可以更新閃存,而不用擔心執行/擦除閃存扇區。 – Robert 2009-08-24 18:06:17