
Linux级联中断控制器注册与中断处理
{% tip success %} 特别提醒:本文章所有涉及的代码均可在{% u linux-5.15 %}处查看源码。 {% endtip %} 一、内核中关于中断控制器的几个概念 在介绍中断控制器的注册前先介绍内核中关于中断控制器几个知识点: 1.1 IRQCHIP_DECLARE 用于实现中断

linux源码解析05–ioremap原理
copyright_author: 科学边界 copyright_author_href: https://www.daodaodao123.com copyright_info: 此文章版权归科学边界所有,如有转载,请注明来自原作者 copyright_url: https://www.daoda

A64指令集学习
{% tip success %}参考文档:Armv8-A Instruction Set Architecture.pdf {% endtip %} 一、前言 Armv8-A 中的指令集 Armv8-A 支持三种指令集:A32、T32 和 A64。 在AArch64执行状态下执行时使用A64指令集

ARMv8内存地址翻译
一、Armv8-A地址翻译 Armv8-A使用一个虚拟内存系统,其中代码所使用的地址(虚拟地址)被转换为内存系统所使用的物理地址。此转换由被称为内存管理单元(MMU)的处理器的一部分执行。Arm体系结构中的mmu使用存储在内存中的转换表将虚拟地址转换为物理地址。MMU将在必要时自动读取翻译表,此过程

ARMv8‑A 架构和处理器
ARM 架构可以追溯到 1985 年,但它并没有停滞不前。相反,它从早期的 ARM 内核开始大规模发展,每一步都增加了特性 和功能: ARMv4 及更早版本 这些早期的处理器仅使用 ARM 32 位指令集。ARMv4T ARMv4T 架构将 Thumb 16 位指令集添加到 ARM 32 位指令集。

armv8的寄存器
AArch64执行状态提供了32个在任何时间任何特权级下都可访问的64位的通用寄存器。 每个寄存器都有64位宽,它们通常被称为寄存器X0-X30。 每个AArch64 64位通用寄存器(X0-X30)也具有32位(W0-W30)形式。

为什么需要虚拟内存
copyright_author: 小林coding copyright_author_href: https://github.com/xiaolincoder/CS-Base copyright_info: 此文章版权归小林coding所有,如有转载,请注明来自原作者 copyright_url