ARM Linux 上的核心初始化引數¶
以下文件描述了核心初始化引數結構,也稱為“struct param_struct”,它用於大多數 ARM Linux 架構。
此結構用於將初始化引數從核心載入器傳遞到 Linux 核心,並且在核心初始化過程中可能很短暫。 一般來說,不應在 arch/arm/kernel/setup.c:setup_arch() 之外引用它。
其中列出了很多引數,下面將對其進行描述
- page_size
此引數必須設定為機器的頁面大小,並且將由核心檢查。
- nr_pages
這是系統中記憶體頁面的總數。 如果記憶體已分組,則此項應包含系統中的頁面總數。
如果系統包含單獨的 VRAM,則此值不應包含此資訊。
- ramdisk_size
這現在已過時,不應使用。
- flags
各種核心標誌,包括
位 0
1 = 以只讀方式掛載根目錄
位 1
未使用
位 2
0 = 載入 ramdisk
位 3
0 = 提示 ramdisk
- rootdev
要掛載為根檔案系統的裝置的主/次編號對。
- video_num_cols / video_num_rows
這兩個引數共同描述了虛擬控制檯或 VGA 控制檯字元大小的字元大小。 它們不應用於任何其他目的。
通常,最好將它們設定為標準 VGA,或與您的 fbcon 顯示器等效的字元大小。 這樣可以正確顯示所有啟動訊息。
- video_x / video_y
這描述了 VGA 控制檯上游標的字元位置,否則未使用。(不應用於其他控制檯型別,也不應用於其他目的)。
- memc_control_reg
基於 Acorn Archimedes 和 Acorn A5000 的機器的 MEMC 晶片控制暫存器。 不同的架構可能會以不同的方式使用它。
- sounddefault
Acorn 機器上的預設聲音設定。 不同的架構可能會以不同的方式使用它。
- adfsdrives
ADFS/MFM 磁碟的數量。 不同的架構可能會以不同的方式使用它。
- bytes_per_char_h / bytes_per_char_v
這現在已過時,不應使用。
- pages_in_bank[4]
系統記憶體的每個 bank 中的頁面數(用於 RiscPC)。 這旨在用於物理記憶體從處理器角度來看不連續的系統。
- pages_in_vram
VRAM 中的頁面數(用於 Acorn RiscPC)。 如果無法從硬體獲取影片 RAM 的大小,則載入程式也可以使用此值。
- initrd_start / initrd_size
這描述了初始 ramdisk 的核心虛擬起始地址和大小。
- rd_start
軟盤上 ramdisk 映象的起始地址(以扇區為單位)。
- system_rev
系統修訂號。
- system_serial_low / system_serial_high
系統 64 位序列號
- mem_fclk_21285
21285(footbridge)的外部振盪器的速度,它控制著記憶體匯流排、定時器和序列埠的速度。 根據 cpu 的速度,其值可以在 0-66 MHz 之間。 如果未傳遞任何引數或傳遞了零值,則在 21285 架構上,預設值為 50 Mhz。
- paths[8][128]
這現在已過時,不應使用。
- commandline
核心命令列引數。 詳細資訊可以在其他地方找到。