在调试器下理解ARMv8
在调试器下理解
ARMv8
2021年是ARMv8问世十周年,在这个值得纪念的年岁里,盛格塾推出了针对ARMv8研发的GDK8,并为此增设了《在调试器下理解ARMv8》在线课程。
以下是课程详情。
课程形式
FORM
讲解
演示
动手实验
时间长度
TIME
8次线上讲座
培训对象
OBJECT
在arm平台上从事开发工作的软件工程师或是希望学习ARMv8架构的研究者。
实验平台
PLATFORM
GDK8
https://nanocode.cn/#/gdk8/index
课程大纲
ARMv8
01
ARM基础
要点:ARM简史、ARM的三大系列、ARM手册、ARM架构的演进过程、ARMv8、ARM的微架构、Cortex、A53、A72、RK3328、GDK8、通过LINUX内核虚文件认识ARMv8。
02
理解应用层寄存器和指令
要点:ARM指令集、通用寄存器、Banked寄存器、特殊寄存器、THUMB指令、常用指令、谓词执行、访问内存的指令、ARM反汇编、观看函数、在Nano Debugger(NDB)中理解ARM的应用层指令和寄存器。
03
函数调用和栈
要点:分支指令、调用子函数、LR寄存器、栈、栈指针寄存器、压栈指令、栈帧、栈上的数据组织、栈回溯、栈回溯的原理、栈溢出、栈保护、在NDB下认识栈上的数据。
04
特权级别和系统编程
要点:处理器状态、系统寄存器、特权级别、处理器扩展、访问系统寄存器、MRS和MSR指令、ATF(ARM Trusted Firmware)代码、分阶段初始化、U-Boot(两个阶段)、内核命令行、系统启动过程。
05
硬件差异和设备树(DTS)
要点:五花八门的ARM硬件、问题、x86和PC的先进经验、设备树描述、DTS、DTB、编译方法、传递内核命令行、案例(因为命令行参数不当导致的内核Panic)
06
虚拟内存
要点:地址翻译、页表、页表格式、MMU、页表翻译过程、页属性、访问权限、TLB、进程切换、缺页异常、观察页表、手工翻译内存地址。
07
异常和中断处理
要点:异常处理寄存器、异常处理过程、同步异常和异步异常、中断处理、GIC、GIC的结构、GIC的配置、GIC的初始化、Linux内核中的中断处理代码。
08
外存和设备管理
要点:MMC、eMMC、SD联盟和SDIO、DesignWare的SDIO控制器、DTS中的配置参数、SDIO驱动、连接闪存时的设备栈、连接无线(WiFi)时的软件栈、结合GDK8的深入分析。
★
课
程
表
★
日期 | 时间 | 内容 |
10/30 (周六) | 14:00-16:00 | 序言 |
11/28 (周日) | 20:00-22:00 | 第一讲 ARM基础 |
12/5 (周日) | 20:00-22:00 | 第二讲 理解应用层寄存器和指令 |
12/12 (周日) | 20:00-22:00 | 第三讲 函数调用和栈 |
12/19 (周日) | 20:00-22:00 | 第四讲 特权级别和系统编程 |
12/26 (周日) | 20:00-22:00 | 第五讲 硬件差异和设备树(DTS) |
1/9 (周日) | 20:00-22:00 | 第六讲 虚拟内存 |
1/16 (周日) | 20:00-22:00 | 第七讲 异常和中断处理 |
1/23 (周日) | 20:00-22:00 | 第八讲 外存和设备管理 |
课程表中的序言部分是试听课程
可以扫描下方二维码或输入会议号983 432 830参与
”
盛格塾
正心诚意,格物致知
以人文情怀审视软件,以软件技术改变人生
格友公众号
盛格塾小程序
扫描上方二维码或在微信中搜索“盛格塾”小程序
可以阅读更多文章和有声读物
文字:张银奎
排版:韩俊
”