人生需要总结

微内核OS学习

背景

最近在看《计算机操作系统》这本书,里面有介绍到微内核OS结构,想到之前华为发布的鸿蒙OS,有一些新的认识。

一、从鸿蒙OS说起

鸿蒙OS说自己使用了“分布式架构”,后面还有一个高大上的词“确定时延引擎”。当时就感觉高大上,具体是啥也没想清楚。

二、说说微内核OS结构

微内核结构是一个精简的结构。具体什么样的结构是微内核结构,目前还没有定义。

但是可以从几个方面来描述。

1、足够小的内核(定义有些主观)

微内核不是一个完整的OS,只是OS中最基本的部分。

2、基于客户/服务器模式(是不是很奇怪?)

C/S模式常见于网络服务,微内核是OS的一部分,C是谁?S是谁?

书上说了,OS中最基本的部分放入内核,其他大部分功能放在微内核外面的一组服务器(进程)中实现。

这个很明显可以理解了,C/S并不特指跨系统的交互,即使是在一个系统内,也是适用的。

这个从宏观上也可以打个比方:

我们通过58到家APP使用58到家的服务,这整个过程是一种基于C/S模式,但是在S端,内部又是通过各种微服务调用来实现的。也就是说,在S内部,还是基于C/S模式。

3)应用“机制与策略分离”原理

这个“机制”、“策略”是更进一步的抽象,暂时还不太能理解。

4)采用面向对象技术

这个大家应该都很熟悉了。

三、再看OS的分布式架构

1、分布式架构

因为微内核采用C/S模式,所以它提供了对分布式系统的支持(书上有写)。

C/S就是基于通信的,对于服务调用方而言,只要能够定位到服务提供方,就能够进行通信。不管服务提供方是在同一个系统内,还是分布在因特网上。

所以说,鸿蒙OS的“分布式架构”,就是指OS的分布式。

2、确定时延引擎

既然是基于通信的机制,那么对一个通信加上“超时”的参数,是不是就是所谓的“确定时延引擎”了呢?

当然,超时时间参数容易加,具体实现还是不那么简单的。

四、后记

既然上面提到了“超时”,那么常用的超时功能是怎么实现的呢?

posted @ 2020-05-03 10:00  水木桶  阅读(1223)  评论(0编辑  收藏  举报