万本电子书0元读

万本电子书0元读

顶部广告

用“芯”探核 基于龙芯的Linux内核探索解析电子书

售       价:¥

96人正在读 | 0人评论 6.2

作       者:陈华才

出  版  社:人民邮电出版社有限公司

出版时间:2020-08-01

字       数:62.7万

所属分类: 科技 > 计算机/网络 > 软件系统

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
这是一本基于龙芯平台,结合Linux-5.4.x 版本的内核源代码来解析Linux 内核的书籍。本书首先介绍了有关龙芯处理器和Linux 内核的基础知识,然后重点讲解了内核启动、异常与中断、内存管理、进程管理、显卡驱动、网卡驱动和电源管理这7 大板块的内容。本书甚少涉及代码的细枝末节,而是重点关注代码实现的主干流程,并且创造性地引入了树形视图和链式视图这两种比流程图更好用的代码解析方法。 本书适合Linux 系统相关的开发人员,特别是基于龙芯处理器做内核开发的技术人员学习参考。
目录展开

扉页

内容提要

专家推荐

序1

序2

前言

第01章 基础知识

1.1 龙芯处理器简介

1.1.1 龙芯3号功能特征

1.1.2 龙芯3号处理器核

1.1.3 龙芯电脑基本结构

1.2 Linux内核简介

1.2.1 Linux内核发展简史

1.2.2 Linux内核的开发模式

1.2.3 关于长期维护稳定版本

1.2.4 龙芯的内核版本选型

1.3 如何高效阅读代码

1.3.1 找准入口点

1.3.2 理清主脉络

1.3.3 顾名思义看功能

1.3.4 理解补丁文件

1.4 如何开发健壮内核

1.4.1 内核代码风格

1.4.2 合理生成补丁

1.4.3 谨慎对待创新

第02章 内核启动解析

2.1 内核源代码目录结构

2.2 内核启动过程:主核视角

2.2.1 第一入口:kernel_entry

2.2.2 第二入口:start_kernel()

2.2.3 重要函数:setup_arch()

2.2.4 重要函数:trap_init()

2.2.5 重要函数:init_IRQ()

2.2.6 重要函数:time_init()

2.2.7 1号进程:kernel_init()

2.3 内核启动过程:辅核视角

2.3.1 第一入口:smp_bootstrap

2.3.2 第二入口:start_secondary()

2.4 本章小结

第03章 异常与中断解析

3.1 寄存器操作

3.2 异常处理解析

3.2.1 复位异常和NMI

3.2.2 缓存错误异常

3.2.3 TLB/XTLB异常

3.2.4 其他通用异常

3.3 中断处理解析

3.3.1 中断处理的入口

3.3.2 中断处理的分派

3.4 软中断、小任务与工作队列

3.4.1 软中断softirq

3.4.2 小任务tasklet

3.4.3 工作队列workqueue

3.5 本章小结

第04章 内存管理解析

4.1 内存管理相关概念

4.1.1 龙芯3号的高速缓存

4.1.2 龙芯3号的TLB

4.1.3 龙芯的虚拟地址空间

4.2 物理内存页帧管理

4.2.1 物理地址空间

4.2.2 伙伴系统算法

4.3 内核内存对象管理

4.3.1 数据结构与API

4.3.2 核心函数解析

4.4 分页映射内存管理

4.4.1 持久内核映射

4.4.2 临时内核映射

4.4.3 非连续内存管理

4.5 进程地址空间管理

4.5.1 数据结构与API

4.5.2 内存映射

4.5.3 堆区管理

4.5.4 缺页异常处理

4.6 内存管理其他话题

4.6.1 反向映射

4.6.2 内存回收

4.6.3 巨页机制

4.7 本章小结

第05章 进程管理解析

5.1 进程描述符

5.1.1 运行状态相关

5.1.2 标识调度相关

5.1.3 其他重要部分

5.2 进程创建

5.2.1 复制新进程

5.2.2 执行新程序

5.3 进程销毁

5.3.1 退出程序执行

5.3.2 清理进程资源

5.4 进程调度

5.4.1 基本概念

5.4.2 发展历史

5.4.3 公平调度策略

5.4.4 调度核心解析

5.4.5 进程切换解析

5.5 其他话题

5.5.1 CPU负载

5.5.2 调度域与调度组

5.5.3 NUMA均衡调度

5.6 本章小结

第06章 显卡驱动解析

6.1 显卡概述

6.1.1 发展简史及有关概念

6.1.2 现代显卡的硬件结构

6.2 Linux图形系统架构

6.2.1 X-Window和Wayland

6.2.2 直接渲染、间接渲染和显卡驱动

6.3 Linux内核显卡驱动

6.3.1 寄存器读写

6.3.2 常用数据结构

6.3.3 显卡初始化

6.3.4 命令流处理

6.3.5 存储区域间数据交换

6.3.6 GPU重置(Reset)

6.4 本章小结

第07章 网卡驱动解析

7.1 网络子系统概述

7.2 Linux以太网卡驱动

7.2.1 常用数据结构

7.2.2 网卡初始化

7.2.3 网卡的开与关

7.2.4 数据发送与接收

7.2.5 故障检测与修复(看门狗)

7.3 本章小结

第08章 电源管理解析

8.1 电源管理概述

8.2 运行时电源管理

8.2.1 动态变频

8.2.2 自动调核

8.3 系统级睡眠管理

8.3.1 睡眠到内存(待机)

8.3.2 睡眠到磁盘(休眠)

8.4 本章小结

附录A 并发与同步原语

A.1 内存屏障

A.2 每CPU变量

A.3 原子操作

A.4 开关抢占

A.5 自旋锁

A.6 顺序锁

A.7 信号量

A.8 互斥量

A.9 RCU机制

A.10 其他原语

附录B Linux内核大事记

B.1 史前时代

B.2 奇偶时代

B.3 快速演进时代

B.4 极速演进时代

后记

参考文献

龙芯中科简介

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部