《用“芯”探核:基于龙芯的Linux内核探索解析》将在8月上旬推出
来源:YPS数据挖掘大师 作者:YPS行业综合门户 2020-08-03 浏览:337 字号:[大 中 小] 背景颜色:
YPS行业门户系统8月2日消息龙芯中科官方表示,为了帮助国产CPU平台的内核开发者更全面地了解学习Linux内核,基于龙芯平台的内核探索书籍——《用“芯”探核:基于龙芯的Linux内核探索解析》即将在8月上旬与读者见面。
本书由陈华才博士与龙芯中科联合打造,是一本信创领域的内核探索解析类书籍。陈华才博士作为官方Linux内核中龙芯代码的主要贡献者,长期从事龙芯内核研究和实践,现就职于江苏航天龙梦信息技术有限公司。
YPS行业门户系统获悉,本书内容主要分为以下几个方面,内核启动解析,异常与中断解析,内核管理解析,进程管理解析,显卡驱动解析,网卡驱动解析,电源管理解析。
【书籍面向人群】本书读者人群定位于Linux系统相关的开发人员——特别是基于龙芯处理器做内核开发的技术人员。
【书籍亮点】
作为第一本基于国产CPU的内核书籍,本书从龙芯CPU上运行的内核入手,基于最新的5.x内核,深入浅出地分析了内核的各个重要模块,并在其中讲解了大量关联知识。书籍内容紧密结合实战,贴合产业需求,兼顾模块间关系的讲解和代码本质的解析,并列举了大量可读性强的龙芯实现案例。
【全书章节】
第01章基础知识
1.1龙芯处理器简介002
1.1.1龙芯3号功能特征004
1.1.2龙芯3号处理器核008
1.1.3龙芯电脑基本结构015
1.2Linux内核简介018
1.2.1Linux内核发展简史019
1.2.2Linux内核的开发模式021
1.2.3关于长期维护稳定版本025
1.2.4龙芯的内核版本选型025
1.3如何高效阅读代码027
1.3.1找准入口点028
1.3.2理清主脉络029
1.3.3顾名思义看功能040
1.3.4理解补丁文件042
1.4如何开发健壮内核045
1.4.1内核代码风格046
1.4.2合理生成补丁048
1.4.3谨慎对待创新049
第02章内核启动解析
2.1内核源代码目录结构054
2.2内核启动过程:主核视角055
2.2.1
第一入口:kernel_entry056
2.2.2
第二入口:start_kernel()063
2.2.3重要函数:setup_arch()070
2.2.4重要函数:trap_init()083
2.2.5重要函数:init_IRQ()087
2.2.6重要函数:time_init()092
2.2.71号进程:kernel_init()096
2.3内核启动过程:辅核视角104
2.3.1
第一入口:smp_bootstrap105
2.3.2
第二入口:start_secondary()107
2.4本章小结110
第03章异常与中断解析
3.1寄存器操作113
3.2异常处理解析114
3.2.1复位异常和NMI115
3.2.2缓存错误异常116
3.2.3TLB/XTLB异常117
3.2.4其他通用异常126
3.3中断处理解析137
3.3.1中断处理的入口137
3.3.2中断处理的分派140
3.4软中断、小任务与工作队列151
3.4.1软中断softirq151
3.4.2小任务tasklet154
3.5本章小结159
第04章内存管理解析
4.1内存管理相关概念161
4.1.1龙芯3号的高速缓存161
4.1.2龙芯3号的TLB168
4.1.3龙芯的虚拟地址空间170
4.2物理内存页帧管理171
4.2.1物理地址空间177
4.2.2伙伴系统算法183
4.3内核内存对象管理201
4.3.1数据结构与API202
4.3.2核心函数解析209
4.4分页映射内存管理217
4.4.1持久内核映射221
4.4.2临时内核映射226
4.4.3非连续内存管理229
4.5进程地址空间管理241
4.5.1数据结构与API241
4.5.2内存映射250
4.5.3堆区管理257
4.5.4缺页异常处理258
4.6内存管理其他话题266
4.6.1反向映射267
4.6.2内存回收271
4.6.3巨页机制274
4.7本章小结275
第05章进程管理解析
5.1进程描述符278
5.1.1运行状态相关285
5.1.2标识调度相关289
5.1.3其他重要部分295
5.2进程创建296
5.2.1复制新进程296
5.2.2执行新程序308
5.3进程销毁314
5.3.1退出程序执行314
5.3.2清理进程资源317
5.4进程调度327
5.4.1基本概念328
5.4.2发展历史330
5.4.3公平调度策略334
5.4.4调度核心解析347
5.4.5进程切换解析360
5.5其他话题364
5.5.1CPU负载364
5.5.2调度域与调度组370
5.5.3NUMA均衡调度374
5.6本章小结380
第06章显卡驱动解析
6.1显卡概述382
6.1.1发展简史及有关概念382
6.1.2现代显卡的硬件结构385
6.2Linux图形系统架构388
6.2.1X-Window和Wayland388
6.2.2直接渲染、间接渲染和显卡驱动391
6.3Linux内核显卡驱动392
6.3.1寄存器读写393
6.3.2常用数据结构394
6.3.3显卡初始化411
6.3.4命令流处理435
6.3.5存储区域间数据交换439
6.3.6GPU重置(Reset)443
6.4本章小结446
第07章网卡驱动解析
7.1网络子系统概述448
7.2Linux以太网卡驱动449
7.2.1常用数据结构449
7.2.2网卡初始化452
7.2.3网卡的开与关456
7.2.4数据发送与接收457
7.2.5故障检测与修复(看门狗)466
7.3本章小结468
第08章电源管理解析
8.1电源管理概述470
8.2运行时电源管理473
8.2.1动态变频474
8.2.2自动调核488
8.3系统级睡眠管理507
8.3.1睡眠到内存(待机)509
8.3.2睡眠到磁盘(休眠)520
8.4本章小结527
附录A并发与同步原语
A.1内存屏障529
A.2每CPU变量533
A.3原子操作535
A.4开关抢占539
A.5自旋锁540
A.6顺序锁544
A.7信号量546
A.8互斥量548
A.9RCU机制549
A.10其他原语556
附录BLinux内核大事记
B.1史前时代560
B.2奇偶时代560
B.3快速演进时代562
B.4极速演进时代564
后记
参考文献
下载YPS行业门户系统APP,分享赚金币换豪礼
相关文章
关键词:龙芯,Linux,芯片
LinuxMint官方:LMDE是具有战略投资意义的planBLinuxDebian10.5发布,修复"BootHole"安全漏洞中国盘古团队发现苹果SecureEnclave芯片存在“不可修补”漏洞比肩Qt,龙芯中科、蓝星科技自主研发嵌入式图形系统TD华为海思5GNB-IoT芯片Boudica200实现小规模商用可拆卸更换键位,System76的Linux键盘原型浮现
