啟動管理器和本文件由 André Fischer 編寫,現由 ETH SVN 程式碼庫 在 ETH 許可證 下維護。那裡七個相關的檔案以“BootManager”開頭。以前位於 ETHZ 上的 OCP 伺服器上的頁面仍然可以從 WayBack 存檔 獲取。
Bluebottle 啟動管理器及其與類似產品的關係 - 2008 年 2 月 13 日

啟動作業系統可以看作是三個過程的序列
▪ 以機器為中心的程序:BIOS 定位可啟動卷
當計算機開機時,計算機的 BIOS 會找到使用者在 BIOS 設定中定義的主可啟動裝置,並將控制權轉移到主引導記錄 (MBR),即啟動捲上第一個磁軌的第一扇區 (512 位元組)。隨著固態裝置/磁碟與傳統硬碟的競爭,更普遍的術語“卷”優於“硬碟”、“裝置”或“HDD”。DOM(磁碟模組)和快閃記憶體驅動器也是線性組織的大容量儲存裝置。由於快閃記憶體驅動器中沒有任何機械驅動,因此這個名稱是一個誤稱。事實上,分割槽有時被稱為“卷”,但這似乎不合適。
卷要麼已分割槽,要麼只有一個分割槽。後者的情況,即卷可以被稱為“超級軟盤”,這裡不予考慮。術語“塊”,通常在 Bluebottle 中使用(見 LBA 邏輯塊地址),等效於“扇區”,它與硬碟的物理形狀相關。一個塊儲存 512 位元組。分割槽要麼是主分割槽,要麼是擴充套件分割槽。後者是一個容器,可以容納一個或多個邏輯驅動器。根據微軟的說法,邏輯驅動器與主分割槽的功能相同,只是它們不能用於啟動作業系統。對於 AOS 系統,術語“邏輯驅動器”更適當地被替換為“邏輯分割槽”,因為容器是透明的。
備註
AMI、Asus、Award、Gigabyte、Intel、Phoenix 和其他 BIOS 的行為各不相同,並存在許多版本。對 USB 的不同級別支援進一步複雜化。一些 PC 可以從 USB 啟動,而另一些則有 USB 但不能從 USB 啟動。當從 USB 裝置啟動失敗時,要麼是 PC 出現故障,要麼是裝置出現故障。硬體和軟體存在於無數種組合中,因此很難或不可能預測啟動管理器在特定環境中的行為。以下文字散佈著在使用各種產品品牌時遇到的特殊情況的示例。儘管存在這些困難,啟動管理器已成功用於許多 Shuttle、Qbic 和 ASUS 機器以及英特爾主機板。
▪ 以啟動管理器為中心的程序:使用者選擇要啟動的分割槽。
啟動作業系統的傳統方式是載入並執行 MBR 中的程式碼,然後載入並執行“活動”分割槽的分割槽引導記錄 (PBR) 中的程式碼,如 MBR 中的分割槽表中所述。此概念僅適用於主分割槽,不適用於邏輯分割槽,並且會被此啟動管理器忽略。此啟動管理器提供的替代方案是載入並執行另一個卷的 MBR,就像 BIOS 將控制權轉移到啟動卷的 MBR 時一樣。
MBR 包含啟動管理器階段 1。鑑於 MBR 的體積小,階段 1 只做了載入和將控制權轉移到位於第一個卷磁軌中的階段 2 的工作,緊隨 MBR 之後(見下面的第 1 節)。階段 1 還透過一個唯一的簽名驗證載入的階段 2 是否有效。
階段 2 接收控制權後,它會顯示一個可供啟動的作業系統的文字選單。選擇目標作業系統會導致啟動。它也準備自動啟動上一次重啟前選擇的作業系統(見使用者友好性)。
在系統啟動時,只有 BIOS 驅動程式可用於訪問卷,幸運的是,現代 BIOS 包含 P-ATA、S-ATA、ATAPI 和 USB 驅動程式,足以從各種卷啟動作業系統。Firewire BIOS 支援目前很少見,尚未探索。啟動管理器在 BIOS 支援擴充套件 INT 13h 時支援邏輯塊地址 (32 位 LBA) 模式。簡單 INT 13h 的 CHS 模式要求 PBR(任何分割槽的第一個塊)駐留在 8.4 GB 邊界以下。32 位 LBA 模式使得可以定址 2 TB 的儲存空間。不支援 48 位 LBA 模式。BIOS 設定控制定址模式。
▪ 以作業系統為中心的程序:PBR 將控制權轉移到特定於作業系統的引導載入程式,該引導載入程式定位並載入核心。作業系統啟動。
例如,Bluebottle 引導載入程式 OBL.Bin 位於分割槽的開頭,它會定位並載入與啟動卷特徵匹配的核心,即
▪ P-ATA/S-ATA 大容量儲存裝置上的 AosIDE.Bin
▪ ATAPI CD-ROM 上的 AosIDE.Bin,用於生成 Live CD - https://en.wikipedia.org/wiki/Live_CD
▪ USB 大容量儲存裝置上的 AosUSB.Bin,用於生成 Live USB - https://en.wikipedia.org/wiki/LiveUSB
Trace 是引導載入程式放棄控制權後執行的第一個核心模組。直到 2007 年底,執行的第一個核心模組是 Machine。
非侵入式多重多啟動管理器,旨在控制每個機器啟動時由 BIOS 識別的最多 8 個捲上的最多 12 個主分割槽或邏輯分割槽。
可以與存在於其他捲上的其他啟動管理器共存。檢測卷的 MBR 中 GAG、GRUB、LILO 和 Windows 的存在。
使用 Bluebottle 安裝,也使用與安裝 Bluebottle 相同的 Live CD 安裝在各種捲上
▪ 可以從包含的 BootManager.iso 檔案燒錄可啟動的 CD-ROM
▪ 可以從包含的 BootManager.Bin 檔案建立可啟動的軟盤
▪ 或直接使用 WMInstaller 安裝在卷的 MBR 上
保留 MBR 的分割槽表的完整性和 Windows Vista 在 MBR 中使用的磁碟簽名的完整性。
不需要專用分割槽。
可以安裝在任何捲上並從中執行,包括內部或外部、固定或可移動卷,包括 USB-FDD 和 CD-ROM。
能夠啟動安裝在 2 TB 邊界以下分割槽中的作業系統(32 位 LBA 模式)。
將日常工作中的易用性與與普遍存在的外部 USB 和其他儲存裝置相關的機器裝置和卷控制的非常專業的檢查相結合。
用匯編語言(Nasm 語法)編寫,開放原始碼包含在 Bluebottle 版本中。
本文件詳細說明了它與其他一些競爭的啟動管理器的關係,以及它如何與這些啟動管理器共存。
Bluebottle 啟動管理器是圍繞傳統 MBR 設計的,傳統 MBR 出現在大多數機器上,在分割槽表中為四個 16 位元組的分割槽表條目提供空間。擴充套件分割槽可以使用一個條目,邏輯分割槽可以連結到該條目,數量不受限制。沒有考慮像 Ranish Partition Manager 這樣的具有另一個分割槽表組織的啟動管理器,該組織用於突破 4 的限制。也沒有考慮提議的 Intel EFI 標準。
1. 給定捲上的物理位置
它包括 LBA=0 處的 MBR 和位於“磁軌 0”剩餘空間中的少量塊。該範圍內的塊通常保持未使用並填充 0,除非安裝了第三方啟動管理器。例如,GRUB 和 Boot-US 就是這種情況。“磁軌”與卷的物理組織有關,因為它曾經存在於早期。如今,每磁軌扇區數量是一個邏輯值。
第一個分割槽通常在安裝作業系統期間建立和格式化,這會修復使用的第一個 LBA。在大多數情況下,會格式化一個出廠全新卷並預安裝作業系統。使用的第一個 LBA 編號會根據卷幾何形狀而異,更準確地說,是每磁軌的扇區數量。以下值可以作為第一個使用的 LBA 編號觀察到
▪ LBA = 2048 在大容量捲上,例如安裝了 Windows Vista 的卷
▪ LBA = 63 是 USB 和 HD 卷 < 100 GB 的標準
▪ LBA = 32 在 CD-ROM FDD 模擬(見下一節)和出廠全新 ZIP 100 捲上
▪ LBA = 16 在出廠全新 32 MB 磁碟模組 (DOM) 上
目前,程式碼和資料佔用 13 個塊,兩個塊專用於工作區。
2. 可以安裝它的卷
它可以安裝在 PC 的任何捲上並從中執行,包括內部或外部、固定或可移動卷。這已在各種介質上進行了測試:3.5 英寸軟盤(僅限 USB-FDD)、2.5 英寸和 3.5 英寸 HDD(P-ATA、S-ATA)、模擬 FDD 的 CD-ROM(使用 Bluebottle、Nero、Magic ISO 燒錄)、USB 快閃記憶體(SD、CF)、固態磁碟(例如 DOM)和 USB-ZIP(僅限 Iomega ZIP 100 MB 測試)。它可以獨立安裝,無需對捲進行分割槽或安裝作業系統,正如從列出的軟盤中可以理解的那樣,該軟盤的容量極小,僅為 1.44 MB。當它獨立安裝在 CD-ROM 或 USB-FDD 上時,它可以使用,而不會干擾通常的啟動卷的 MBR 或啟動管理器。可以稍後決定是否將其安裝在通常的啟動捲上。它是通用的,因為它可以安裝在同一臺機器的多個捲上,因此它有資格成為多重多啟動管理器。
它安裝在其上的每個卷(前提是 BIOS 可訪問/可啟動,見引言中的備註)都可以控制機器,以便啟動特定的作業系統。顯然,BIOS 設定中的裝置優先順序順序將定義要首先啟動的卷以及訪問它們的順序。
託管 Bluebottle 分割槽的卷
Bluebottle 的佔用空間非常小,這意味著在一個相當大的捲上,您會發現多個 Bluebottle 分割槽,可能與其他作業系統共存,或者在一個小尺寸捲上只有一個分割槽,從最小 62MB 開始。在後一種情況下,USB-HDD 快閃記憶體(U 盤)是託管整個作業系統及其應用程式的理想儲存介質。無需將笨重的個人電腦拖到辦公室或出差。只需將 U 盤插入個人電腦並啟動 Bluebottle。鑑於快速的資料傳輸、高容量和其他技術進步,U 盤越來越受歡迎。只要 BIOS 和 USB 裝置本身支援從 USB 啟動,您就可以接管機器,而無需訪問(寫入!)機器的內部儲存,也無需在內部硬碟上進行永久安裝。如果無法從 USB 啟動(例如,舊的 BIOS 可能禁止它),則可以從 CD-ROM 或 USB-FDD 啟動以引導 USB 裝置(請參閱第 5 節)。
這裡值得一提的是一種特殊情況:在非常小的捲上,比如 64 或 128MB,不僅難以想象有多個分割槽,而且一個工作的 Bluebottle 只能勉強容納,沒有空間存放使用者資料。在這種情況下,最好格式化一個沒有核心和程式的單一分割槽。這樣的分割槽僅用於資料儲存,不可引導。但是,它會顯示在分割槽列表中。
BIOS 卷檢測和列舉
在 Boot Manager 控制下,USB 裝置受 BIOS 條件限制,BIOS 會檢測和列舉它們。請參閱“Compaq、Intel、Phoenix BIOS 啟動規範 1.1”。在這方面,BIOS 表現出不友好的行為,因為卷列舉取決於不同卷的特性:一些被識別,另一些則沒有。
卷從左到右排列,可以辨別出兩組:
▪ 被識別為 80h、81h、82h、... 的硬碟 - 傳統的“固定”磁碟,現在
包括支援變更行的可移動媒體裝置
▪ 被識別為 00h 的 FDD - 傳統的“可移動”磁碟(CD-ROM、USB-FDD、USB-ZIP)。
僅考慮其中一個:當它是引導裝置時,它將是 CD-ROM;如果它被 BIOS 識別為 USB-FDD,它將是 USB-FDD。
引導卷始終顯示在最前面,其型別(硬碟或 FDD)決定了哪組首先列出。最多可以同時控制 8 個卷。在一個大量廉價且無處不在的外部 USB 儲存裝置可以連線到 PC 的時代,這是一個重要的設計考慮因素(請參閱第 3 節)。
從 CD-ROM(模擬 FDD)啟動
CD-ROM 必須符合 El Torito 可引導 CD 格式,使用 CD 上的檔案模擬軟盤。BIOS 將引導卷識別為 00h,它排在第一位,並且在它的組中是唯一的,之後是 ATA 硬碟和 USB-HDD。包含的 BootManager.iso 檔案是分發 Bluebottle 啟動管理器的最佳載體。
從 USB-FDD 啟動
軟盤只能在載入到 USB-FDD 中時使用。考慮到現在的 PC 很少配備傳統的 FDD,這些裝置不再受支援,並且被簡單地忽略。如果存在 FDD,則無需在 BIOS 設定中停用它。
從內部 P-ATA 硬碟啟動
BIOS 將引導卷識別為 80h,然後是其餘的 ATA 硬碟,最後是 USB-HDD。
從外部 USB-HDD 或 USB-ZIP 啟動
BIOS 將引導卷識別為 80h,然後是 ATA 硬碟,最後是其餘的 USB-HDD。
在一臺機器上,卷被標記為“n.a.”,表示“不可訪問”(沒有對此奇怪情況的解釋,BIOS 返回了正確的卷計數,但無法訪問它們)。
當高速 USB 2.0 裝置連線到 USB 2.0 集線器時,此裝置以 USB 1.1 速度受支援 - 12MB/s。只有在作業系統安裝驅動程式之後,才會建立高速資料傳輸。在 Disk2go 裝置上可以觀察到速度差異,該裝置以綠色 LED 訊號表示 12MB/s 速度,在高速時以紅色亮起。
BIOS 啟動卷順序由 BIOS 設定控制
根據 BIOS,設定透過按 DEL、PF2 或 PF1 鍵呼叫。啟動卷順序可以更改。在修改設定時,請記住停用 FDD,如果提供“即插即用作業系統”選項,請選擇“否”。或者,可以保持 BIOS 設定不變,並在呼叫 BIOS 啟動選單後選擇啟動卷(通常在系統啟動時按 ESC 或 PF8 鍵,具體取決於 BIOS)。
請參閱機器隨附的使用者指南(BIOS 設定部分)。
對大卷大小的支援
LBA定址方案用於每個分割槽表條目中保留的 32 位。給定 512 位元組的塊大小,最多可以定址 2'048 GB 的卷。啟動管理器還可以透過將 LBA 對映到其 CHS 等效項來使用 CHS 定址方案。測試擴充套件 INT 13h 支援的存在指示是否需要對映。當使用 CHS 定址方案(使用 24 位地址)時,卷大小限制為 8GB,這在當今的環境中很少見。
3. 獨立於主機作業系統
只要 PC 和連線的 USB 快閃記憶體驅動器可以從 USB 啟動,插入安裝了 Bluebottle 的快閃記憶體驅動器的使用者將發現使用硬體的最佳和最安全的方式,而無需使用或更改機器上的駐留作業系統或可能的第三方啟動管理器。當 USB 卷配置為,必須包含 AosUSB.Bin 核心,但不能訪問 IDE 卷時,安全性最高。如果需要,可以透過執行 ATADisks.Install ~ 來啟用 IDE 驅動程式模組。之後,任何 IDE 分割槽都可以掛載和訪問,但風險自負。
所有這些都可以透過非常原始的 MBR 實現,但 Bluebottle 啟動管理器提供了附加價值,它能夠完全控制機器的卷和分割槽,從而在一定程度上充當主機。
如果無法做到這一點,它允許將控制權轉移到主機 MBR 管理器,而不會以其他方式干擾,也不需要重新啟動。Bluebottle 啟動管理器是協作且非侵入性的(請參閱第 5 節)。
那些可能猶豫是否安裝 Bluebottle 啟動管理器的使用者,可以選擇將 Bluebottle 包含在某些第三方作業系統(如 Windows Vista)的啟動選單中。
4. 使用者指南
以下是一個示例選單,可以在啟動管理器啟動時訪問。
====================================================== Bluebottle BootManager 28/01/2008 GenuineIntel Intel(R) Pentium(R) 4 CPU 3.0GHz 64-bit processor Family 0Fh Model 04h Cores: 1 Logicals: 2 HT: Y BIOS/MBR 80 detected volumes: >80 117M >81 19G >82 9G USB IDE IDE ^^^^^^ Volume 80 (Mode LBA 5) - MBR: Bluebottle - Vol. signature @ 1B8h: 66 0D 67 0D Partitions: (those marked in red cannot be accessed) 1 OBERON 4C Enter one of the following: the number of a partition hosting an OS to start Set ScrollLock to halt Bluebottle start-up. Selection will replace current default vol. xx , part. yy n(ext) or p(revious) volume ^^^^^^ v to toggle graphic VBE info i to toggle PCI vendor/device info l to toggle 25/50 lines s to switch to MBR on selected volume ======================================================
無論何時啟動,啟動管理器都會報告 CPU 特性:
▪ CPU 型別:Intel、AMD、Via(以前稱為 IDT/Centaur)或其他
注意:僅對一小部分 CPU 進行了測試。
▪ 速度
▪ 寬度(32 或 64 位)
▪ 是否支援超執行緒
▪ 核心、邏輯處理器、執行緒數量
下一行(以紅色突出顯示)指示從哪個卷中提取了 MBR/啟動管理器。正是這段程式碼生成了向用戶呈現的報告。大多數情況下,它是引導卷的 MBR,除非使用者請求切換到另一個卷的 MBR(請參閱下面的響應“s”)。
在後續行中,列出了 BIOS 檢測到的所有卷,從左到右排列,從引導捲開始(第 2 節)。此外,如果存在,還會檢查該卷的分割槽表,並顯示所有駐留分割槽。從此處,可以選擇合適的分割槽來啟動作業系統,前提是它已正確安裝。否則,可以選擇另一個卷(如果有),並重復相同的分割槽表檢查過程。透過輸入“n”表示“下一個”或“p”表示“上一個”來選擇卷。當前選定的卷在下一行用 6 個“^”字元的字串來強調。
對於訪問的每個卷,都會顯示主引導記錄 (MBR) 的型別。會檢測到 Bluebottle、GRUB、LILO 或 Windows(用“外部”表示)啟動管理器的存在。因此,沒有必要在所有捲上安裝 Bluebottle 啟動管理器。仍然可以呼叫其他現有的 MBR 和啟動管理器,並且它們可以完全正常工作。這可以透過對提示文字響應“s”來完成,這同樣適用於啟動管理器本身。
應要求,它還會顯示:
▪ 圖形控制器支援的 VBE VESA 模式列表(對提示文字輸入“v”)。Bluebottle 需要使用線性幀緩衝區的 VESA 模式。會生成適合模式的列表,其中模式顯示為 3 位數綠色值。這樣的值是配置資料元素“Init=”的重要引數。安裝 Bluebottle 時,會將“Init=117”設定為預設值,對應於 1024 x 768 x 16 的解析度,在大多數圖形控制器上都可以使用。使用者可能希望在啟動 Bluebottle 時,從列表中選擇具有更高解析度的 VESA 模式。
▪ 已安裝的 PCI 裝置列表(對提示文字輸入“i”)。
文字顯示在 50 行 80 個字元的行上,與預設的 25 行佈局相比。輸入“l”可以切換行數。啟動管理器強制執行 50 行模式,與預設的 25 行模式相比。經驗表明,除了在 50 行模式不受圖形控制器支援的情況下(目前尚未遇到這種情況)外,切換實際上並不需要。
任何無效的輸入都會收到確認:“無效輸入,請重試”。
總之,它指導使用者:
▪ 每天啟動首選作業系統
▪ 每天從多個安裝的作業系統(可能是不同的作業系統)中選擇並啟動一個作業系統
▪ 有時恢復因卷主引導記錄損壞而變得不可訪問的作業系統
▪ 偶爾檢查機器裝置並決定它是否適合執行 Bluebottle,尤其是在考慮購買時。請記住驗證機器是否允許從 USB 啟動,這確實是一個非常有用且值得推薦的功能。另請參閱第 5 節。
5. 它可以啟動的作業系統
它可以啟動位於以下位置的作業系統:
▪ 它所在的捲上,以及
▪ 另一個捲上。
TUI 允許選擇卷,並選擇要啟動的作業系統,而與其他類似系統中通常定義的啟動順序無關。作業系統透過以與 BIOS 相同的方式訪問 PBR 來啟動,就像 BIOS 通常會與 MBR 協作一樣。
每個選定的卷最多可以列出 12 個分割槽。請記住,無法訪問擴充套件分割槽,但它將在列表中以紅色顯示。
假設將安裝了可引導 AOS 的 USB-HDD 插入到無法從 USB 啟動的機器中,那麼仍然可以從 CD-ROM 啟動,然後啟動 USB 上的 AOS。除了啟動順序之外,無需更改機器上的任何設定。
與所有 Windows 版本相容。與 x64(AMD62/EM64T)和 Windows 64 位(非 GPT)相容。
最後但並非最不重要的一點是,任何捲上的啟動管理器都可以用來啟動駐留在另一個捲上的作業系統,該作業系統具有不同的啟動管理器,例如 GRUB,或者具有損壞的 MBR 但分割槽表完好的卷。
6. 不需要特殊分割槽
它既不佔用分割槽,也不放置在分割槽內(請參閱第 1 節)。
7. 使用者友好性
啟動管理器會報告它所能報告的關於機器上存在的所有卷及其分割槽的資訊。它不依賴使用者提供的配置資料,也不應該被配置。但是,即使報告是真實的,它也不會包含全部真相,比如,一個定義了但沒有安裝可啟動作業系統的分割槽。啟動管理器無法處理這種使用者應負責任的情況,將中止並不會恢復或發出警告。
它會優雅地記憶在其中一個塊(LBA 號 12)中,最後選擇的用於啟動所需作業系統的卷和分割槽,除非它是從 CD-ROM 啟動的,原因很明顯,或者是從軟盤啟動的,因為軟盤被認為只用於啟動作業系統,而不是真正繫結到任何機器上。
下次啟動機器時,相同的作業系統會自動啟動,無需使用者干預。
但是,如果使用者希望啟動不同的作業系統,在 MBR 接管控制之前立即設定 ScrollLock 鍵,將暫停啟動管理器的執行,並顯示一個提示文字,用於選擇其他選項。
在全新安裝後,預設卷和分割槽未定義,其執行將不可避免地暫停,以便與使用者互動。
它(應該!)不會損壞安裝在卷第一個磁軌上的其他啟動管理器(GRUB、Boot-US)。
8. 無“活動”分割槽概念
它允許透過鏈載入機制啟動作業系統,而不需要依賴於“活動”分割槽的檢測(甚至不是 Windows 分割槽)。
1. BootManager.Text - 本文件
2. BootManager.Asm - Nasm 語法原始碼
3. BootManager.Bin - 彙編後的啟動管理器 = 階段 1 + 階段 2
4. BootManager.iso - 用於燒錄 CD-ROM 的 ISO 檔案
5. BootManagerNull.Bin- 512 位元組幫助檔案,用於生成 BootManager.iso
庫存檔案 BootManager.Bin、BootManagerMBR.Bin 和 BootManagerTail.Bin 可從倉庫獲得,https://svn-dept.inf.ethz.ch/svn/lecturers/a2/trunk/source/。提交使用者名稱 infsvn.anonymous 和密碼 anonymous。建立這些檔案的說明如下。
1. 使用網路彙編器語法編寫彙編程式碼
使用 Nasm 程式碼編寫,在真實模式下執行。從 BIOS 接收控制權,介面如下:
▪ MBR 載入到地址 7c00h
▪ 暫存器 dl 包含引導卷識別符號。從 CD-ROM 或 USB-FDD 啟動時為 0,從已分割槽的卷啟動時為 80h。
當啟動管理器處於控制狀態時,使用者可以選擇將控制權轉交給
▪ 可啟動分割槽的 PBR,以啟動作業系統,假設它已正確安裝,
▪ 或者另一個卷的 MBR(它甚至可以將控制權轉交給自身)。
2. 彙編程式碼
2.1 在 Oberon 中,將 Oberon 文字轉換為純 ASCII,為 Windows/DOS 處理做準備,使用:Miscellaneous.MakeDOSText name.Asm => name.ASC ~
2.2a 在 DOS 中:使用網路彙編器彙編源文字 *.ASC
2.2b 在 Windows 中:在 DOS 框中使用 ansmw.exe。命令引數詳細資訊請參閱:nasmw -h
2.3 在 Oberon 中,使用 Backup.ReadFiles name.BIN ~ 讀取 .BIN 檔案
此時,您將獲得 BootManager.Bin,包含 6656 位元組[1]。即 13 個 512 位元組塊。BootManager.Bin 可從倉庫獲得, https://svn-dept.inf.ethz.ch/svn/lecturers/a2/trunk/source/.
3. 生成安裝資料
3.1 對於已分割槽的卷,步驟 2 中獲得的 BootManager.Bin 由 WMInstaller 處理,並拆分為
▪ 一個塊放置在 MBR 中,
▪ 12 個塊放置在 LBA 1 到 12 的塊中。
這兩個部分也可以從倉庫中獲得,以 BootManagerMBR.Bin 和 BootManagerTail.Bin 檔案的形式提供。
3.2 對於軟盤,步驟 2 中獲得的 BootManager.Bin 可以直接使用,無需進一步操作(轉到 4.3)。
3.3 用於燒錄可啟動 CD-ROM 的 ISO 映像檔案
與 I386.Aos.Tool 中用於建立新版本的相同流程。在 Oberon 中,執行以下命令
Configuration.DoCommands OFSTools.Mount SYS RamFS 200000 4096 ~ System.DeleteFiles AOS:BootManager.iso ~ FileDisks.Open SYS:AosCD.Dsk 600 ~ Partitions.Format SYS:AosCD.Dsk#0 AosFS 0 BootManagerNull.Bin ~ (boot file reserve size must be multiple of 4) Partitions.FileToPartition SYS:AosCD.Dsk#0 BootManager.Bin 0 13 FileDisks.Close SYS:AosCD.Dsk ~ Aos.Call \w IsoImages.Make AOS:BootManager.iso SYS:AosCD.Dsk ~ OFSTools.Unmount SYS ~
注意:BootManagerNull.Bin 是一個填充有 00h 的 512 位元組檔案,它取代了 AosIDE.Bin 或其他核心。
然後使用發行版中包含的 BootManager.iso 映像檔案燒錄可啟動 CD-ROM(參見第 4.4 節)。
4. 安裝啟動管理器
4.1 安裝規劃
如果一個卷已經包含了多個作業系統,那麼應該首先規劃
▪ 收集有關當前卷組織的資訊:卷大小、分割槽數量、作業系統型別、是否存在啟動管理器。
所有這些都可以使用 Bluebottle 分割槽工具輕鬆完成:在主選單中依次選擇 > 檔案 > 分割槽,或使用 Oberon 分割槽工具:執行 Partitions.Show detail ~
▪ 備份當前卷的 MBR,以及某些啟動管理器使用的軌道 0 中的剩餘塊(如果需要)。
這可以使用 Bluebottle 分割槽工具完成,如上所述,然後選擇“儲存到檔案”,或使用 Oberon 分割槽工具:執行
Partitions.PartitionToFile dev#0 MBRBackup.Bin 0 1 ~
識別符號“dev”必須替換為具體的裝置名稱;例如“IDE0”。可能需要儲存多個塊。可以透過執行以下命令檢查此檔案
Hex.Open MBRBackup.Bin ~
如果出現問題,可以執行以下命令還原 MBRBackup.Bin 檔案
Partitions.WriteMBR dev#0 MBRBackup.Bin ~
4.2 在已分割槽的捲上,在 AOS 中執行
WMInstaller.Open ~
並按照說明操作。
或者,在 Oberon 或 AOS 中使用以下命令。
Partitions.WriteMBR dev#0 BootManagerMBR.Bin ~ Partitions.FileToPartition dev#0 BootManagerTail.Bin 1 12 ~
當使用 hypervisor 安裝 Oberon 時,可以啟動新安裝的系統,然後像上面那樣安裝 BootManager。
在 Linux 中使用 dd 命令可以達到相同的效果。在2021-07-06 的郵件列表中解釋了塊大小為 446。
sudo dd if=MY/BootManagerMBR.Bin of=/dev/sdX bs=446 count=1 sudo dd if=MY/BootManagerTail.Bin of=/dev/sdX seek=1 count=12
識別符號“sdx”必須替換為具體的裝置名稱,例如“sdf”。請謹慎操作。如果指定了錯誤的裝置,主機裝置中的資料將變得不可訪問,這將立即停用主機系統。請仔細識別裝置。
4.3 在可啟動 CD-ROM 上
在主選單中依次選擇 > 檔案 > CD 錄製器 > 工具 > 燒錄 ISO 映像
然後瀏覽以找到 BootManager.iso 並燒錄 CD-ROM。不過,不能保證這樣建立的 CD_ROM 在所有機器上都能讀取。最好使用第三方軟體,例如 Nero。MagicISO 是另一種此類軟體。
4.4 在軟盤上
可能只需要暫時啟用 FDD,以便在軟盤上安裝啟動管理器,以便在 USB-FDD 上使用。
在 FDD 中插入一張 DOS 格式化的軟盤,並在 AOS 中執行:Diskettes.Install ~
導航 > 檔案 > 分割槽 > 選擇一個分割槽 > 分割槽 > 從檔案 >
檔名:BootManager.Bin / 偏移量:0 / 塊數:13
或者在 Oberon 中
Diskettes.Install ~ Partitions.FileToPartition Diskette0#0 BootManager.Bin 0 13 ~
(13 = 1 MBR + 12 個塊)
5. 啟動啟動管理器
啟動 PC,並將其引導到它所在的卷(透過 BIOS 設定或啟動選單)。
要開啟啟動管理器選單,請使用 ScrollLock 鍵,或按住 Ctrl、Alt 或 Shift 鍵,如 A2 啟動順序中的表格和腳註 (2a) 和 (5) 中所述。
6. 當安裝新的作業系統時,Bluebottle 啟動管理器會發生什麼?
如果安裝或重新安裝另一個作業系統,該作業系統會覆蓋/替換 MBR 用於自身目的,則 Bluebottle MBR 可以輕鬆恢復。例如,Windows 安裝會有效地替換 MBR。因此,在重新安裝 Bluebottle MBR 之前,使用者需要進行處理以確保 Windows 的完整性,否則 Windows 安裝將失敗。如果 Ubuntu 等作業系統建議安裝 GRUB,則會出現兩種情況:GRUB 安裝在 MBR 中,最終會覆蓋 Bluebottle 啟動管理器,或者安裝在一個分割槽(可能是專用分割槽)中,不會造成干擾。
7. 如何恢復作業系統的原始 MBR
在 Oberon 中,執行 Partitions.WriteMBR dev#0 MBRBackup.Bin ~
8. 如何在啟動 Bluebottle 時訪問其他卷
通常,Bluebottle 被配置為包含它所在的卷的磁碟驅動程式,即,使用的核心是 AosIDE.Bin 或 AosUSB.Bin。因此,在需要時確保安裝另一個驅動程式。命令如下:
▪ ATADisks.Install
▪ UsbHubDriver.Install 後跟 UsbUhci.Install
提供了多種啟動管理器來控制多引導系統。以下列舉了一些非詳盡的列舉:Windows(所有型別)內建的啟動管理器、GRUB、GAG、LILO、BootIt、Boot-US。選擇合適的啟動管理器並不容易,但在大多數情況下,一個或兩個啟動管理器是作業系統發行版的一部分。一個好的選擇是將啟動管理器的選擇和安裝委託給作業系統安裝程式。在安裝時,這可能不是什麼大問題,但應充分了解其影響。
啟動管理器爭奪第一個磁軌的空間,或者至少爭奪 MBR。事實是,一個啟動管理器可能會覆蓋另一個啟動管理器。一些安裝程式透過將現有作業系統整合到啟動選單中來修復損壞。這是大多數 Linux 發行版提供安裝 GRUB 或 LILO(檢測 Windows 和其他 Linux 分割槽的是否存在)的情況,但 Windows 並非如此,它忽略所有作業系統,除了自身。Windows 會覆蓋 MBR,而不會給出提示。不幸的是,可以理解的是,GRUB、LILO 和 Windows 都無法檢測到 AOS 分割槽的是否存在。
在安裝作業系統時,您可以選擇不安裝建議的啟動管理器,但這假設您知道如何修剪現有啟動管理器的啟動選單。對於那些不希望採用 Bluebottle 啟動管理器的人,本文提供了一些說明,說明如何將 AOS 繫結到他們喜歡的啟動管理器中。請參見“如何使用其他啟動管理器啟動 AOS”。總的來說,這些說明也適用於其他作業系統。
啟動管理器以多種方式安裝,總結如下
▪ 在 MBR (LBA=0) 和第一個磁軌限制內的後續塊中。GRUB 是一個例子,Bluebottle 啟動管理器是另一個。LILO 佔用 MBR 且不再佔用其他空間。
▪ 在一個專用主分割槽中,佔用 MBR 分割槽表中 4 個可能條目中的一個。GRUB 是一個例子。
▪ 在託管作業系統的分割槽中。Windows Vista 和其他 Windows 版本以這種方式安裝其啟動管理器。GRUB 也能安裝在 Linux 分割槽中,甚至安裝在交換分割槽中。LILO 安裝在 Linux 分割槽中。
最終,將決定哪個啟動管理器佔優,最重要的是關於 MBR,將由作業系統在捲上的安裝順序決定。
建議
無論安裝順序是使用者決定的還是由情況決定的,都需要一個合理的策略來對作業系統的安裝進行排序。Windows 經常成為絆腳石。
安裝多個作業系統的操作涉及的複雜性很高,這裡只提供很少的資訊。
NeoSmart 網站記錄了成功實現目標所需的所有步驟,即先安裝 Vista 還是後安裝 Linux
▪ 將 Linux 新增到 Vista 啟動載入程式 - https://neosmart.net/wiki/display/EBCD/linux
▪ 雙重啟動 Ubuntu Linux 和 Windows Vista - https://neosmart.net/wiki/display/EBCD/Ubuntu
▪ 雙重啟動 Fedora Linux 和 Windows Vista - https://neosmart.net/wiki/display/EBCD/Fedora
總之,只要有可能,請先安裝 Windows Vista,然後再安裝其他作業系統。
Bluebottle 啟動管理器的多啟動功能基於鏈式載入機制:啟動管理器將啟動過程交給另一個(啟動管理器或啟動載入程式)。它要求 Vista 啟動管理器、GRUB、LILO、GAG 或其他程式完成啟動過程,從而最大限度地減少配置要求並確保與各種作業系統最大限度的相容性。
在這些條件下,可以啟動
▪ 任何地方的 AOS
▪ 安裝在主分割槽中的 Windows Vista
▪ 安裝在 Linux 分割槽中的 Linux,帶 GRUB、LILO、GAG 或其他程式
在安裝 Linux 的過程中,請遵循 NeoSmart 文件中描述的步驟
當提示設定啟動載入程式時,請確保指定將 GRUB、LILO、GAG 或其他程式安裝到安裝 Linux 的分割槽中,而不是安裝到卷的 MBR 中。啟動載入程式儲存在 Linux 所謂的“超級塊”中,位於分割槽開頭。
如果不是這種情況,即啟動載入程式放置在 MBR 中,則無法啟動 Linux 分割槽。該分割槽將在 Bluebottle 啟動選單中以紅色顯示,並帶有“沒有 PBR”的提示。
要解決這種情況,請執行以下步驟
1. - 從一個即時 CD 啟動,例如 Ubuntu 或 Knoppix 的 CD
2. - 開啟一個終端
3. - 輸入:sudo grub
4. - 對提示回覆
root (hdX, Y) setup (hdX,Y) quit
X 是 Linux 分割槽所在的驅動器號 - 驅動器在啟動時由 BIOS 識別並從 0 開始編號
Y 是分割槽號
setup 在後臺使用“install”命令將 GRUB 安裝到指定的目標裝置中。
Bluebottle 啟動管理器可以鏈式載入分割槽的 PBR。在此瞬間,控制權將轉移到駐留的啟動管理器,它將直接或間接地透過已準備好的啟動選單啟動作業系統。人們總是會安排避免顯示中間的啟動選單。
有人可能會質疑開發另一個啟動管理器的必要性,因為目前已經提出了很多類似的啟動管理器。那麼是什麼讓 Bluebottle 啟動管理器與眾不同呢?這將在下一節中進行回顧。
啟動選單完全是透過從 BIOS 在啟動時檢測到的所有卷的 MBR 和 PBR 中提取相關資訊來構建的。
現在,外部卷很容易連線到機器(例如 USB 介面),人們可以很容易地看到其他啟動管理器的啟動選單是多麼不靈活。
其他啟動管理器由啟動選單控制,啟動選單位於檔案系統中的某個位置,由安裝程式構建,然後由使用者在託管作業系統的控制下進行編輯。例如,GRUB 建立 menu.lst,LILO 也這樣做。
這種啟動選單的主要缺點是在新增或刪除分割槽時,由於重新排序而被迫編輯選單。
因此,無論是事先還是在啟動時,都沒有任何內容需要編輯、自定義或個性化多啟動系統,也不需要超級使用者(sudo)。
當分割槽被移動時,也會出現類似的編輯任務:另一個啟動管理器再也找不到 PBR,必須重新安裝。同樣,在建立或刪除分割槽後對分割槽重新編號,也需要編輯。對於 Bluebottle 啟動管理器來說,這種修改的影響要少得多。Bluebottle 分割槽可能需要修改配置資料中的 BootVol1= 值,例如。
在啟動選單出現在螢幕上時,沒有必要在神秘的命令中指定選項。在名為 GRUB 的部分中,出現了一些示例命令,但還有很多類似的命令。相反,TUI 是一個簡單的英語提示文字,等待鍵盤上的單個字元回覆。任何語言的鍵盤都可以使用,不需要滑鼠。
光滑、短暫的 TUI 無法用啟動畫面裝飾。
它嚴格且僅與 BIOS 驅動程式和卷識別符號一起使用:00h、80h、81h,...
使用者不必與各種作業系統相關的裝置對映的特殊性作鬥爭:[hd0、hd1、hd2,...] 或 [sda、sdb、sdc,...] 或其他,具體取決於啟動管理器。
託管競爭啟動管理器的啟動選單的分割槽丟失是災難性的。藉助另一個捲上的 Bluebottle 啟動管理器的幫助,大多數相同捲上的其他作業系統仍然可以啟動,只要分割槽表沒有損壞。
類似地,啟動卷的 MBR 中的 rootkit 病毒入侵將被髮出訊號。同樣,大多數作業系統仍然可以啟動,直到卷被修復,可能使用 AOS。
所有其他經過測試的啟動管理器都沒有提供將控制權轉移到不同捲上的另一個啟動管理器的可能性,並使其表現得好像它是啟動卷一樣。從某種程度上來說,BIOS 啟動選單變得多餘。其他啟動管理器只允許在不同捲上啟動作業系統。
恢復損壞的 MBR 可能是一件令人沮喪和頭疼的事:什麼是修復系統或恢復軟盤?(在軟盤幾乎消失的時候)哪些在網上找到的文件與在很久以前安裝 MBR 的作業系統版本相關?
Windows Vista 啟動管理器
雖然在 Windows XP 下,編輯 boot.ini 就可以啟動另一個作業系統,但 Vista 需要使用者付出更多努力,才能說服其啟動管理器與其他作業系統合作。相對容易配置的 boot.ini 檔案被一個二進位制檔案替換,必須使用名為 bcdedit.exe 的控制檯應用程式進行編輯。這可能被證明是一項繁瑣的任務,最好使用 EasyBCD 等附加應用程式來完成。當 Bluebottle 駐留在另一個捲上時,這一點值得懷疑。
Vista 啟動管理器駐留在 Vista 分割槽中,並具有以下怪癖(參見:http://linux.wordpress.com/2007/02/17/vista-and-solaris-express-dual-boot [過期連結])
1.- Vista 安裝程式要求捲上沒有分割槽處於活動狀態(或可啟動狀態)。如果找到活動分割槽,安裝程式會提示類似“此卷不適合安裝 Windows”的資訊,並拒絕繼續安裝。
2.- Vista 要求 Windows 分割槽處於活動狀態才能啟動。
3.- Vista 要求磁碟簽名(安裝程式使用的偏移量為 1b8h 的 4 位元組)存在於 MBR 中才能啟動,否則它將拒絕啟動,並提示 winload.exe 已損壞。這是因為 Vista 的啟動載入程式會檢查它。
Bluebootle 啟動管理器和 GRUB 確保在寫入 MBR 時,不會觸碰 4 位元組的磁碟簽名。
更多資訊請訪問:http://www.windowsbbs.com/showthread.php?t=55415 [過期連結]. 微軟在一篇白皮書中談到了它,並給出了一些奇怪的原因:http://www.google.co.in/search?q=OEMBoot_Vista [過期連結].
GRUB - Grand Unified Bootloader - 遺留 - 版本 0.97 - https://www.gnu.org/software/grub
GRUB 可以啟動 Windows、MS-DOS、FreeBSD、NetBSD、OpenBSD、GNU Mach,並且包含在多個 Linux 發行版中。它有兩種風格:一種是簡單的文字使用者介面,另一種是圖形介面。
從 Ubuntu 7.10 在一個捲上的測試中收集的筆記
在安裝 GRUB 的過程中,使用者可以選擇將 GRUB 安裝到啟動卷的 MBR 中,或者安裝到 Ubuntu Linux 分割槽中,或者安裝到一個專用的小分割槽中。
當安裝在 MBR 中時,GRUB 與 Bluebottle 啟動管理器競爭第一個卷磁軌中的空間。當它被安裝(作為安裝 Ubuntu 的副作用)時,它儲存在 LBA=0 到 17 的塊中,從而完全覆蓋現有的啟動管理器。LBA=18 到 63 包含全零。原始 MBR 中的兩個區域被保留,分別是分割槽表和 Windows Vista 使用的磁碟簽名。
GRUB 儲存選單檔案的位置,但檔案本身位於 Ubuntu 分割槽中。要啟動另一個作業系統(例如上面的例子中的 Bluebottle),GRUB 需要先訪問 Ubuntu 分割槽,才能找到鏈式載入程式命令。如果 GRUB 損壞並且無法訪問它,則 Bluebottle 將無法再啟動。使用 Bluebottle 啟動管理器,它仍然可以啟動,而無需 GRUB 的幫助。有趣的是,Ubuntu 分割槽的 PBR 沒有有效的簽名,無法啟動。輔助交換分割槽也是如此。實際上,一個簡單的 Ubuntu 安裝將 GRUB 放置在 MBR 中,同時在 Linux 和交換分割槽的開頭留出空閒塊。使用者還可以選擇在安裝過程中或之後,將 GRUB 安裝到 Linux 或交換分割槽中。然後 PBR 將接收一個有效的簽名 55aah,並被 Bluebottle 啟動管理器識別為可啟動的。
LILO - Linux Loader - lilo.go.dyndns.org
LILO 能夠啟動多個作業系統,包括 Linux、Windows、MS-DOS 等,它被用於一些 Linux 發行版中。
從 Mandriva Linux Spring 2007.1 - Mandriva Linux 和 DSL 2.4.4 中收集的筆記
在安裝 Mandriva 的過程中,使用者可以選擇安裝
▪ GRUB 圖形選單(參見上面的 GRUB)
▪ GRUB 文字選單(參見上面的 GRUB)
▪ LILO 文字選單
當安裝在 MBR 中時,LILO 與 Bluebottle 啟動管理器競爭 MBR 中的空間,而且不再佔用其他空間。使用者還可以選擇將它安裝到 Linux 分割槽中。
GAG - El Gestor de Arranque Grafico - https://gag.sourceforge.net/
GAG 可以從主分割槽或邏輯分割槽啟動多達 9 個作業系統。它與 Bluebottle 啟動管理器爭奪第一個卷道上的空間。它不會安裝在分割槽中。解除安裝 GRUB 時,只恢復 MBR,其餘部分保持不變,即包含 GRUB 程式碼。GAG 無法訪問 USB 裝置 (???)。
OSL2000 - https://www.osloader.com
OSL2000 與 Bluebottle 啟動管理器爭奪第一個卷道上的空間。OSL2000 作為 Windows 安裝/解除安裝程式提供。在安裝過程中,除了安裝在啟動卷中的 LBA=0 到 57 塊上之外沒有其他選擇,將覆蓋的資料儲存在備份軟盤上,以便在最終解除安裝時恢復以前的狀態,從而恢復以前的狀態。
Boot-US - https://www.boot-us.de/
Boot-US 作為 Win32 程式提供,可以安裝在 MBR(僅限於啟動卷)、專用的小型主分割槽或舊式軟盤上。安裝在 MBR 時,它與 Bluebottle 啟動管理器爭奪第一個卷道上的空間。Boot-US 用自己的 MBR 替換現有的 MBR,並將它的副本放在 LBA=1 塊中。這樣,Boot-US 在需要時可以被移除。然後它就像 Bluebottle 啟動管理器一樣,它們不能共存。從 2.0.0 版本開始,它可以啟動 Windows NT/2000/XP/2003,但不能啟動 Vista。
BootIt NG - 下一代 - https://www.terabyteunlimited.com/bootit-bare-metal.htm
BootIt NG 將自身安裝在卷的開頭,即用自己的 MBR 替換 MBR,並佔用啟動捲上第一個軌道上的多個塊。因此,它就像 Bluebottle 啟動管理器一樣,它們不能共存。它也可以安裝在專用的主分割槽中,這對於最多 4 個分割槽來說可能是個問題。
當建立並格式化一個主分割槽或邏輯分割槽來託管 AOS 檔案系統 - AosFS 時,它在開頭包含一個引導載入程式,負責定位和載入核心,以及其他 OS 部分。PBR 偏移量 1feh 處的“魔術值” 55aah 的存在表明分割槽已格式化。因此,可以透過訪問 PBR 並將控制權傳遞給它來啟動 AOS。這正是引導管理器在以下文件中說明的指令下啟動 AOS 時使用的技術。在 Linux 行話中,人們稱之為鏈式載入。
例外的是,專門用作資料儲存庫的 AOS 分割槽可以在沒有核心和程式的情況下進行格式化。這樣的分割槽不可引導,儘管存在有效的簽名 55aah,僅僅是因為缺少核心(參見託管 Bluebottle 的卷)。它只能在 AOS 中掛載/解除安裝。一個很好的例子是一個容量很小的 USB-HDD,比如 62MB,甚至是一個軟盤。在這兩種情況下,功能性 AOS 都無法容納,但都可以用作資料儲存。
當以下提到的任何引導管理器在安裝作業系統時安裝時,可以預期 Windows 或 Linux 分割槽將被識別,並且這些作業系統將包含在可引導的引導選單中。但沒有一個會在 AOS 存在時採取行動,這證明了下面為準備引導管理器以啟動 AOS 提供的詳細資訊。
1. 在安裝 Ubuntu 7.10 或 Google 的 gOS 時安裝的 GRUB
▪ 在 GRUB 選單中永久記錄啟動 AOS 的選項
在 Ubuntu 中,導航到應用程式 > 附件 > 終端以開啟終端,然後使用以下命令以管理員身份登入:sudo -s(在提示符處輸入管理員密碼)
注意:在基於 Ubuntu 的 gOS 中,導航到應用程式 > 系統工具 > UXTerm。
現在輸入以下命令
vi /boot/menu.lst
將游標放在選單中要插入新文字的位置,輸入“i”開始在 menu.lst 中插入這些行。
# This is for booting AOS residing in hd0,2 = IDE0#3 for example title AOS on hd0,2 chainloader (hd0,2)+1
輸入“:x”儲存更新的選單並退出編輯。
在 Debian Wheezy 中,附加一行,例如
menuentry "Native Oberon" { chainloader (hd0,msdos7)+1 }
到 /etc/grub.d/40_custom。然後執行“sudo update-grub”以修改 /boot/grub/grub.cfg。 "msdos" 標識分割槽方案,"7" 是分割槽號。Grub 手冊有更多詳細資訊。
▪ 從 GRUB 選單動態控制命令啟動 AOS
當啟動時出現 GRUB 選單時,輸入“c”以獲取命令。然後按順序輸入以下命令
chainloader (hd0,2)+1 boot
此處需要引導命令,但在解釋 menu.lst 時是隱含的。
2. Windows Vista 啟動管理器
優先選擇 NeoSmart Technologies 的 [https://neosmart.net] 軟體 EasyBCD - 當前版本 1.7.1 - 免費下載。該工具易於使用:新增一個 OS 條目,命名它,指定 AOS 所在的分割槽,並儲存修改後的二進位制檔案 BCD(引導配置資料)。
雖然在 Windows XP 及更早版本中,編輯 boot.ini 以指示內建的啟動管理器啟動另一個作業系統很簡單,但 Vista 需要使用者付出更多努力才能說服其啟動管理器與其他作業系統協作。boot.ini 被 BCD 二進位制檔案替換,在純 Vista 中,必須使用名為 bcdedit.exe 的控制檯應用程式對其進行編輯。這可能會被證明是一項繁瑣的任務,最好使用 EasyBCD 等工具來完成。當然,可能還有更多此類工具。
3. GAG
從 GAG 啟動卷或可引導的 GAG CD-ROM 啟動 GAG,並按照 GUI 指示操作
1. 按“s”設定 GAG
2. 按“a”新增 AOS
3. 按與目標 AOS 關聯的字母(使用 GRUB 示例,AOS 為“c”)或按與目標卷關聯的數字(“1” .. “8”)來選擇目標 AOS 所在的卷
4. 鍵入描述(最多 15 個字元)
5. 鍵入密碼或不鍵入
6. 按與代表 AOS 的圖示關聯的字母
7. 按“h”儲存到硬碟或按“r”返回主選單以測試此序列
外部連結
從快閃記憶體驅動器啟動 - [http://www.usb-flash-drives-now.com/cheaper/Boot-From-Flash-Drive.html] [已失效連結]
從 USB 啟動 - 即使 BIOS 不支援它:[https://www.plop.at/en/bootmanager/index.html]
- ↑ BootManager.Bin 自本檔案由 André Fischer 編寫以來已過時。因此,SVN 存檔中的 BootManager.Bin 大小略大於 6656 位元組。