使用另一个操作系统启动操作系统,并应用于 ETH Oberon
摘要
首先启动一个操作系统。然后,使用在该环境中运行的程序,启动另一个操作系统。该程序能够启动目标操作系统内核,该内核存储在 DOS 目录中的文件中。以这种方式启动 ETH Oberon 和 Linux 的过程非常相似,因此一切都可以简化为以下简单语句:DOS 程序 _noboot.exe_ 对于 ETH Oberon 来说就如同 _loadlin_ 对于 Linux 一样。这在查看下面的 CONFIG.SYS 和 AUTOEXEC.BAT 文件示例时应该会变得很清楚。
对应关系如下(名称仅作指示,并非强制):
File name ETH Oberon Linux
--------------------------------------------
DOS program noboot.exe loadlin.exe
Kernel in file native.bin zimage
Configuration native.par linux.par
Start program native.bat startlin.bat
甚至不需要在硬盘上拥有一个(最小的)DOS 分区。一张 DOS 启动软盘就足够了。
优势:添加分区会修改 MBR 中的分区表,但除此之外 MBR 不会被更改。因此,由于向系统添加操作系统(如 ETH Oberon)而导致恶意副作用的风险降到最低。分区可以放置在任何位置。
如何从 DOS 启动 ETH Oberon
以下内容仅在 MS-DOS 上进行了测试,但也适用于 IBM DOS、Caldera DOS 和 IBM DOS 2000。_noboot_ 是一个 DOS 程序,它加载存储在 DOS 目录中的 Oberon 内核,该内核通常命名为“native.bin”。加载过程由存储在同一目录中的另一个文件(通常为“native.par”)中包含的配置规范指导。_noboot_ 无缝集成到现有的 DOS 或 Windows 95/98 环境中,并且可以与大多数 启动管理器 一起使用。
noboot 仅需要一个最基本的 DOS 系统。如果 Oberon 无法启动,例如在启动过程的中间挂起,请分析 CONFIG.SYS 和 AUTOEXEC.BAT 文件,并将与内存管理相关的行注释掉。特别是那些提及 HIGH 的行,或者那些涉及使用 EMS 或 XMS 的行。或者,使用下面提到的 -d 选项强制 Oberon 进入调试模式。
在 DOS 提示符下执行以下命令来启动 Oberon
noboot [-dptv] kernel params
-d debug mode. Trace data is then presented on the console
-p don't reset the processor
-t trace mode (no boot)
-v verbose message output
kernel kernel image filename (usually: native.bin)
params parameter filename (usually: native.par)
如何从 Windows 95/98 启动 Oberon
如果运行的系统是 Windows 95/98,则可以通过以 DOS 模式重新启动 Windows 或在 Windows 启动时按 Shift-F5 来启动 MS-DOS 7.0。_noboot_ 在 DOS 模式下从用户界面启动。为此提供了一个特殊的 _native.ico_ 图标。
无法直接从 Windows NT 切换到 Oberon。在这种情况下,必须通过启动管理器(例如)启动一张 DOS 启动软盘或一个额外的最小 DOS 分区。
使用 DOS/Win9x 启动菜单
用于构建 DOS/Win9x 启动菜单的示例文件
这些示例文本控制对三个共驻 Oberon 系统的访问:MS-DOS、Oberon、Linux。
1 - NATIVE\NATIVE.PAR 文件示例
# Configuration generated by Oberon-0
MT="PS2"
MP="1"
MB="-3"
DMASize="14800H"
Display="S3Trio."
Init="bb0501b8024fcd10"
DWidth="1024"
DHeight="768"
DDepth="8"
2 - CONFIG.SYS 示例
[Menu]
Menuitem=dos, MS-DOS 6.21
Menuitem=native, Oberon in own partition (primary or logical drive)
Menuitem=linux, SuSE Linux 6.1 - using loadlin
Menudefault=dos, 20
[common]
...
[dos]
...
[native]
[linux]
3 - AUTOEXEC.BAT 示例
@echo off
rem Editor for noboot (hold Shift-key or activate ScrollLock)
set editor=c:\dos\edit.com
goto %config%
:dos
...
goto end
:native
cd native
native
:linux
cd loadlin
linux hda6
:end
4 - NATIVE\NATIVE.BAT 示例
@echo off
rem Run this under DOS or in MS-DOS mode under Windows 9x.
rem Does not work under Windows 3.11 or NT.
rem
rem To create an icon for starting Oberon:
rem 1. Create a shortcut to "native.bat" (the icon native.ico is provided).
rem 2. Right-click on the shortcut and select "Properties" from the menu.
rem 3. Click "Program" tab, then "Advanced..." and select "MS-DOS mode".
rem 4. Confirm the setting by clicking on "OK".
if not exist native.par goto usage
rem Show boot status at top left
cls
echo . - ETH Native Oberon booting...
rem DOS commands may be inserted here before Oberon starts.
rem E.g. a command to set the correct display refresh rate.
noboot native.bin native.par
rem We should never get back here
goto end
:usage
echo Please change to the directory containing the installed ETH Native Oberon
:end
如何从 Windows NT/2000 启动 Oberon
Windows NT 启动管理器文件 BOOT.INI 示例
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINNT=
"Windows NT Workstation Version 4.00"
multi(0)disk(0)rdisk(0)partition(2)\WINNT=
"Windows NT Workstation Version 4.00 [VGA mode]" /basevideo /sos
C:\ = "DOS boot menu"
C:\bootlinx.bin="LILO menu (SuSE Linux 6.1)"
2002 年 11 月 20 日 - 版权所有 © 2002 ETH Zürich。保留所有权利。
电子邮件:oberon-web at inf.ethz.ch
主页:www.ethoberon.ethz.ch