三个微内核和四个名字的故事

2023-10-10 05:58

本文主要是介绍三个微内核和四个名字的故事,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

译者注:本文摘取下面博客的一部分内容说明。因为OKL4和seL4这些概念比较乱,作者的说明能帮我们稍微理清一下。

http://microkerneldude.wordpress.com/2012/10/02/giving-it-away-part-2-on-microkernels-and-the-national-interes/

L4

在OK Labs公司成立之前曾有一个NICTA的L4微内核版本。这是开源的Pistachio微内核的演变,最早主要是在德国的卡尔斯鲁厄大学开发的。我们已经把它移植到了一些架构,包括ARM,针对在资源受限的嵌入式系统做了一些优化,并设计和实现了一些非常酷的方式来进行快速的上下文切换(比Linux快50倍)。我们也将Linux移植到它上面运行(即使用L4作为一个管理程序来支持虚拟化的Linux)。得益于快速上下文切换技术,虚拟化的Linux比原生的Linux跑的还要快。

正如我所说,该微内核从一开始就是开源的(BSD许可证),并一直保持开源。而BSD许可证将允许我们fork出一个封闭源代码的版本(同时承认原作者),这将是一件愚蠢的事。我们希望我们的研究成果尽可能被广泛的使用。

高通

在2004年,L4微内核获得高通的关注。他们有两个具体的(而且相当不同的)的技术问题,因此他们正在寻找解决方案。一个需要快速,具有内存保护功能的实时内核。另一个是要求ARM上的Linux虚拟化。我们的L4提供了这两个问题的解决方案,这就是全部的内容。

高通公司聘请NICTA以帮助他们在他们的无线通信芯片部署L4。最初的评估和原型进行得很顺利,他们决定用L4作为其固件的基础。

这就是OK Labs公司成立所发生的一切。事实上,在我们创建了OK Labs公司时,第一台内置L4的手机已经在日本开始发售了!所有都是基于开源的内核。

OKL4 Microkernel

与高通合作开发的工作量变得太多了而无法在研究机构内部完成。事实上,税务局开始威胁NICTA的免税地位!此外,我们看到商业机会需要承担经营风险,这是你不能用纳税人的钱去做的。这就是为什么我们决定将相关的业务分拆出去成立OK Labs公司。 OK Labs公司OKL4微内核”名义下销售L4,并继续发展成为一个商业级的平台。

OK Labs公司最初做为一个服务企业运营,服务于高通,同时也有其他的客户。需要注意的是,OK Labs甚至不需要NICTA的授权去做到这一点,因为它采取了一个开放源码的发布和技术支持。任何人都可以这样做了(不过,当然,谁先创造了该技术也最适合这么做)。这些都意味着,从来就没有涉及到NICTA版税的任何问题。

另外,需要注意的是如果L4不是开源的话,高通几乎肯定不会采用,这是很重要的。他们的风格是在内部自己弄一套,重新实现L4将是他们自然的方法。我们的承诺对他们来说是不寻常的,却使得NICTA的技术被部署在超过15亿的台设备上。

OKL4 Microvisor

OK Labs公司后来决定要成为一家产品公司,并寻求风险投资来实现这个目标。他们开发了自己的产品,OKL4 Microvisor。这是OKL4微内核的下一代,并是在OK Labs公司从无到有开发出来的,NICTA(或其他人)对它没有所有权。它是(并且提供)在特许的基础上授权的,而这正是你期望一个产品公司做的。

seL4


然后就是第三个微内核了,seL4。这是由NICTA从头开始开发的,它的实现在数学上被证明是规范正确的。

正确性的证明是世界各地的头条大新闻事件。它是真正突破性的,但主要是作为一项科学成果:自上世纪70年代一些人曾试图证明但都没有成功。但是,按我的原子弹的比喻,一旦人们知道这是可能的,他们可以弄清楚自己如何去做。特别是自我们公布了该方法的基本知识之后(毕竟,做研究是NICTA的首要工作,如果不公布就不是研究了)。而且seL4的开发(和所有验证其可行的开发)花了25人一年的时间。这来自很长一段时间内澳大利亚最大的ICT研究的努力。公平地说,这已经使NICTA登上了国际舞台。

seL4的商业化


seL4可以变成一个令人兴奋的产品,但需要进一步的工作。这不是你在实验室做一些事情,这是公司的业务。这就是为什么NICTA需要一个商业化的渠道。

他们决定做的方式是专门授权seL4给OK Labs公司,在达到某些里程碑时有买断的选项(即获取IP买断的选项)。作为交换,NICTA获取了OK Labs公司的股权,以此来作为商业化成功的回报。通过OK Labs公司做为商业化的加速是一个显而易见的选择:首先,OK Labs公司开发市场和销售这种技术。其次,OK Labs公司在澳大利亚执行其所有工程,其他任何替代的企业都在海外。这是一个合理的交易。

