-
Notifications
You must be signed in to change notification settings - Fork 452
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
29 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
--- | ||
title: 2024秋冬季开源操作系统训练营三阶段学习总结报告-cereal | ||
date: 2024-12-02 18:14:03 | ||
tags: | ||
--- | ||
|
||
### 组件化操作系统 | ||
|
||
三阶段通过使用三周的时间,初步认识了组件化操作系统arceos,和之前的宏内核rcore,存在很大区别,组件化操作系统,通过将操作系统中通用模块进行封装、抽象,将操作系统中的各个模块分离开来,针对应用场景,对不同模块进行组合,完成功能。 | ||
|
||
不同的内核实现方式,势必都有其优势和劣势,如何针对应用场景进行扬长避短,并且快速搭建不同实现方式的内核,组件化操作系统给出了答案。 | ||
|
||
### Unikernel | ||
|
||
其思想更像是之前学习嵌入式中学习到的抽象层的概念,通过组件将通用的底层的功能进行封装,通过api接口与上层应用层进行连接,内核和应用共用地址空间,不需要特权转移,极大提高了任务运行效率。 | ||
|
||
### 宏内核 | ||
|
||
在组件化操作系统中,添加宏内核插件,此时通过系统调用为上层应用提供支持,在插件内部仍是通过调用组件的接口,完成系统调用功能。 | ||
|
||
宏内核插件也需要提供多任务调度、多地址空间等功能。 | ||
|
||
### Hypervisor | ||
|
||
这部分还没有进行学习,更多学习宏内核starry内容。 | ||
|
||
### 感悟 | ||
|
||
通过这部分的学习,初步认识了组件化操作系统,为阶段四的实习部分打下了基础,学习异构的思想,在四阶段中,也可以使用这种思想,为组件化操作系统添加更多的组件,支持更多的功能。 |