阅码场训练营:ARM架构与调试调优

原创 Linux阅码场 2022-12-02 13:15


  • 有没有觉得从嵌入式到服务器领域,ARM芯片在很多地方出现?
  • 有没有发现海内外巨头都在做ARM芯片?
  • 有没有觉得ARMv7,v8,v9,Cortex,Neoverse,ARM ARM,TRM,APCS,SCMI等内容看着眼花缭乱?
  • 有没有觉得操作系统学了做了很多,遇到ARM相关的问题还是无从下手?

我是从ARM7TDMI开始接触ARM架构的,当时很幸运有DSP的学习基础,同时遇到了把ARM架构和操作系统结合讲解的书籍。这样,结合自己不断的实践,一直可以跟上ARM架构的演进。长期的跟踪也让我容易能看到ARM的趋势,我从Linaro在做ARM NEON指令集优化关注到Linaro,后面持续的关注以Linaro为首ARM生态组织的发展,几年后的2017年,我作为演讲人分享了ARM架构下的一个TLB性能优化方案,实现了从关注到深度参与到过程。

如果把工程师的成长比喻为一架持续飞行的飞机。学习框架是飞机的两翼,实践就是飞机的引擎,课程中会反复结合三位一体的学习方法,不断从带领大家实践到大家自己动手。一路走来,希望我的经验能帮助到大家少走不必要的弯路,更多的精力能用在自己的长期目标上。

张健老师在实际工作和培训中,遇到很多实际案例。从Linux内核到用户空间,有很多和ARM架构相关的问题。系统掌握了ARM架构就等于有了一双新的眼睛,帮助大家解决技术问题,改善系统性能。


 

01 课程大纲


第一部分 从坐而言到起而行

 

• 复习Linux用户空间编译过程(配置,编译,安装:configuremakemake install),编译Linux内核常见的测试套件:LTP

• 编译内核和文件系统。

• 观察内核启动过程(CPU特性,memorydma zoneGICtimerpsci),介绍ARM架构中的概念。

• 实验:动手编译内核和文件系统。

第二部分 软件和硬件的接口:汇编语言

• Linux用户空间测试代码(来自LTP)看ARM架构常见指令。

• 实验:单步调试算术,跳转和load/store指令。

• 理解调用栈的概念。

第三部分:我是谁,我能做什么:异常处理

 

• 异常的核心是什么。

• 如何用汇编语言调用系统调用。

• 异常的进入和退出;

• Linux内核到虚拟化

• Linux内核安全OS

第四部分:用页表属性的砖搭建ARM的内存世界

 

• 内存基本概念

• MMU的原理

• cache基本概念

• 页表和页表属性

• 演示实验:continuous bit hint的应用

• cache的结构(含演示实验)

• cache coherence

• 原子操作

第五部分:Death is another beginningLinux内核crash调试

• 内核调试方法概述

• Linux内核crash分析实例

第六部分:软件工程师的瑞士军刀:调测。

• coresight原理;

• perfcoresightPMU结合使用;

• 调优的USE模型;

• 演示实验:perf PMU分析系统性能。

 总计12h


ARM架构已经有41年的历史,目前市场上以v8架构为主,也还有一定的v7架构芯片。v9架构基本还没有产品出现。本课程以v8为主,同时兼顾v8中与v7,v9相同的部分。

站在架构角度看,汇编语言,异常处理和内存管理处于核心位置。内核crash调试和调测技术体现的是对ARM和系统的综合理解。课程首先结合实例和练习介绍汇编语言,异常处理和内存管理。最后用内核crash调试和调测技术把前面知识串联起来,帮助大家综合应用。

不同于很多上来讲汇编语言的ARM课程,课程首先介绍讲解“理论,代码,实践”三位一体的学习方法,然后在每章的课程中,用开头的引导问题引发打大家的思考,最后用课后练习保证大家的学习效果。课程中的明线是ARM架构,暗线是系统调试和调优,会在合适的地方出现调试/调优的工具,并在课程的最后两课对调试和调优有全面的学习。


02 适合谁学

•BSP工程师;