这篇关于三个微内核和四个名字的故事的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/178426

相关文章

无线路由器哪个品牌好用信号强? 口碑最好的三个路由器大比拼

《无线路由器哪个品牌好用信号强?口碑最好的三个路由器大比拼》不同品牌在信号覆盖、稳定性和易用性等方面各有特色,如何在众多选择中找到最适合自己的那款无线路由器呢?今天推荐三款路由器让你的网速起飞... 今天我们来聊聊那些让网速飞起来的路由器。在这个信息爆炸的时代,一个好路由器简直就是家庭网编程络的心脏。无论你

hot100刷题第1-9题,三个专题哈希,双指针,滑动窗口

求满足条件的子数组,一般是前缀和、滑动窗口,经常结合哈希表; 区间操作元素,一般是前缀和、差分数组 数组有序,更大概率会用到二分搜索 目前已经掌握一些基本套路,重零刷起leetcode hot 100, 套路题按套路来,非套路题适当参考gpt解法。 一、梦开始的地方, 两数之和 class Solution:#注意要返回的是数组下标def twoSum(self, nums: Lis

c++的名字空间

名字空间 什么是名字空间 在C语言中定义的全局变量、函数、结构、联合、枚举、枚举值、宏都在全局作用域下,所以当项目比较庞大时,非常容易造成命名冲突(以模块名作前缀、后缀),所以C++中选择把全局作用域进行拆分成 子作用域进行管理,这些子作用域就是作名字空间。 如何设计名字空间 namespace 空间名 {// 子作用域在该作用域中定义全局变量、函数、结构、联合、枚举、枚举值...,不

OOP三个基本特征:封装、继承、多态

OOP三个基本特征:封装、继承、多态 C++编程之—面向对象的三个基本特征 默认分类 2008-06-28 21:17:04 阅读12 评论1字号:大中小     面向对象的三个基本特征是:封装、继承、多态。     封装 封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。   封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信

如何限制与管控员工上网行为?四个方法让员工效率倍增!【企业员工上网行为管理】

在信息化时代,员工的上网行为直接影响着工作效率和企业的安全性。不当的网络使用,如浏览与工作无关的网站、下载不安全的文件,可能导致工作效率低下,甚至引发安全风险。因此,许多企业正在积极寻找有效的措施来管控员工的上网行为,以确保工作效率的提升。 以下是四个常见且有效的员工上网行为管理方法,帮助企业实现更高效的网络管理。 方法一:配置网络防火墙进行访问限制 最基础的员工上网行为管理方法是通过配置防

三个同步与互斥问题之生产者与消费者

#include<stdio.h> #include<pthread.h> pthread_mutex_t  mutex; #define Max 10 pthread_cond_t pro; pthread_cond_t con; int buffer=0;//全局变量----一开始为0,只有生产者可以执行 void deal_produce(

三个同步与互斥问题之哲学家就餐

#include<stdio.h> #include <semaphore.h> #include<pthread.h> //筷子作为mutex   pthread_mutex_t chopstick[5] ;   int eatnum[5]={5,5,5,5,5}; void *eat_think(void *arg)   {       int i= *(cha

接下来的这个故事就来自于我的先生,一个交警的口述

这可是没有过的事情。先生是个交通警察,在事故科工作已经五、六年了,对于生离死别、阴阳两隔,用他自己的话说是已经有些麻木了;不用说他,就连我,对那些卷宗里血淋淋的照片都已经有些漠然。他的办公室常有悲悲切切的人来哭诉,他却总能在复议时做到不掺杂感情。我是个爱哭的女人,偏偏先生对于眼泪早已有了职业的免疫力,他说要是每个事故他都要为每个逝者陪眼泪的话,他早就活不下去了,但是今天不同,他分明是掉过泪了。

【linux 磁盘管理】Linux磁盘管理常用三个命令为df、du和fdisk。

Linux磁盘管理好坏管理直接关系到整个系统的性能问题。 Linux磁盘管理常用三个命令为df、du和fdisk。 df:列出文件系统的整体磁盘使用量du:检查磁盘空间使用量fdisk:用于磁盘分区 [root@izbp1f0leha0lvmqfhigzpz code]# dfFilesystem 1K-blocks Used Available Use% Mounted

JD 1204:农夫、羊、菜和狼的故事

OJ题目:click here~~ #define vegetable_go 0#define vegetable_come 1#define sheep_go 2#define sheep_come 3#define wolf_go 4#define wolf_come 5#define nothing_go 6#define nothing_come 7using