[返回经济观察首页]·[所有跟帖]·[ 回复本帖 ] ·[热门原创] ·[繁體閱讀]·[版主管理]
转贴:麒麟操作系统到底厉害在那里?
送交者: hiku[☆★声望品衔8★☆] 于 2019-08-12 21:45 已读 69 次  

hiku的个人频道

说鸿蒙和麒麟之前,回顾一哈电子行业的软硬件历史。

 

硬件方面,半个世纪了,一直是诺依曼体系。说白了,就是机器语言是按照顺序,一条一条地执行下去,直到结束。


每一条指令,其实可以把它理解成,它就是一个“CPU”。也就是说,每一条指令都必须拥有CPU的完整功能,才能让这条指令能“自动”地运行。 

 

一般的CPU的指令数量,从几十条到上百条不等。也就是说,从原理上说,一个普通CPU芯片,它的内部应该有几十个,上百个的小“CPU”,也就是成千上百的CPU内核。

 

程序是指令的组合。 数量从几十条指令到上百万不等,甚至可以达到上千万,比如微软的操作系统。 

 

在诺依曼的那个年代,为了运行一个程序,一个CPU内部需要集成千上万的CPU内核,这是不能想象的。因此诺依曼体系的最重要的一个特征就是,把需要运行的程序给“软件化”,也就是程序运行之前,先放到内存里。程序运行时,每一条指令被自动地,依次送到一个CPU里边运行。 运行完成后, 再把第二条指令送到CPU运行。。。直到最后。这就是 所谓的Storage programs。 第二个特征就是每一时间片刻,只能运行一个程序。 

 

 

诺依曼体系体现在软件方面,尤其是高级语言上面,就是所有的程序,都必须放在function里运行。为什么?因为诺依曼体系,每一个时间节点只允许运行一条指令。而function是现代所有高级程序语言里,唯一能够做到,一个程序运行完之后,可以回到原来起点的装置。

 


 

世界最早的高级程序语言,比如ALGO, 它发明的初衷是用来运行代数表达式的(algebra---也就Algo语言的名称来源)。当时内存非常的小,只有几百个,上千个字节。所以它的编译器必须做到极简,直接。它采用了reverse polish的方式来改写代数表达式,然后用stack等方式来实现。举个例子,比如2+4*20,首先用shunting yard的算法,把它变成2  4  20  *  +这样的polish reverse 表达式,然后把这个表达式里边的数,运算符号等,依次送入stack。运行时,当遇到第一个运算符号时,就弹出stack最上边的两个数,用这个运算符计算出结果,然后再把结果再次推入Stack。然后再计算。。。。

 

algo 这个最早的高级程序语言大获成功。从此而后,深深地影响了他以后几乎所有的它的徒子徒孙的高级语言,比如 B, C, C++, JAVA, c#,  PYTHON。。。。。。

 

 

转眼间,时间进入2019年。硬件技术发生了天翻地覆地变化。 

 

现在电子行业是个什么情况?

首先,一个cpu里边,可以集成十几个,几十个小CPU,所谓的内核。如果需要,甚至可以集成上百个,成千个内核。 

其次,内存可以做到无限的大。几百G,甚至上T的内存,是可以轻而易举地做到。 

第三,5G出现。电子设备之间的连接速度,可以达到G的级别,也就是传统计算机内部CPU与内存之间的传输速度。 

 

 

鸿蒙操作系统系统就是在这种硬件下诞生的。 所以人们不难想象,现在的鸿蒙操作系统,它的体系一定会推翻诺依曼体系,搞并行,或者搞分布式。具体来说,一定是这样的:

 

 

首先,1, 麒麟未来的处理器,内部一定会集成几百个,甚至上千个内核,每一个内核就是一个cpu。 

 

其次,2, 每一个麒麟处理器,一旦通电,就会自动地把内存,动态或者静态地划分给它内部几百个,上千个内核。将来机有可能,每一个内核,都带有自己独立的内存,容量从几百G到T不等。 

 

1+2意味着, 麒麟处理内部的成百上千的内核,每一个内核都可以独立地运行一个程序。 也就是说,同一时间片刻,可以并行地运行几百上千个独立的程序。 

 

 

上面是硬件,下边说软件,也就是鸿蒙操作系统。 

 

非常显然,鸿蒙操作系统就是一个调度,并行,分布式的操作系统。它做的唯一的一件事,就是调度各个程序,各个硬件之间通讯。它本省是不做任何运算的。

 

比如,当张三打开word这个软件,鸿蒙随机地从它内部上千的内核中调用一个内核,这个内核就做一件事,运行word文档的编辑。 

 

当李四打开网友浏览互联网时,鸿蒙操作系统随机地分配一个内核,专门做这个浏览网页的事。

。。。

 

麒麟里边有上千个内核,意味着,同一时间片刻,麒麟可以并行地运行数千个程序,而不是诺依曼的同一时刻,只能运行一个程序!诺依曼体系被抛弃了。

 

当张三的word文档编辑完成,需要存盘,它给麒麟的调度处理器(也是开机时候随机地分配的,直到关机前,这个随机的分配内核,就一直充当调度员,主处理器的脚色)发一个信号,一条信息,麒麟处理器然后随机分配一个内核去处理存取文件这个事。

 

 

最牛比的地方是,鉴于鸿蒙操作系统是一个分布式的操作系统,当麒麟处理器的全部内核已经分配使用完,也不能够collection 已经分配的内核,或者当它需要更强大算力,比如需要模拟核爆炸,那鸿蒙操作系统,可以运用5G技术,全球寻找闲置,或者某台超算,然后万里之外把那台计算机分配给手边的需要算力的这个程序。。。

 

 

 

 

google 即将发布的,替代安桌的新操作系统Fuchsia,有人透露基本就是上述体系的。但是,google只作软件,不做硬件,它是无法找到一个内部有上百上千内核的处理器,比如麒麟处理器,google 的Fuchsia只能做软件模拟, 因此肯定是干不过鸿蒙,被鸿蒙干掉,就是个时间问题。

 

 

版权所有,盗版有功。欢迎电邮任正非。

喜欢hiku朋友的这个贴子的话, 请点这里投票,“赞”助支持!
[举报反馈]·[ hiku的个人频道 ]·[-->>参与评论回复]·[用户前期主贴]·[手机扫描浏览分享]·[返回经济观察首页]
帖子内容是网友自行贴上分享,如果您认为其中内容违规或者侵犯了您的权益,请与我们联系,我们核实后会第一时间删除。

所有跟帖:        ( 主贴楼主有权删除不文明回复,拉黑不受欢迎的用户 )


    用户名:密码:[--注册ID--]

    标 题:

    粗体 斜体 下划线 居中 插入图片插入图片 插入Flash插入Flash动画


         图片上传  Youtube代码器  预览辅助

    打开微信,扫一扫[Scan QR Code]
    进入内容页点击屏幕右上分享按钮

    楼主本栏目热帖推荐:

    >>>>查看更多楼主社区动态...






    [ 留园条例 ] [ 广告服务 ] [ 联系我们 ] [ 个人帐户 ] [ 版主申请 ] [ Contact us ]