inflearn logo
강의

講義

知識共有

Armアーキテクチャ:メモリマネジメント(MMU) [著者直講 第3部-5]

TTBR0_EL1と TTBR1_EL1 レジスタ

멀티레벨테이블로 운영하는 이유

解決済みの質問

471

grapesgun0624

投稿した質問数 20

0

안녕하세요. 가상메모리를 물리주소로 변환하기 위해서 멀티레벨페이지로 운영하는 이유가 궁금합니다. 멀티레벨페이지로 운영했을때 어떤 장점들이 있는지 궁금합니다.

arm-architecture memory-management armv8 cortex-a

回答 2

1

austinkim

Arm을 비롯한 대부분 CPU 아키텍처는 멀티 레벨로 가상 주소를 물리 주소로 변환합니다. 그 이유는 아래와 같습니다;

1) 페이지를 유연하게 관리할 수 있습니다. 2~3 레벨에 존재하는 페이지 테이블 하나만 제거하거나 업데이트하면 단일 페이지 변환 구조에 비해 더 효율적으로 관리할 수 있습니다.

2) 메모리를 효율적으로 사용할 수 있습니다. 페이지 테이블도 결국에 메모리를 사용하는데, 페이지 테이블도 연속적인 공간에 위치해야 합니다. 단약 단밀 페이지 테이블로 운용할 경우 큰 사이즈의 연속적인 메모리 공간을 사용해야 하는데, 이는 메모리 성능 관점으로 효율적이지 않습니다.

감사합니다.

0

communityai8509

안녕하세요, 인프런 AI 인턴입니다.
멀티레벨 페이지 테이블 구조를 사용하는 주요 이유 중 하나는 메모리 사용의 효율성을 증가시키기 위함입니다. 멀티레벨 페이지 테이블은 전체 주소 공간을 나누어 관리할 수 있게 해주어, 사용하지 않는 메모리 영역에 대한 페이지 테이블을 생성하지 않아도 됩니다. 이는 대량의 메모리를 요구하는 모던 컴퓨팅 환경에서 필요한 메모리 양을 절약할 수 있게 해줍니다.

또 다른 장점으로는 메모리 접근시간의 최적화입니다. 애플리케이션은 일반적으로 메모리의 작은 부분만을 활발하게 사용하기 때문에, 멀티레벨 테이블 구조를 통해 활성화된 부분의 주소 변환 정보만을 빠르게 접근할 수 있게 되어 전체적인 성능을 향상시킬 수 있죠.

마지막으로 보안과 격리 측면에서도 이점을 제공합니다. 멀티레벨 페이지 테이블을 통해 각 프로세스별로 독립된 페이지 테이블을 유지함으로써, 프로세스들 사이의 메모리 영역을 서로 격리시켜 보안성을 강화할 수 있습니다.

멀티레벨 페이지 테이블은 이와 같은 다양한 장점들로 인해 현대 컴퓨터 시스템에서 널리 사용되고 있는 핵심 메모리 관리 기법인 것이죠. 토끼야놀자님의 학습에 도움이 되길 바랍니다!

강의자료 요청

0

26

1

Armv7 vs Armv8 학습 방향

0

42

1

Trace32 function 함수 조회 Makefile 수정 부분

0

36

1

강의자료 요청

0

57

4

안녕하세요. 계속 프로젝트를 해야지 하다가 결제하고 환경 설정 중입니다.

0

58

1

SP와 SP_ELn의 관계

0

92

2

stm32cubeide 관련 문의

0

132

2

5장 Armv7 동작모드와 6장 Armv8 익셉션 레벨 차이

0

105

2

강의 업로드 오류 확인 요청

0

94

2

시스템 소프트웨어 직무 관련 질문드려요

0

133

2

책관련 질문드려요

0

122

2

4.2.1. 실습을 어떻게 진행하는것인가요?

0

100

2

DMA 관련한 강의도 제작해주실 수 있으신가요 ?

0

156

1

3.2.1.4 실습과 관련한 질문

0

108

2

56강 bcm2835-mailbox.c 파일 질문

0

93

2

'drivers/soc/bcm/bcm2835-power.o 에러 입니다.

0

122

3

TRACE 32만을 이용한 출력 Callstack 의 cpu 번호 파악

0

114

1

라즈베리파이5 도 상관없을까요

0

151

1

MMU와 캐시의 관계

0

185

2

실무적인 내용 문의드립니다!

0

115

1

MMU의 Page Table과 관련된 질문이 있습니다.

0

273

2

mmu table 위치

0

182

2

mmu page walk

0

105

2

폴트 설정 비트 필드 질문

0

307

2