加入收藏 | 设为首页 | 会员中心 | 我要投稿 西安站长网 (https://www.029zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动 > 正文

华为“鸿蒙”所涉及的微内核到底是什么?一文带你认识微内核

发布时间:2019-06-28 20:32:26 所属栏目:移动 来源:4d44f50c张
导读:副标题#e# 有消息宣称,华为的鸿蒙系统搭载的内核和安卓的完全不一样,安卓使用的是宏内核,而华为使用的则是另外一款全新的构架微内核,这款内核将会让系统的应用程序都单独运行不会互相打扰影响,而且其优点还不仅于此。而且谷歌也拥有微内核新星 Google

seL4 是在第二代内核 L4 的基础上发展而来的。seL4 不仅仅继承了 L4 内核家族的高性能特性,还具备基于端点(enndpoint)的 IPC 机制。这种 IPC 机制最大的特点是使用了能力空间的概念,进程在使用 IPC 请求系统服务时必须具备相对应的能力,进程持有不可伪造的令牌来表示拥有请求某种服务的能力。令牌可以被复制,可以被转移,还可以通过 IPC 进行传输。令牌其实是一个指向存在于内核空间内核对象的指针,所以普通进程并不能修改自身以及其他进程的权限分配,但是内核可以对令牌指定的权限进行控制,从而保证了用户态不能绕过能力空间这个机制对系统服务造成滥用。

seL4 还是第一个完全通过形式化验证的内核,通俗说形式化验证就是在数学软件的帮助下使用数学语言自动化地推导检查系统的每一个运行状态。seL4 形式化验证相关论文。

其他的微内核系统:Fuchsia,Minix

Fuchsia 是 Google 开发的一款全新操作系统,试图覆盖手机、平板甚至笔记本等一系列领域。Google 为该系统配备了 Vulkan 图形接口、3D 桌面渲染 Scenic、Flutter 应用开发框架,还有一个称为 zircon 的微内核。zircon 内核是从高通平台的一个 Bootloader 项目:Little Kernel 发展而来。zircon 内核属于微内核设计,只提供 IPC,进程管理,地址空间管理功能。zircon 区别于以进程或者以文件为核心的设计,zircon 是以内存为核心来设计的,内存在 zircon 中是以对象的方式存在,可以通过 channel 通信机制传递虚拟内存对象(Virtual memory object)的句柄,进程拿到句柄后可以把这块内存映射到自己的空间。

Minix 系统则由荷兰阿姆斯特丹的 Vrije 大学的Andrew S.Tanenbaum 教授所开发。该系统最大的特点是可以故障隔离,自动重启失败的服务。Minix 使用分层设计,最底层的微内核提供中断处理、进程管理、进程通信等服务,这一层运行在内核态;中间层提供轮回服务(Reincarnation Server)、文件服务、进程管理、X图形服务以及驱动等,这一层运行在用户态;最上层为用户进程。其中轮回服务负责在中间层的服务出现崩溃时重启这些服务,从而保证服务的自我修复。Minix 由于其自我修复特性被英特尔管理引擎(ME)所选用,该管理引擎主要负责管理英特尔芯片的内部模块。

微内核的优缺点

优点

  • 系统服务模块化,可移植性高;
  • 内核安全性提高(模块内部的 bug 不影响内核稳定,将黑客利用软件漏洞造成的破坏限制在单个模块内部);
  • 可以多套系统服务共存,相当于同时运行多种操作系统;
  • 稳定统一的接口(可以独立维护私有驱动以及服务,不需要跟内核源码绑定);
  • 在商业上,微内核可以避免代码受到一些开源协议的影响,比如 GPL 协议;
  • 内核精简,可以进行形式化验正,利用数学证明内核的安全性;
  • 数学可证明的实时性;
  • 非常适合多处理器系统设计,在多处理器核心计算机上,互相依赖的系统服务可以同时运行;

(编辑:西安站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读