没有合适的资源?快使用搜索试试~ 我知道了~
鸿蒙内核源码分析(百篇博客分析.挖透鸿蒙内核).pdf
需积分: 13 9 下载量 141 浏览量
2021-04-29
16:20:50
上传
评论
收藏 12.96MB PDF 举报
温馨提示
试读
406页
鸿蒙内核源码分析(百篇博客分析.挖透鸿蒙内核).pdf
资源推荐
资源详情
资源评论
1
13
13
13
13
13
13
13
15
15
16
16
17
18
19
20
20
22
22
22
23
23
25
26
27
28
29
29
31
31
31
32
32
33
34
35
36
36
38
38
38
39
39
40
41
41
42
43
43
目录
目录
00_说明
如何确认本文档为最新版本?
致敬内核开发者
为何要精读内核源码?
哪些地方能看到最新分析?
哪些地方能看到最新注解?
关注不迷路.代码即人生
01_双向链表篇
谁是鸿蒙内核最重要的结构体?
基本概念
功能接口
强大的宏
结构体的最爱
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
02_进程管理篇
官方基本概念
进程状态说明:
使用场景
开始正式分析
进程模块是如何初始化的
内核态根进程创建过程
用户态根进程创建过程
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
03_时钟任务篇
时钟概念
时钟节拍的实现方式
第一:检查当前任务的时间片,任务执行一次分配多少时间呢?答案是2个时间片,即 20ms.
第二:扫描任务,主要是检查被阻塞的任务是否可以被重新调度
第三:定时器扫描,看是否有超时的定时器
最后看调度算法的实现
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
04_任务调度篇
任务即线程
官方是怎么描述线程的
执行task命令
task长得什么样子
Task怎么管理
什么是任务池?
就绪队列是怎么回事
任务栈是怎么回事
任务栈初始化
Task函数集
目录
1 / 406
43
44
46
48
48
49
49
49
50
50
51
52
52
53
54
54
54
55
57
59
59
60
60
60
61
61
61
62
63
64
65
65
67
67
67
68
70
70
71
73
73
74
74
75
75
77
77
77
78
78
使用场景和功能
创建任务的过程
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
05_任务管理篇
任务即线程
官方是怎么描述线程的
执行task命令
task长得什么样子
Task怎么管理
什么是任务池?
就绪队列是怎么回事
任务栈是怎么回事
任务栈初始化
Task函数集
使用场景和功能
创建任务的过程
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
06_调度队列篇
为何单独讲调度队列?
涉及函数
位图调度器
进程就绪队列机制
几个常用函数
同一个进程下的线程的优先级可以不一样吗?
task调度器
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
07_调度机制篇
为什么学个东西要学那么多的概念?
进程和线程的状态迁移图
谁来触发调度工作?
源码告诉你调度过程是怎样的
请读懂OsGetTopTask()
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
08_总目录
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
09_调度故事篇
有个场馆
表演走什么流程?
西门大官人什么时候表演?
西门好事被破坏了怎么办了?
目录
2 / 406
79
79
79
79
79
79
79
79
81
81
82
82
82
82
84
85
86
88
88
89
89
90
90
92
92
92
93
94
95
96
97
99
99
100
100
100
100
100
100
100
102
103
103
103
103
104
104
106
106
106
表演给谁看呢?
张大爷团队做什么的?
王场馆是做什么的?
李后勤是做什么的?
故事想说什么呢?
内核和故事的关系映射
请牢记这个故事
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
10_内存主奴篇
主子和奴才
先说如果没有内存管理会怎样?
内存管理在管什么?
MMU是干什么事的?
举例说明
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
11_内存分配篇
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
12_内存管理篇
初始化整个内存
鸿蒙虚拟内存整体布局图
内核空间是怎么初始化的?
Page是如何初始化的?
进程是如何申请内存的?
task是如何申请内存的?
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
13_源码注释篇
百万汉字注解
为何要精读内核源码?
热爱是所有的理由和答案
(〃・ ‿・ )ゞ鸿蒙内核开发者
理解内核的三个层级
加注方式是怎样的?
有哪些特殊的记号
新增zzzz目录
如何同步官方最新代码?
百篇博客分析
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
14_内存汇编篇
ARM-CP15协处理器
先拆解一段汇编代码
目录
3 / 406
107
107
108
110
111
112
113
113
115
115
115
116
117
118
119
121
122
124
124
125
125
125
125
127
128
129
131
131
132
132
133
136
138
138
139
139
141
142
142
144
144
144
145
145
146
146
147
148
148
150
CP15有哪些寄存器
TTB寄存器(Translation table base)
mmu上下文
TLB(translation lookaside buffer)
asid寄存器
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
15_内存映射篇
MMU的本质
一级页表L1
LOS_ArchMmuQuery
二级页表L2
映射初始化的过程
OsSetKSectionAttr 内核空间的设置和映射
LOS_ArchMmuMap
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
16_内存规则篇
主子和奴才
先说如果没有内存管理会怎样?
内存管理在管什么?
MMU是干什么事的?
举例说明
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
17_物理内存篇
如何初始化物理内存?
如何分配/回收物理内存? 答案是伙伴算法
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
18_源码结构篇
鸿蒙内核源码注解分析
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
19_位图管理篇
为何进程和线程都是32个优先级?
应用开发和内核开发有哪些区别?
什么是位图管理器?
位图在哪些地方应用?
编程实例
结果验证
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
20_用栈方式篇
目录
4 / 406
152
153
153
155
155
156
156
158
158
158
159
159
160
160
162
162
162
163
163
164
164
164
165
165
167
167
168
168
169
169
170
170
170
172
172
173
173
173
173
173
174
175
175
176
176
176
177
178
178
180
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
21_线程概念篇
本篇说清楚任务的问题
第一大块:多核CPU相关块
第二大块:栈空间
第三大块:资源竞争/同步
第四大块:任务调度
第五大块:任务间通讯
第六大块:辅助工具
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
22_汇编基础篇
汇编很简单
square(c -> 汇编)
fp(c -> 汇编)
main(c -> 汇编)
文件全貌
先看最短的那个
入参方式
追问三个问题
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
23_汇编传参篇
汇编如何传复杂的参数?
入参方式
memcpy汇编调用
逐句分析 framePoint
总结
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
24_进程概念篇
本篇说清楚进程
官方基本概念
官方概念解读
ProcessCB真身
第一大块:和任务(线程)关系
第二大块:和其他进程的关系
第三大块:进程的五种状态
第四大块:和内存的关系
第五大块:和文件的关系
第六大块:辅助工具
百篇博客.往期回顾
百万汉字注解.百篇博客分析
关注不迷路.代码即人生
25_并行并发篇
目录
5 / 406
剩余405页未读,继续阅读
资源评论
鸿蒙内核源码分析
- 粉丝: 1204
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功