Oberon/ETH Oberon/分割槽
此文件最初託管在ETHZ。它仍然根據ETH 許可證,並且在WayBack 存檔中。
ETH Oberon 最好託管在專用的分割槽中,但是如果有人覺得對硬碟進行分割槽太冒險,在託管其他作業系統的正常工作系統上,另一種選擇是將 Oberon 放置在另一個檔案系統(如 FatFS)中的一個大檔案中,或者如果安裝了 Linux,則放置在 LinuxFS 中。無論哪種情況,所選的實現方式都會極大地影響 ETH Oberon 的啟動方式。在在基於 x86 的 PC 上引導作業系統,並將其應用於 ETH Oberon以及與之相關的其他文件中記錄了啟動 ETH Oberon 的多種方式。許多下面討論的主題在許多其他作業系統的環境中是已知的,並且得到了廣泛的處理。這裡只以簡潔的形式提醒了基本部分。硬體先決條件非常低,並且很容易滿足,並且 Oberon 的佔用空間非常小,因此幾乎任何機器都可以託管它。Oberon 非常適合嵌入式系統,例如在工業過程控制中遇到的系統。
從 ETH Oberon CD-ROM 執行 Oberon 不需要分割槽或安裝。由 vis 編輯的 CD - 版本 2001 年 11 月 11 日 - 是可引導的,前提是您的機器系統設定中的引導順序選項中包含從 CD-ROM 引導。Oberon 立即可以使用其 TUI。RAM 磁碟可用於臨時儲存資料(大約分配了 50% 的可用 RAM)。螢幕當前僅在 VGA 模式下執行這一事實是一個更大的障礙。即便如此,這個系統似乎只是能力有限,因為
- 建立通訊,只需將 Oberon.Text 複製到 RAM:並編輯 NetSystem 部分。
- 要儲存檔案,只需掛載軟盤,或者如果有空閒的分割槽空間,建立 AosFS 分割槽以供使用(不要忘記,ZIP 磁碟也可以使用)。
- 要儲存檔案,只需掛載現有的 FAT 分割槽以訪問它並交換檔案,例如使用 System.CopyFiles 命令。
不需要分割槽
- 為 Dummies 設計的 Oberon 安裝在 FAT 分割槽中的一個大檔案中。它是《為 Dummies 設計的程式設計入門》一書中包含的 CD-ROM 上找到的軟體的更新版本。包括一個易於使用的安裝程式 OberonInstaller.exe,它在 Windows 上執行。該程式安裝大檔案並將 Oberon 引導檔案寫入 1.44MB 軟盤,然後可以從該軟盤啟動 Oberon。此 Oberon 可以與基於分割槽的 Oberon 安裝同時存在,就像與其他作業系統同時存在一樣。
- 基於 Linux 的原生 Oberon 安裝在 Linux 檔案系統中的一個大檔案中。
在分割槽中安裝 Oberon 需要
- 對磁碟進行分割槽。
- 下載發行版軟體並安裝 ETH Oberon。安裝過程在其他地方有詳細描述。在安裝過程中,分割槽將被格式化,從而建立一個空的Aos 檔案系統 (AosFS)。格式化可能會由於存在壞塊而失敗。原因和解決方法將在後面的部分中進行處理。
檔案系統字首 用於代替傳統的驅動器磁碟機代號 "C"、"D" 等。已知,對於其他作業系統,磁碟機代號分配在不同的作業系統之間會有所不同,並且遵循搜尋主分割槽、次分割槽、可見分割槽/隱藏分割槽的相當複雜的規則模式。Oberon 可以看到所有分割槽(參見 Partitions.Show),並且必須掛載分割槽才能訪問它們。
從可下載材料構建的完整安裝系統適合在 60MB 分割槽中,留下了大約 50% 的可用空間。建議將原始檔案與使用者檔案分開,使用者檔案最好儲存在專門建立的另一個分割槽中。如何做到這一點以及如何訪問該分割槽將在一臺機器上的多個 Oberon 分割槽中進行解釋。
ETH Oberon 在三個級別上提供檔案垃圾回收 (GC),將已刪除檔案的塊返回到空閒塊池
- 在 Oberon 會話期間的動態 GC。
- 系統啟動期間的條件 GC。配置字串 "DiskGC" 確定垃圾回收必須發生的空閒空間量,以分割槽大小的百分比表示。可以分配值 10 .. 100。預設值為 10。
- 系統啟動期間的自動 GC,當可用空間少於 1MB 時,或者如果系統未正常關閉,例如當機器突然斷電時。
Bluebottle 具有類似的檔案垃圾回收,但未實現動態 GC。
檔案 GC(如果發生)有一個副作用,即系統啟動時間明顯長於平時。如果空閒磁碟空間長期不足,GC 可能會在每次啟動時發生,具體取決於分配給 "DiskGC" 的值。當沒有空閒空間時,"卷滿" 情況會導致系統徹底停止 - 參見ETH Oberon 系統穩定性。要恢復,請重新啟動系統,刪除不必要的檔案,並透過執行System.Watch觀察可用空間量。如果它發生在系統更新期間,請分段進行安裝,一次下載一個 zip 存檔,提取檔案,然後立即刪除存檔。
當前,負責格式化檔案系統(如 AosFS)的過程不處理壞塊。唯一的解決方法是定義一個包含明顯塊的小分割槽。此分割槽將不會被使用。
建議志願者完成的家庭作業:需要做的是確保檔案系統忽略壞塊
- 在 Partitions.Format 中檢測壞塊
- 建立一個包含所有這些壞塊的檔案。這部分是特定於檔案系統的。
如果有人想嘗試這個,建議從 Partitions.Mod 中獲取相關的 Format 程式碼,並在新的模組中重寫它。
在實踐中,啟動 Oberon 的方式是在安裝時決定的,更確切地說,是在安裝過程的最後一步中使用 Oberon-0 系統決定的。請注意,由於這些選項不是互斥的,因此可以選擇多個選項。在安裝時未考慮的選項,可能在以後仍然可以實現,而無需重複安裝或部分安裝。在大多數情況下,不涉及 Oberon 的系統管理任務是完成使系統啟動的行動鏈條所必需的。
如果您的機器設定為直接啟動到 Oberon(分割槽標記為 "active"),請執行以下操作以啟動另一個作業系統
- 從軟盤啟動它
- 啟用另一個作業系統的分割槽,以預期透過發出以下兩個命令終止 Oberon 會話
- Partitions.Deactivate [dev#part | ^](* 選擇 Oberon 分割槽 *)
- Partitions.Activate [dev#part | ^](* 選擇下一個 OS 分割槽 *)
- 使用其他程式(如 fdisk(DOS、Windows、Linux)、PQBoot(PartitionMagic 的一個元件)或其他商業程式)啟用另一個作業系統的分割槽。
如果您的引導載入程式不支援 "連結" 以從第二個驅動器引導分割槽,您可以嘗試 "修補" Oberon 分割槽的引導扇區。引導扇區中偏移量 24H 的位元組應設定為 81H 而不是 80H,以從第二個硬碟啟動。為了確保您正在修改正確的扇區,請檢查字串 "OBERON" 是否出現在扇區中的偏移量 3 處。此修補程式可以應用
- 使用 Oberon 本身,使用 Partitions 工具
- 使用 Partitions.ShowBlocks dev#part 0 1~ 檢查引導扇區
- 儲存引導記錄 Partitions.PartitionToFile dev#part filename 0 1 ~
- 編輯偏移量 24H 處的位元組
- 將修改後的 MBR 放入適當位置,使用 Partitions.WriteMBR dev#0 filename ~
- 或使用扇區編輯器(如 Norton Disk Editor)。
2003 年 3 月 20 日 - 版權所有 © 2003 年蘇黎世聯邦理工學院。保留所有權利。
電子郵件:oberon at lists.inf.ethz.ch
主頁:http://www.ethoberon.ethz.ch/