•Linux驱动工程师;

•固件工程师;

•系统软件工程师;

•IC验证工程师。

•希望从X86迁移到ARM的软件工程师。


03 你将收获

1.熟悉ARM架构各类专业词汇,遇到问题能从正确方向入手;

2.对汇编语言不再害怕,能看懂和上手调试;

3.对异常处理有从上到下纵向的理解,既能调试底层代码,也能在上层应用异常概念完成开发工作;

4.能理解操作系统物理内存管理的核心,将来可以向上对接操作系统更丰富的内存管理能力,从而为掌握操作系统打下基础;

5.结合ARM架构知识灵活运用系统的调测能力。


04 讲师介绍


十四年IT基础设施研发经验,其中包括六年Linux kernel一线研发经验,在suse,华为,星际比特(技术合伙人)等公司工作。

作为团队核心成员参与了大陆第一个Cortex-A8 SOC芯片研发,负责CPU软件验证,操作系统移植等工作。

作为华为派驻到Linaro的技术专家,主导/参与多个Linux与arm架构相关特性研发(ILP32,continuous bit hint,kernel selftest等)

在拉斯维加斯,柏林,布达佩斯和北京多次发表技术演讲:

•2020 第⼋届开源操作系统年度技术会议(OS2ATC) Linux On RISC-V最新进展和迁移要点
•2019 ⽇知录 ARM在企业级的应⽤与前景
•2019 建设银⾏ ARM在企业级的应⽤与前景
•2018 Recent Kernel Update(Ubuntu Kylin 18.04 meetup in Beijing)
•2017 Linaro Connect Budapest: BUD17-305 - Implement contiguous page hint for anonymous page in user space
•2016 Linaro Connect Las Vegas: LAS16-TR07: Working upstream [Mandarin]
•2016 Linuxcon Europe: An efficient unit test and fuzz tools for kernel/libc porting
•2015 patent in US, EP, CN, WO(WO2017054610A1): Computer, and method and apparatus for controlling quality of service
•2014 openSUSE Asia Summit: openSUSE on ARM


05 报课优惠


1. 5300元/人(前15名赠送阅码场会员1年,先到先得。)
2. 每推荐1人购买,自己减200元;推荐公司购买(15人起)免1人费用。
3. 没学会,不满意可以免费继续参加下一次训练营。
4. 完成学业的奖励:阅码场工作推荐。
5. 免费企业招聘发布N次。(企业,5个报名人数1次。)
6. 周末开课,周中答疑;直播演示,动手实践;
7.报名请咨询客服小月(小月微信:linuxer2016)
长按扫码报名
提升自己,升职加薪
06 往期精彩回顾

 

Ftrace训练营1期线上合影 


 

Ftrace训练营1期证书


 

阅码场训练营文化衫


 

学员好评


阅码场已有课程清单

价格(元)课程名称
199
《深入浅出Linux内核模块》
399
《深入剖析Linux内核反向映射机制》
759
《操作系统硬实时深度剖析》
399
《深入理解Linux远程过程调用(RPC)》
759
《8小时学透ARM体系架构》
759
《5小时深入理解Linux/ARM虚拟化》
759
《5小时学透ARM Linux》
759
《深入剖析Linux内核页表技术-基于ARM64架构》
299
《Linux常见锁和lockup检查机制》
599
《Android进程生命周期全解析》
399
《Linux内核tracers的实现原理与应用》
659
《深入理解Linux内核缺页异常处理》
599
《云时代的Devops行动指南》
199
《AIKit人工智能项目实战-Python篇》
199《AIKit人工智能项目实战-TensorFlow篇》
4000
Ftrace训练营:站在设计者的角度来理解ftrace
5700
阅码场训练营:ARM安全架构之Trustzone-TEE实战
5300
阅码场训练营:ARM架构与调试调优


