개발
요리책 운영체제. Chapter 8 가상 메모리 기초 연습문제 풀이
mycloudy
2021. 10. 17. 20:53
Part 3 메모리 관리
Chapter 8 가상 메모리 기초
연습문제
- 가상 메모리에서 메모리 관리자가 사용할 수 있는 전체 크기는 어떻게 결정되는가?
- 물리 메모리(실제 메모리)와 스왑 영역을 합한 크기
- 가상 주소에서 하나의 프로세스가 사용할 수 있는 최대 주소는 무엇과 연관이 있는가?
- 컴퓨터 시스템이 가진 물리 메모리의 최대 크기로 한정되며 CPU의 비트에 따라 결정된다
- 메모리 주소 레지스터 (MAR)의 비트가 CPU의 비트와 동일하게 따라가기 때문에 32bit인 경우 4GB가 메모리의 최대 크기이고, 가상 메모리의 최대 크기도 약 4GB 이다
- 가상 메모리에서 가상 주소를 물리 구조로 변환하기 위해 사용하는 자료 구조를 무엇이라 하는가?
- 매핑 테이블
- 페이징 기법의 주소 변환 과정 식을 쓰시오.
- VA = <P, D> -> PA = <F, D>
- 페이지 테이블에서 각각의 한 줄을 무엇이라 하는가?
- 페이지 테이블 엔트리 (Page Table Entry, PTE)
- 가상 주소를 <P, D>로 변환하는 공식을 쓰시오
- P = 가상 주소 / 한 페이지의 크기
- D = 가상 주소 % 한 페이지의 크기
- 각 페이지 테이블의 시작 주소를 가지고 있는 레지스터는 무엇인가?
- 페이지 테이블 기준 레지스터 (Page Table Base Register, PTBR)
- 페이지 테이블 매핑 방식 중, 모든 페이지 테이블을 스왑 영역에 저장하고 그중 일부만 물리 메모리에 무작위로 가지고 있는 방식은 무엇인가?
- 연관 매핑 (associative mapping)
- 페이지 테이블 매핑 방식 중, 모든 페이지 테이블을 물리 메모리에 보관하는 방식은 무엇인가?
- 직접 매핑 (direct mapping)
- 페이지 테이블 매핑 방식 중, 모든 페이지 테이블을 스왑 영역에 저장하고 페이지 테이블을 일정한 집합 단위로 물리 메모리에 보관하는 방식은 무엇인가?
- 집합-연관 매핑 (set-associative mapping)
- 페이지 테이블 매핑 방식 중, 물리 메모리의 프레임 번호를 기준으로 테이블을 구성하는 방식은 무엇인가?
- 역매핑 (invert mapping)
- 연관 매핑에서 사용하는 테이블의 이름은 무엇인가?
- 변환 색인 버퍼 (Translation Look-aside Buffer, TLB)
- 연관 매핑에서 원하는 데이터가 변환 색인 버퍼에 없는 상태를 무엇이라 하는가?
- TLB miss
- 연관 매핑에서는 전체 매핑 테이블을 어디에 보관하는가?
- 스왑 영역
- 가상 메모리에서 메모리 관리자는 물리 메모리 영역과 스왑 영역을 합쳐서 프로세스 사용하는 가상 주소를 실제 메모리의 물리 주소로 변환한다. 이러한 작업을 무엇이라 하는가?
- 동적 주소 변환 (Dynamic Address Translation, DAT)
- 사용자 프로세스가 자신의 크기보다 더 큰 주소에 접근하려고 하면 메모리 관리자는 그 프로세스를 강제 종료한다. 이때 발생하는 오류를 무엇이라 하는가?
- 트랩 (trap)
- 세그먼테이션-페이징 혼용 기법에서는 접근 권한을 어디에서 관리하는가?
- 세그먼테이션 테이블