인프런 커뮤니티 질문&답변
Virtual Memory, Memory, Memory mapping tables
작성
·
15
0
안녕하세요. 강의를 듣다가 궁금증이 생겨 문의합니다.
제가 공부했을경우에는 Memory, Virtual Memory, Memory Mapping Tables가 있어서 CPU가 특정 메모리 영역을 읽고 싶을때 VM과 Mapping Table을 활용해서 Memory에 올라온 값을 읽는 것으로 알고 있는데, 강의에서 설명하실때는 Mapping table에 관한 내용이 없어서요. 제가 공부할 때에는 Linux를 기반으로 공부를 하긴 했습니다만, 윈도우는 Mapping table을 사용하지 않는 걸까요...?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다.
ABCD님, 가상 메모리와 메모리 매핑 테이블에 대해 질문해주셨군요. 가상 메모리는 프로세스가 사용하는 주소 공간을 물리 메모리에 독립적으로 매핑하여, 각 프로세스가 독자적인 주소 공간을 갖도록 하는 기능을 제공합니다. 이렇게 함으로써 프로세스 간의 주소 충돌을 방지하고, 메모리 보호를 가능합니다.
리눅스와 윈도우 등 거의 모든 현대 운영체제는 메모리 매핑 테이블(Page Table)을 사용하여 가상 주소와 물리 주소를 변환합니다. 이 테이블은 CPU가 가상 주소를 물리 주소로 변환하는 데 필요한 정보를 저장하고 있으며, MMU(Memory Management Unit)가 이 역할을 수행합니다.
강의에서는 이러한 매핑 테이블의 작동 원리에 대해 집중적으로 설명하지 않았을 수도 있지만, 일반적으로 모든 운영체제는 유사한 방식으로 동작한다고 보시면 됩니다.
아래에 유사한 질문들이 있어 참고하시면 도움이 될 것 같습니다:
- 가상 메모리 소개 강의 마지막 부분에서: 가상 메모리 시스템이 운영체제에 기본적으로 적용되는 개념과 RAM을 직접 사용하는 환경에 대한 설명을 확인하실 수 있습니다.
- 페이징 기법에 대해 질문드립니다: 페이지 테이블을 활용하여 메모리를 관리하는 방법에 대한 구체적인 설명을 확인할 수 있습니다.
가상 메모리가 어떻게 구현되는지 및 운영체제별 차이에 대한 추가적인 정보가 필요하시면, 강의와 함께 각 운영체제의 메모리 관리 방식에 대해 더 학습해보시면 좋을 것 같습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





