控制台固件是保存在一个闪存 ROM 中并且每次在 Alpha 系统加电或者重启的时候启动。在 Alpha 系统上有两种规格的控制台,并且因此有两类控制台固件供使用。
SRM console 基于 Alpha 控制台子系统规范。它为 OpenVMS,Tru64 Unix,以及 Linux 操作系统提供了一个操作环境。
ARC, AlphaBIOS 或 ARCSBIOS console 基于 Advanced RISC Computing (ARC) 规范。它为 Windows NT 提供了一个操作环境。
按照用户的角度看,SRM 和 ARC 最重要的区别,是控制台的选择,可能会影响到您需要引导的磁盘分区方法。
ARC 需要您为引导磁盘使用一个 MS-DOS 分区表(用 cfdisk 创建)。因此从 ARC 引导则 MS-DOS 分区表是作为“原始的”分区格式 ARC。事实上,由于 AlphaBIOS 包含了一个磁盘分区工具,您也许可以在安装 Linux 时,通过固件菜单对磁盘进行分区。
保守地说,SRM 是 不兼容 MS-DOS 分区表。[4]由于 Tru64 Unix 使用的是 BSD 磁盘标记格式,对于SRM 安装来说,这是一个“原始的”分区格式。
由于 GNU/Linux 是唯一能够通过两种控制台格式引导的系统,这个问题就取决于您想在机器上面运行什么样的其他操作系统。所有的其他 Unix 型的操作系统 (Tru64 Unix,FreeBSD,OpenBSD,以及 NetBSD) 和 OpenVMS 只能从 SRM 上面引导,而 Windows NT 只能从 ARC 上面引导。
由于 MILO 在当前生产型 Alpha 系统上并没有实现(从 2000 年二月份开始)。并且也不需要购买一个 OpenVMS 和 Tru64 Unix 授权,来在老 Alpha 上装上 SRM 固件。我们推荐在新的机器上使用 SRM。
下面表格总结了可用以及支持的系统类型/控制台组合(系统类型名称参见 第 2.1.2 节 “CPU,主板和视频支持”)。单词 “ARC” 注明任何和 ARC 兼容的控制台。
系统类型 | 支持的控制台类型 |
---|---|
alcor | ARC or SRM |
avanti | ARC or SRM |
book1 | SRM only |
cabriolet | ARC or SRM |
dp264 | SRM only |
eb164 | ARC or SRM |
eb64p | ARC or SRM |
eb66 | ARC or SRM |
eb66p | ARC or SRM |
jensen | SRM only |
lx164 | ARC or SRM |
miata | ARC or SRM |
mikasa | ARC or SRM |
mikasa-p | SRM only |
nautilus | ARC (see motherboard manual) or SRM |
noname | ARC or SRM |
noritake | SRM only |
noritake-p | SRM only |
pc164 | ARC or SRM |
rawhide | SRM only |
ruffian | ARC only |
sable | SRM only |
sable-g | SRM only |
sx164 | ARC or SRM |
takara | ARC or SRM |
xl | ARC only |
xlt | ARC only |
一般来说,这些控制台都不能直接引导 Linux ,因此需要一个中间引导装载程序。对于 SRM 控制台,aboot,小型的,平台独立的引导装载器。参见(抱歉的是它也有点过时了)SRM HOWTO 来获得更多有关信息 aboot。
大部分 AlphaServers 以及目前所有的服务器以及工作站产品固件中都同时含有 SRM 和 AlphaBIOS。对于具有不同开发板的 “half-flash” 机器来说。可以通过重刷固件 来从一个版本切换到另外一个版本。并且一旦 SRM 安装完毕,从软盘上运行 ARC/AlphaBIOS 也是可能的(使用 arc)。基于上述的理由,我们推荐在安装 Debian GNU/Linux 之前切换至 SRM。
和另外的体系结构一样,您也应该在安装 Debian GNU/Linux 之前安装最新版本的固件[5]。对于 Alpha 来说,固件升级可以通过 Alpha Firmware Updates取得。
在 SRM 上,以太网界面名字带有 ewa
前缀,并可以用 show dev
命令列出,类似如下显示(可能有一点不同):
>>> show dev ewa0.0.0.9.0 EWA0 08-00-2B-86-98-65 ewb0.0.0.11.0 EWB0 08-00-2B-86-98-54 ewc0.0.0.2002.0 EWC0 00-06-2B-01-32-B0
您首先需要设置引导协议:
>>> set ewa0_protocol bootp
然后检查媒介类型是否正确:
>>> set ewa0_mode mode
获得一个有效模式的列表 >>>set ewa0_mode
。
接下来,如果从第一个以太网界面引导,您需要输入:
>>> boot ewa0 -flags ""
这将 netboot 映象启动,并使用默认的内核参数。
如果希望使用一个串行控制台,您 必须 给内核传递 console=
参数。这个工作可以使用附带 -flags
参数的 SRM boot
命令来完成。串口号的命名和它们在目录 /dev
中相同。另外,如有指定额外的内核参数,也必须给 debian-installer
映象重复指定。比如,如果需要从 ewa0
引导,并且在第一个串口使用控制台,您需要输入:
>>> boot ewa0 -flags "root=/dev/ram ramdisk_size=16384 console=ttyS0"
Debian GNU/Linux 安装光盘为 VGA 和串口控制台包含了一些预置的引导选项。键入
>>> boot xxxx -flags 0
使用 VGA 控制台引导,其中 xxxx
是您的 CD-ROM 驱动器的 SRM 记号。要使用第一个串口设备上的串行控制台,键入
>>> boot xxxx -flags 1
而对第二个串口上的控制台,键入
>>> boot xxxx -flags 2
[4] 具体来说,控制台子系统规范与需要的引导扇区格式和 DOS 分区表有冲突。
[5] 不包括 Jensen,1.7 以上版本的固件不支持 Linux — 查看 http://www.alphalinux.org/faq/FAQ-9.html 以获得更多的信息。