操作系统的启动与硬件体系结构密不可分。一个操作系统究竟应该按照什么样的方式启动并没有一套统一的标准。因此我们可以说,操作系统的启动过程是一个与操作系统自身无关的过程,但却是一个与硬件体系结构相关的过程。
这句话听起来不好理解,却能够恰当表达操作系统启动的本质。举个例子来说,同样是Linux操作系统,在x86体系结构下与在ARM体系结构下启动是完全不同的,这就是所谓的“启动过程与操作系统本身无关”,而Windows和Linux虽然分属不同的操作系统,但如果两个操作系统都在x86下运行,其启动过程从结构上来讲仍然是类似的,这就是所谓的“启动过程与硬件体系结构相关”。
但是,这里似乎忽略了一个很重要的概念—操作系统应该怎样界定,或者说操作系统是从上电那一刻开始算起呢还是从其他时刻开始算起?想要说清楚这个问题,我们首先来讨论一下操作系统的启动流程。