Linux阅码场 专业的Linux技术社区和Linux操作系统学习平台,内容涉及Linux内核,Linux内存管理,Linux进程管理,Linux文件系统和IO,Linux性能调优,Linux设备驱动以及Linux虚拟化和云计算等各方各面.
评论
  • 这篇内容主要讨论三个基本问题,硅电容是什么,为什么要使用硅电容,如何正确使用硅电容?1.  硅电容是什么首先我们需要了解电容是什么?物理学上电容的概念指的是给定电位差下自由电荷的储藏量,记为C,单位是F,指的是容纳电荷的能力,C=εS/d=ε0εrS/4πkd(真空)=Q/U。百度百科上电容器的概念指的是两个相互靠近的导体,中间夹一层不导电的绝缘介质。通过观察电容本身的定义公式中可以看到,在各个变量中比较能够改变的就是εr,S和d,也就是介质的介电常数,金属板有效相对面积以及距离。当前
    知白 2025-01-06 12:04 110浏览
  • 本文介绍Linux系统更换开机logo方法教程,通用RK3566、RK3568、RK3588、RK3576等开发板,触觉智能RK3562开发板演示,搭载4核A53处理器,主频高达2.0GHz;内置独立1Tops算力NPU,可应用于物联网网关、平板电脑、智能家居、教育电子、工业显示与控制等行业。制作图片开机logo图片制作注意事项(1)图片必须为bmp格式;(2)图片大小不能大于4MB;(3)BMP位深最大是32,建议设置为8;(4)图片名称为logo.bmp和logo_kernel.bmp;开机
    Industio_触觉智能 2025-01-06 10:43 72浏览
  • 每日可见的315MHz和433MHz遥控模块,你能分清楚吗?众所周知,一套遥控设备主要由发射部分和接收部分组成,发射器可以将控制者的控制按键经过编码,调制到射频信号上面,然后经天线发射出无线信号。而接收器是将天线接收到的无线信号进行解码,从而得到与控制按键相对应的信号,然后再去控制相应的设备工作。当前,常见的遥控设备主要分为红外遥控与无线电遥控两大类,其主要区别为所采用的载波频率及其应用场景不一致。红外遥控设备所采用的射频信号频率一般为38kHz,通常应用在电视、投影仪等设备中;而无线电遥控设备
    华普微HOPERF 2025-01-06 15:29 81浏览
  • 自动化已成为现代制造业的基石,而驱动隔离器作为关键组件,在提升效率、精度和可靠性方面起到了不可或缺的作用。随着工业技术不断革新,驱动隔离器正助力自动化生产设备适应新兴趋势,并推动行业未来的发展。本文将探讨自动化的核心趋势及驱动隔离器在其中的重要角色。自动化领域的新兴趋势智能工厂的崛起智能工厂已成为自动化生产的新标杆。通过结合物联网(IoT)、人工智能(AI)和机器学习(ML),智能工厂实现了实时监控和动态决策。驱动隔离器在其中至关重要,它确保了传感器、执行器和控制单元之间的信号完整性,同时提供高
    腾恩科技-彭工 2025-01-03 16:28 166浏览
  • 彼得·德鲁克被誉为“现代管理学之父”,他的管理思想影响了无数企业和管理者。然而,关于他的书籍分类,一种流行的说法令人感到困惑:德鲁克一生写了39本书,其中15本是关于管理的,而其中“专门写工商企业或为企业管理者写的”只有两本——《为成果而管理》和《创新与企业家精神》。这样的表述广为流传,但深入探讨后却发现并不完全准确。让我们一起重新审视这一说法,解析其中的矛盾与根源,进而重新认识德鲁克的管理思想及其著作的真正价值。从《创新与企业家精神》看德鲁克的视角《创新与企业家精神》通常被认为是一本专为企业管
    优思学院 2025-01-06 12:03 75浏览
  • PLC组态方式主要有三种,每种都有其独特的特点和适用场景。下面来简单说说: 1. 硬件组态   定义:硬件组态指的是选择适合的PLC型号、I/O模块、通信模块等硬件组件,并按照实际需求进行连接和配置。    灵活性:这种方式允许用户根据项目需求自由搭配硬件组件,具有较高的灵活性。    成本:可能需要额外的硬件购买成本,适用于对系统性能和扩展性有较高要求的场合。 2. 软件组态   定义:软件组态主要是通过PLC
    丙丁先生 2025-01-06 09:23 68浏览
  • 光耦合器,也称为光隔离器,是一种利用光在两个隔离电路之间传输电信号的组件。在医疗领域,确保患者安全和设备可靠性至关重要。在众多有助于医疗设备安全性和效率的组件中,光耦合器起着至关重要的作用。这些紧凑型设备经常被忽视,但对于隔离高压和防止敏感医疗设备中的电气危害却是必不可少的。本文深入探讨了光耦合器的功能、其在医疗应用中的重要性以及其实际使用示例。什么是光耦合器?它通常由以下部分组成:LED(发光二极管):将电信号转换为光。光电探测器(例如光电晶体管):检测光并将其转换回电信号。这种布置确保输入和
    腾恩科技-彭工 2025-01-03 16:27 171浏览
  •     为控制片内设备并且查询其工作状态,MCU内部总是有一组特殊功能寄存器(SFR,Special Function Register)。    使用Eclipse环境调试MCU程序时,可以利用 Peripheral Registers Viewer来查看SFR。这个小工具是怎样知道某个型号的MCU有怎样的寄存器定义呢?它使用一种描述性的文本文件——SVD文件。这个文件存储在下面红色字体的路径下。    例:南京沁恒  &n
    电子知识打边炉 2025-01-04 20:04 76浏览
  • 随着市场需求不断的变化,各行各业对CPU的要求越来越高,特别是近几年流行的 AIOT,为了有更好的用户体验,CPU的算力就要求更高了。今天为大家推荐由米尔基于瑞芯微RK3576处理器推出的MYC-LR3576核心板及开发板。关于RK3576处理器国产CPU,是这些年的骄傲,华为手机全国产化,国人一片呼声,再也不用卡脖子了。RK3576处理器,就是一款由国产是厂商瑞芯微,今年第二季推出的全新通用型的高性能SOC芯片,这款CPU到底有多么的高性能,下面看看它的几个特性:8核心6 TOPS超强算力双千
    米尔电子嵌入式 2025-01-03 17:04 48浏览
  • 在智能家居领域中,Wi-Fi、蓝牙、Zigbee、Thread与Z-Wave等无线通信协议是构建短距物联局域网的关键手段,它们常在实际应用中交叉运用,以满足智能家居生态系统多样化的功能需求。然而,这些协议之间并未遵循统一的互通标准,缺乏直接的互操作性,在进行组网时需要引入额外的网关作为“翻译桥梁”,极大地增加了系统的复杂性。 同时,Apple HomeKit、SamSung SmartThings、Amazon Alexa、Google Home等主流智能家居平台为了提升市占率与消费者
    华普微HOPERF 2025-01-06 17:23 86浏览
  • 根据Global Info Research项目团队最新调研,预计2030年全球封闭式电机产值达到1425百万美元,2024-2030年期间年复合增长率CAGR为3.4%。 封闭式电机是一种电动机,其外壳设计为密闭结构,通常用于要求较高的防护等级的应用场合。封闭式电机可以有效防止外部灰尘、水分和其他污染物进入内部,从而保护电机的内部组件,延长其使用寿命。 环洋市场咨询机构出版的调研分析报告【全球封闭式电机行业总体规模、主要厂商及IPO上市调研报告,2025-2031】研究全球封闭式电机总体规
    GIRtina 2025-01-06 11:10 80浏览
  • 物联网(IoT)的快速发展彻底改变了从智能家居到工业自动化等各个行业。由于物联网系统需要高效、可靠且紧凑的组件来处理众多传感器、执行器和通信设备,国产固态继电器(SSR)已成为满足中国这些需求的关键解决方案。本文探讨了国产SSR如何满足物联网应用的需求,重点介绍了它们的优势、技术能力以及在现实场景中的应用。了解物联网中的固态继电器固态继电器是一种电子开关设备,它使用半导体而不是机械触点来控制负载。与传统的机械继电器不同,固态继电器具有以下优势:快速切换:确保精确快速的响应,这对于实时物联网系统至
    克里雅半导体科技 2025-01-03 16:11 176浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