상세 컨텐츠

본문 제목

Memory Mapped IO

CS지식 학습

by Tabris4547 2024. 3. 12. 10:01

본문

728x90

 

 

Memory Mapped I/O의 개요

이해를 돕기 위해 그림으로 간단하게 그려봤습니다.

여러분이 사용하는 컴퓨터에 여러 기기들을 연결했다고 가정해볼게요.

물리주소가 있을때, 메모리의 비어있는 공간에

키보드,스피커 등 사용하려는 I/O 기기에 대해서 메모리공간을 할당해줍니다.

이때 이 공간을 read&write로 접근가능하게 만들어줍니다.

이 공간을 virtual memory에 할당할 수 있습니다.

vitual 공간 상에서 비어있는 공간에

I/O 2에 해당하는 공간을 할당할 수 있습니다. 

 

라즈베리 파이에서의 화면

라즈베리파이에서 /proc/iomem을 통해

Memory Mapped IO가 어떻게 할당되고있는지를 알 수 있습니다.

 

Memroy Mapped IO의 특징

 

각각의 장치들을 Dram이 아닌 가상공간에 저장하고 있습니다.

IO를 활용할때에는 프로세스처럼 

Load/Store를 통해 활용할 수 있습니다.

이 덕분에 프로그래머입장에서는

직접 일일이 기기의 주소값을 입력해 제어하는 것보다

더 편리하게 만들어줍니다.

728x90

관련글 더보기

댓글 영역