摘要:传统的操作系统设计所面临的主要挑战是需要管理的资源数量, 多样性, 分布范围不断增加以及系统状态频繁变化. 然而, 现有操作系统结构已经成为应对上述挑战的最大障碍, 原因如下: (1) 紧耦合和中心化的结构不仅损害了系统的灵活性和扩展性, 还导致了操作系统生态分离; (2) 系统中单一的隔离机制, 如内核态-用户态隔离, 造成了各种能力之间的矛盾, 如安全性和性能等. 为此, 结合简捷的分层软总线设计思想和多样化隔离机制来组织操作系统组件, 提出一种新型操作系统模型——Yggdrasil. Yggdrasil将操作系统功能分解为以软总线相连接的组件节点, 其通信被标准化为经软总线的消息传递. 为支持特权态等隔离状态的划分和不同的软件层次, Yggdrasil还引入桥节点实现多层软总线的级联和受控通信, 通过自相似的拓扑特性使操作系统的逻辑表述能力和扩展性都得到了极大的强化. 此外, 软总线的简单性和层次性也有助于实现去中心化. 构建操作系统的分层软总线模型实例HiBuOS, 通过3方面的具体设计验证并展示基于Yggdrasil思想来开发新型操作系统的可行性: (1) 根据目标操作系统的规模和要求设计规划多层总线结构; (2) 选择具体的隔离和通信机制实例化桥节点和软总线; (3) 实现基于分层软总线风格的操作系统服务. 对HiBuOS的评估表明, 它没有引入明显的性能损耗, 而且还在提高系统可扩展性, 安全性和生态发展方面具有显著的优势和潜力.