v03.01 百图画鸿蒙(任务控制块) | 竞争系统资源的最小运行单元 | 画出鸿蒙骨骼系统
Posted 鸿蒙内核源码分析
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了v03.01 百图画鸿蒙(任务控制块) | 竞争系统资源的最小运行单元 | 画出鸿蒙骨骼系统相关的知识,希望对你有一定的参考价值。
百图画鸿蒙 | 一图一主干
-
如果把鸿蒙比作人,百图目的是要画出其骨骼系统。
-
百图系列每张图都是心血之作,耗时甚大,能用一张就绝不用两张,所以会画的比较复杂,高清图会很大,可在公众号中回复 百图 获取
3
倍超高清最新图。v**.xx
代表图的版本,请留意图的更新。 -
任务控制块 是内核最重要和复杂的超级结构体,注意没有说之一,鸿蒙内核的说法叫任务,外部的叫法就是线程,它像个小孩老被家长(进程)管着。非常的调皮捣蛋,家里还有很多像它一样的小孩,都是一个爸生的,孩子们都有自己的房间(独立栈空间包括用户态栈和内核态栈), 他们的想法创意很多,各种各样的需求,经常要和别人玩,不仅要和自己的兄弟姐妹玩,还要和小区里的其他小朋友玩。玩着玩着就容易抢东西打起来(资源竞争),让小区管理员(内核进程)和家长们(用户进程们)闹心的很, 就得帮着这群熊孩子协调资源。毕竟他们才是祖国的花朵,未来是属于他们的。
-
以上虽是个小比喻,其实内核也基本是这么玩的,内核一切的一切是围绕着任务来展开的,如果非要选一个内核最核心的概念,那只能是它,所以这是一个必须要熟练掌握的结构体,也是最复杂的一个结构体,这张图画了足足两天时间,后续还会不断的修改,请关注它的动态变化,这也是一个非常考验对双向链表掌握程度的结构体,和进程控制块一样很容易让你的脑栈溢出,如果能熟悉其整体运作,内核的基本功就比较扎实了。
百文说内核 | 抓住主脉络
- 百文相当于摸出内核的肌肉和器官系统,让人开始丰满有立体感,因是直接从注释源码起步,在加注释过程中,每每有心得处就整理,慢慢形成了以下文章。内容立足源码,常以生活场景打比方尽可能多的将内核知识点置入某种场景,具有画面感,容易理解记忆。说别人能听得懂的话很重要! 百篇博客绝不是百度教条式的在说一堆诘屈聱牙的概念,那没什么意思。更希望让内核变得栩栩如生,倍感亲切。
- 与代码需不断
debug
一样,文章内容会存在不少错漏之处,请多包涵,但会反复修正,持续更新,v**.xx
代表文章序号和修改的次数,精雕细琢,言简意赅,力求打造精品内容。 - 百文在 < 鸿蒙研究站 | 开源中国 | 博客园 | 51cto | csdn | 知乎 | 掘金 > 站点发布,公众号回复 百文 可方便阅读。
按功能模块:
-
百万汉字注解内核目的是要看清楚其毛细血管,细胞结构,等于在拿放大镜看内核。内核并不神秘,带着问题去源码中找答案是很容易上瘾的,你会发现很多文章对一些问题的解读是错误的,或者说不深刻难以自圆其说,你会慢慢形成自己新的解读,而新的解读又会碰到新的问题,如此层层递进,滚滚向前,拿着放大镜根本不愿意放手。
-
< gitee | github | coding | codechina > 四大码仓推送 | 同步官方源码,公众号中回复 百万 可方便阅读。
以上是关于v03.01 百图画鸿蒙(任务控制块) | 竞争系统资源的最小运行单元 | 画出鸿蒙骨骼系统的主要内容,如果未能解决你的问题,请参考以下文章
v03.01 百图画鸿蒙(任务控制块) | 竞争系统资源的最小运行单元 | 画出鸿蒙骨骼系统
v02.02 百图画鸿蒙(进程控制块) | 隔壁练腰的老王 | 画出鸿蒙骨骼系统
v02.02 百图画鸿蒙(进程控制块) | 隔壁练腰的老王 | 画出鸿蒙骨骼系统
v02.02 百图画鸿蒙(进程控制块) | 系统资源管理的最小单元 | 画出鸿蒙骨骼系统