在早期,我们生活在一个物理世界中。一切都以主管模式运行,很像公社。不幸的是,由于没有领导者,很难维持秩序并遏制错误和恶意代码,因此混乱和恶作剧随之而来。只需要一个糟糕的指针就可以让最先进的设备屈服,见证火星探测器及其与那块荨麻岩石的疯狂遭遇。
进入单片操作系统,我们开始使用内存管理单元将应用程序彼此隔离和内核隔离。在监控器模式下运行的内核是老板,执行控制和访问物理地址(内存和 IO)、切换应用程序上下文、传递中断等所需的所有特殊指令。
放置在自己的沙箱中的单个应用程序可以根据内核授予的功能自由执行。但是,应用程序彼此隔离,如果应用程序行为不佳,MMU(警察)将阻止该行为传播到其他应用程序。单个应用程序可能会崩溃,但整个系统将幸存下来。
新的独裁政权为混乱和混乱带来了秩序和安全,但像大多数中央集权政府一样,它笨拙且效率低下。它是一堆代码,所有服务(即TCP / IP堆栈,IPC机制)和硬件设备驱动程序都以最高级别的特权运行。因此,使用它们的每个应用程序,无论多么非关键,都必须在最高设计保证级别(DAL)进行测试和验证。对整体质量的任何变化,无论多么小,都需要对整个质量进行重新测试和重新验证。
我们伟大国家的缔造者预见到权力和权威集中的危险。是的,需要一个强大的中央机构来提供国防和规范各州之间的商业,但他们认识到,地方事务最好由最熟悉当地情况的人在当地处理。因此,经过一些断断续续的开始,我们的联邦主义制度开始形成,某些列举的权力授予中央联邦政府,其余的权力委托给各州和人民。
显然,创始人不仅仅是农民、商人和政治家。他们是第一代有远见的嵌入式系统开发人员,否则他们以无限的智慧如何预见到现代安全关键型微内核,这是计算联邦主义的体现。正如我们的祖先所设想的那样,现代微内核仅提供应用程序所需的核心服务,例如内存映射、传递中断和执行全局规则。非关键服务(如 I/O 和网络)的驱动程序作为独立的服务器实现,每个服务器都映射到自己的地址空间。通过这种方式,设备驱动程序不仅与内核隔离,而且与其他设备驱动程序和应用程序隔离,从而最大限度地减少其故障影响。
微内核方法还简化了测试和验证,不仅在初始设计阶段,而且在将来的修改中。使用微内核体系结构,驱动程序独立于内核,并在使用它的应用程序的权限级别运行。此外,驱动程序只需经过使用它的最高 DAL 应用程序的设计保证级别的认证。这大大减少了设计和修改驱动程序和应用程序所需的验证和认证工作量。
另一天,我们将讨论分布式设备驱动程序如何处理像 DMA 这样的特权操作(非常酷,可以把它想象成为人民工作的国土安全部)。同时,为您的应用程序提供一个分散的政府,分配权力和权限,以实现最大的安全性、可靠性和效率。为您的下一个安全关键设备购买微内核操作系统。
审核编辑:郭婷
-
探测器
+关注
关注
14文章
2630浏览量
72985 -
操作系统
+关注
关注
37文章
6794浏览量
123275 -
监控器
+关注
关注
1文章
268浏览量
26554
发布评论请先 登录
相关推荐
评论