计算机为何不能立即启动?

计算机为何不能立即启动?

计算机已经存在了相当长一段时间。那么是什么阻止我们让计算机像普通家用电器和其他设备一样立即启动呢?这有可能吗?我知道有休眠和睡眠模式,但这些并不是真正的启动

答案1

计算机是状态机问题是,计算机启动时的初始条件(即字面上的即时条件)对你我来说并不是很有用。(即使在第一个电子移动之后)。

对你我有用的是该状态机的数百万个步骤。开发人员描述该状态的最简单方法是在程序中定义它,并且这些程序的运行时间始终不为零。

现在您可能会说:“很好,但是您不能缓存‘第一个可用状态’并从那里开始吗?”您可以,而且它确实如此,这(大致)就是从睡眠中恢复。(这就是为什么我认为在讨论改善启动时间时“排除”恢复不太公平的原因)。

答案2

当您打开计算机时,它会立即执行 BIOS 或 UEFI 启动管理器中的代码。执行 BIOS 或 UEFI 启动管理器不需要太多时间。它将初始化您的硬件,扫描您的存储设备以查找操作系统,然后运行操作系统。通常操作系统需要很长时间才能加载。

如果您使用一个非常简单的、可以立即加载的操作系统,例如仅显示图像序列或播放音乐文件,那么您就可以立即启动计算机。

答案3

问题在于操作系统非常庞大。所谓庞大,指的是数以百万计的代码行。即使是 Linux 3.6 也有近 1600 万行代码。据传 XP 有 4000 万行代码。

http://en.wikipedia.org/wiki/Source_lines_of_code

即使您使用固态硬盘,您仍然需要将该代码从非易失性存储器(磁盘驱动器)加载到易失性系统存储器(RAM)。

袖珍计算器有一个操作系统(它很小,但它可以运行程序)但是它非常小以至于它可以存在于系统板上的芯片中。

再次,这是由于 PC 拥有更大的操作系统,必须将其加载到系统内存中而产生的问题。

相关内容