草庐IT

bluecove_arm

全部标签

ARM MMU的学习笔记-一篇就够了

文章目录ARMV8-aarch64的MMU1、MMU概念介绍2、MMU地址翻译的过程3、在secure和non-secure中使用MMU4、在不同异常等级中使用MMU5、memoryattributes介绍6、memorytagging介绍**7、启用hypervisor**8、Accesspermissions9、MMU/cache相关的寄存器总结10、系统寄存器—TCR寄存器介绍11、代码使用示例展本文转自周贺贺,baron,代码改变世界ctw,Arm精选,armv8/armv9,trustzone/tee,secureboot,资深安全架构专家,11年手机安全/SOC底层安全开发经验。擅

ubuntu上安装boost库为SOMEIP的X86和ARM下编译做准备(编译两种版本)

1X86架构Linux(ubuntu)操作系统上Boost库的编译安装1.1Boost源码下载1.2编译选项配置1.3编译Boost库1.4安装Boost库2Boost库的ARM架构编译1X86架构Linux(ubuntu)操作系统上Boost库的编译安装Boost库是C++拓展库,是SOMEIP源码编译所必需的库。编译Boost库时,需要根据不同的架构,选择不同的工具链和参数1.1Boost源码下载首先,Boost源码下载,Boost官网:https://www.boost.org基于此处我编译的SOMEIP源码版本,需要安装1.74版本的Boost库,下载链接:https://boosto

ARM编译器5.06下载安装

 ARM编译器5.06下载安装1.官网下载进入官方网站ARMComplierv5.06官网下载页面进入后的界面为往下翻,找到如图位置的5.06forwindows的文件,点击下载,下载时需要登录账号2.安装先解压下载的压缩文件,在installer文件夹里面有一个setup.exe文件,双击它,同意协议,在安装位置选择keil安装位置的ARM文件夹下,在ARM文件夹下新建一个文件夹,把编译器安装到新建的文件夹里面。安装好后如图所示3.keil配置打开keil,按照图示配置即可然后点确定,OK之类的。最后选择使用刚才安装的编译器

嵌入式培训机构四个月实训课程笔记(完整版)-Linux ARM驱动编程第二天-ARM中断、定时器、看门狗(物联技术666)

链接:https://pan.baidu.com/s/1E4x2TX_9SYhxM9sWfnehMg?pwd=1688提取码:1688上午:中断         吕峰老师下午:定时器教学内容:一、中断ARM中断分为二级,分为一级中断和二级中断,二级中断为子中断,对于ARM来说有50个中断源,其中有32+(EINT23-4)23-4+1-2=50子中断源分为二种,一种是内部子中断,另一种是外部子中断源(EINT4_7,EINT8_23)内部子中断:一般是串口的读写,视频的中断,AC中断等等,主要是内部硬件设备外部子中断:一般是EINT4_7,EINT8_23,分别是GPF和GPG的I/O口。中断

ARM gicv3/gicv4的学习总结-学习这一篇就够了

本文转自周贺贺,baron,代码改变世界ctw,Arm精选,armv8/armv9,trustzone/tee,secureboot,资深安全架构专家,11年手机安全/SOC底层安全开发经验。擅长trustzone/tee安全产品的设计和开发。目录1、gic的版本2、GICv3/gicv4的模型图3、gic中断号的划分4、GIC连接方式5、gic的状态6、gic框架7、gicConfiguring8、推荐1、gic的版本GIC是一个为Cortex-A和ArmCortex-R设计的标准的中断控制器2、GICv3/gicv4的模型图3、gic中断号的划分SharedPeripheralInterr

Arm MMU深度解读

文章目录一、MMU概念介绍二、虚拟地址空间和物理地址空间2.1、(虚拟/物理)地址空间的范围2.2、物理地址空间有效位(范围)三、Translationregimes四、地址翻译/几级页表?4.1、思考:页表到底有几级?4.2、以4KBgranule为例,页表的组成方式4.3、optee实际使用的示例五、页表格式(Descriptorformat)5.1、ARMV8支持的3种页表格式5.2、AArch64LongDescriptor支持的四种entry5.3、页表的属性位介绍(BlockDescriptor/PageDescriptor)5.3.1、stage1的页表属性5.3.2、stage

嵌入式面经-ARM体系架构-寄存器与异常处理

ARM寄存器组织寄存器概念寄存器是处理器内部的存储器,没有地址寄存器作用一般用于暂时存放参与运算的数据和运算结果在某个特定模式下只能使用当前模式下的寄存器,一个模式下特有的寄存器别的模式下不能使用一共是40个寄存器寄存器分类通用寄存器专用寄存器R15(PC):程序计数器,用于存储当前取址指令的地址R14(LR):链接寄存器,执行跳转指令(BL/BLX)时,LR会自动保存跳转指令下一条指令的地址,产生异常时,对应异常模式下的LR会自动保存被异常打断的指令的下一条指令的地址R13(SP):栈指针:用于存储当前模式下的栈顶地址CPSR:当前程序状态寄存器、控制当前CPU处于哪种状态控制寄存器ARM异

嵌入式培训机构四个月实训课程笔记(完整版)-Linux ARM驱动编程第八天-高级驱动framebuffer(物联技术666)

链接:https://pan.baidu.com/s/1cd7LOSAvmPgVRPAyuMX7Fg?pwd=1688提取码:1688帧缓冲(framebuffer)设备应用于linux显示技术方面。因为linux的显示平台已经全部基于framebuffer,所以目前在linux环境下开发图形化界面、游戏、影视软件等可视化应用时都必须用到帧缓冲技术,而现在随着消费逐渐娱乐化的大趋势,可视化应用已经在产品开发中越来越重要,因此,对于帧缓冲技术的理解和掌握就非常重要了。1Frambuffer介绍 帧缓冲在linux体系中居于上层应用和底层显示设备之间,如下图所示。它的设计意图是对上层应用屏蔽掉低层

ARM TrustZone技术解析:构建嵌入式系统的安全扩展基石

🌈个人主页:Aileen_0v0🔥热门专栏:华为鸿蒙系统学习|计算机网络|数据结构与算法|MySQL|​💫个人格言:“没有罗马,那就自己创造罗马~”#mermaid-svg-LOdvohfCEnd8eKyd{font-family:"trebuchetms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-LOdvohfCEnd8eKyd.error-icon{fill:#552222;}#mermaid-svg-LOdvohfCEnd8eKyd.error-text{fill:#552222;stroke:#55

嵌入式培训机构四个月实训课程笔记(完整版)-Linux ARM驱动编程第七天-内核函数接口(物联技术666)

链接:https://pan.baidu.com/s/1V0E9IHSoLbpiWJsncmFgdA?pwd=1688提取码:1688//**************************************************#include   /*module_init()*/#include       /*printk()*/#include           /*__init__exit*/#include             /*file_operation*/#include     /*copy_to_user,copy_from_user*/#include