ARMV8-aarch64
时间: 2023-08-24 13:04:26 浏览: 334
ARMv8的AArch64是ARMv8架构中的一种执行模式,它使用64位寄存器和内存访问,并引入了新的指令集。ARMv8架构的核心改变是引入了AArch64架构,它不仅向前兼容现有的ARMv7和A32指令集,还扩展了基于64位的A64指令集,并扩充了现有的A32和T32指令集。在AArch32和AArch64之间的变化仅发生在异常处理和异常返回时,允许在AArch64操作系统内运行AArch32应用程序,允许在AArch64虚拟化程序中运行AArch32客户操作系统,还允许在AArch64的非安全环境中运行AArch32的安全环境。<em>1</em><em>2</em><em>3</em>
#### 引用[.reference_title]
- *1* *2* *3* [ARMv8-AArch64简述](https://blog.csdn.net/tanli20090506/article/details/71435777)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item]
[ .reference_list ]
相关问题
linux armv8-a aarch64 long descriptor format page fault
Linux在ARMv8-A架构下使用长描述符格式处理页面错误(page fault)。
ARMv8-A架构引入了长描述符格式,这是一种改进的内存管理单元(MMU)设计,它提供了更灵活、更高效的地址转换和页面错误处理能力。
当发生页面错误时,例如访问一个没有映射的地址或试图访问一个只读内存区域进行写操作时,ARMv8-A的MMU会捕获这个错误并触发一个页面错误异常。
在长描述符格式下,页面错误有两种类型:同步页面错误和异步页面错误。同步页面错误是指对当前指令引起的页面错误,异常处理程序会被同步地执行。异步页面错误是指对其他指令引起的页面错误,异常处理程序可能会在以后的时间点执行。
对于页面错误的处理,Linux内核会在异常处理程序中根据错误类型采取相应的措施。通常,处理程序会检查错误类型和描述符类型,然后根据情况更新页表项或者触发进一步的异常处理流程。
ARMv8-A的长描述符格式提供了更多的页表项信息,例如权限设置、虚拟地址映射等,这使得页面错误的处理更加灵活和细粒度。此外,ARMv8-A还支持虚拟化技术,可以在虚拟机监视器和虚拟机之间进行页面错误的处理和隔离。
总的来说,Linux在ARMv8-A架构下使用长描述符格式处理页面错误,通过异常处理程序和改进的页表项结构,可以更加有效地处理和隔离页面错误,提升系统的可靠性和性能。
-aarch64-linux-gnu
aarch64-linux-gnu是一个目标体系结构,用于指定编译和构建针对ARMv8-A 64位架构的Linux系统的软件。它通常用于交叉编译,即在一种架构的系统上生成另一种架构的可执行文件。在这种情况下,aarch64指的是ARMv8-A 64位架构,linux-gnu表示目标操作系统是Linux。
阅读全文