【공부/정리】 시스템 소프트웨어 개발을 위한 ARM 아키텍처 구조와 원리 ④ 메모리 모델, 캐시, MMU
·
Embedded
https://developer.arm.com/documentation/102376/latest/https://developer.arm.com/documentation/101811/latest책은 ARMv7과 ARMv8 양쪽 모두를 다루고 있습니다.이미 이전 포스트들에서 ARMv7에 대해서 충분히 공부했기 때문에, 이번 포스트에서는 ARMv8에 집중해서 다룹니다.ARMv7 관련 내용 중 일부는 해당 내용을 자세히 다룬 포스트를 주석으로 링크 달고 생략하도록 하겠습니다10. 메모리 모델10.1. 노멀 메모리와 디바이스 메모리ARM 아키텍처에서는 메모리를 두 가지 종류로 분류합니다.Memory mapped I/O를 위해 할당하는 메모리 영역을 '디바이스 메모리', 그외 모든 영역을 '노멀 메모리'라고 합니다..
Aarch64 Memory Management 요약 정리
·
Embedded
https://developer.arm.com/documentation/101811/latest1. 가상주소와 물리주소란? 우리가 사용하는 CPU는 가상주소(Virtual address, 이하 VA)를 이용하는 반면, 실제 메모리에 접근이 이뤄질 때는 물리주소 (Physical address, 이하 PA)를 이용합니다. 위 그림은 소프트웨어가 메모리에 올라왔을 때의 두 가지 모습,좌측은 OS와 개발자 입장에서 본 메모리(VA)의 모습,우측은 실제 메모리(PA)의 모습을 보여주고 있습니다.두 메모리 사이에는 주소 변환을 위한 MMU의 translation table이 있습니다.잘 알고 계시겠지만 정리하자면, VA를 사용해서 얻는 이득을 정리하면 다음과 같습니다.여러 군데로 조각화된(Fragmented) 물..