【问题标题】:The realisticity of writing a full operating system as an UEFI application [closed]将完整操作系统编写为 UEFI 应用程序的现实性 [关闭]
【发布时间】:2016-08-11 11:33:37
【问题描述】:

从技术上讲,UEFI 提供了许多功能,这些功能是操作系统(例如文件系统)基础工作的一部分。从某种意义上说,在引导过程中所有东西都被操作系统丢弃并重新实现是一种耻辱。

我想知道它将多少功能操作系统实现为一个简单的 UEFI 应用程序。我正在考虑图形用户界面和多任务处理。使用 FAT32 作为文件系统,UEFI 应该可以很好地用于很多用途,身份映射内存也应该如此。它将成为一个非常精简和简单的操作系统,甚至可能不需要安装。

问题是,就完整操作系统的功能而言,可行的限制在哪里?有什么建议吗?

【问题讨论】:

  • 我怀疑它太不灵活了。当然,很少有人会想要一个合作的多任务处理程序。它会比 Ruby 在带有生锈电线的算盘上运行要慢。 FAT32 已死,(至少对于重要的系统而言)。

标签: c osdev uefi


【解决方案1】:

请不要。

UEFI 没有隔离,它直接向用户公开它的所有状态、驱动程序、句柄和协议,就像当时的 DOS 一样。

没有虚拟地址,没有用户模式,没有特权级别,但有一堆代码旨在快速工作并被快速丢弃。任何与用户交互的 UEFI 应用程序都是等待发生的潜在安全灾难。

尽快调用 gRT->ExitBootServices 并启动 Linux、QNX、L4、Redox 或您喜欢的任何合适的操作系统内核。

【讨论】:

  • 我知道这几乎是 Apple 用户在 Mac OS 9 之前所使用的。
猜你喜欢
  • 2012-10-07
  • 2022-10-01
  • 1970-01-01
  • 2011-10-31
  • 1970-01-01
  • 2019-07-04
  • 2014-06-20
  • 2010-11-21
  • 2011-11-19
相关资源
最近更新 更多