本指南介绍Armv8-A体系结构中的内存系统。这些系统详细通过内存模型、内存类型、内存属性和屏障。
在以下情况下,您必须了解内存系统的操作和访问顺序您的代码直接与硬件或在其他核心上执行的代码交互,或者直接加载或写入要执行的指令或修改翻译表。
如果你是一名应用程序开发人员,那么在Linux等操作系统上的硬件交互可能是通过设备驱动程序。与其他核心的交互是通过Pthreads或其他多线程API和与分页内存系统的交互是通过操作系统在这种情况下,存储器排序问题由相关代码处理,然而,并非所有操作系统都是这种情况,您必须检查您使用的操作系统。
但是,例如,如果您正在编写操作系统内核或设备驱动程序,或者在实现hypervisor时,您必须很好地理解ARM体系结构。
当您的代码要求对内存访问进行显式排序时,需要进行一些重新排序
由系统中的核心或设备看到。