컴퓨터공학/운영체제

[쉽게 배우는 운영체제] 제 8장 가상 메모리의 기초 연습문제 풀이 정답 (심화문제)

코딩하는이씨 2022. 12. 2. 16:43
728x90
반응형

[연습문제]

1. 가상 메모리에서 메모리 관리자가 사용할 수 있는 전체 크기는 어떻게 결정되는가?

- 물리메모리 + 스왑 영역

 

2. 가상 주소에서 하나의 프로세스가 사용할 수 있는 최대 주소는 무엇과 연관이 있는가?

- CPU의 비트

 

3. 가상 메모리에서 가상 주소를 물리 주소로 변환하기 위해 사용하는 자료구조를 무엇이라 하는가?

- 매핑 테이블

 

4. 페이징 기법의 주소 변환 과정 식을 쓰시오

- VA = <P,D>  -> PA = <F,D>

 

5. 페이지 테이블에서 각각의 한 줄을 무엇이라 하는가?

- 페이지 테이블 엔트리

 

6. 가상 주소를 <P,D> 로 변환하는 공식을 쓰시오

- P: (가상주소 / 한 페이지의 길이 )의 몫

- D: (가상주소 / 한 페이지의 길이) 의 나머지

 

7. 각 페이지 테이블의 시작 주소를 가지고 있는 레지스터는 무엇인가?

- 페이지 테이블 기준 레지스터

 

8. 페이지 테이블 매핑 방식 중, 모든 페이지 테이블을 스왑 영역에 저장하고 그중 일부만 물리 메모리에 무작위로 가지고 있는 방식은 무엇인가?

- 연관 매핑

 

9. 페이지 테이블 매핑 방식 중, 모든 페이지 테이블을 물리메모리에 보관하는 방식은 무엇인가?

- 직접 매핑

 

10. 페이지 테이블 매핑 방식 중, 모든 페이지 테이블을 스왑 영역에 저장하고 페이지 테이블을 일정한 집합 단위로 물리 메모리에 보관하는 방식은 무엇인가?

-집합-연관 매핑

 

11. 페이지 테이블 매핑 방식 중, 물리 메모리의 프레임 번호를 기준으로 테이블을 구성하는 방식은 무엇인가?

- 역매핑

 

12. 연관 매핑에서 사용하는 테이블의 이름은 무엇인가?

- 변환 색인 버퍼

 

13. 연관 매핑에서 원하는 데이터가 변환 색인 버퍼에 없는 상태를 무엇이라 하는가?

- TLB 미스

 

14. 연관 매핑에서는 전체 매핑 테이블을 어디에 보관하는가?

- 스왑영역

 

15. 가상 메모리에서 메모리 관리자는 물리 메모리 영역과 스왑 영역을 합쳐서 프로세스가 사용하는 가상 주소를 실제 메모리의 물리 주소로 변환한다. 이 작업을 무엇이라 하는가?

- 동적 주소 변환

 

16. 사용자 프로세스가 자신의 크기보다 더 큰 주소에 접근하려고 하면 메모리 관리자는 그 프로세스를 강제 종료한다. 이때 발생하는 오류를 무엇이라 하는가?

- 트랩

 

17. 세그먼테이션-페이징 혼용 기법에서는 접근 권한을 어디에서 관리하는가?

- 세그먼테이션 테이블

 

 

[심화문제]

1. 가상 메모리가 이론적으로 가질 수 있는 크기와 실제 운영되는 크기는 어떤 차이가 있는지 설명하시오. 

- 이론적으로 가질 수 있는 크기는 CPU의 비트에 따라 결정된다 만약 32bit CPU의 경우에는 이론적으로 가질 수 있는 최대 크기는 4GB이다. 하지만 실제 운영되는 크기는 스왑영역을 활용하기 때문에 더 큰 메모리를 운영한다.

 

2. 페이징 기법의 주소 변환 과정을 그림으로 그리고 설명하시오.

- 페이지 테이블에서 페이지 번호를 찾고 해당 프레임 번호를 찾는다.

 

3. 연관 매핑의 동작 방식을 설명하시오.

- 전체 페이지 테이블은 스왑 영역에 있고 테이블의 일부만 변환 색인 버퍼로 물리 메모리에 올라온 상태이다. 찾고자 하는 페이지를 변환 색인 버퍼를 찾아본다음  TLB히트가 된다면 바로 물리 주소로 변경되고, TLB미스가 된다면 스왑영역에 있는 전체 페이지 테이블을 이용하여 프레임 번호로 변환한다.

 

4. 집합-연관 매핑의 동작을 설명하시오.

- 페이지 테이블을 같은 크기의 여러 묶음으로 만들고 각 묶음의 시작 주소를 가진 디렉렉터리 테이블을 새로 만들어 관리한다. P1을 이용하여 디렉터리 테이블을 살펴보면 전체 테이블을 찾아 보지 않고도 TLB미스여부를 바로 알 수 있다. 만약 원하는 테이블이 물리 메모리에 존재하면 묶음 테이블의 시작 주소가 명시되어 있어 P2를 이용해 묶음 테이블에서 원하는 프레임의 번호를 얻을 수 있다. 

 

5. 역매핑의 동작을 설명하시오.

- 메모리 관리자가 주소 변환을 해야 하는 프로세스의 아이디와 페이지 번호가 물리 영역에 있는지  역매핑 테이블에서 검색한다. 현재 테이블에 원하는 데이터가 없으면 스왑 영역에서 가져온다.

 

6. 세그먼테이션-페이징 혼용 기법을 사용하는 이유를 설명하시오.

- 페이지 테이블의 모든 행에는 메모리 접근 권한 권한과 관련된 권한 비트가 추가되는데 권한비트 때문에 테이블의 크기가 커진다. 이러한 반복되는 권한 비트를 줄이기 위해 세그먼테이션 테이블을 추가하여 권한 비트와 같이 중복되는 데이터를 세그먼테이션 테이블로 옮겨와 페이지 테이블의 크기를 줄여 순수 페이징 기법과 순수 세그먼테이션 기법의 장점만 취해 메모리 관리를 효율적으로 할 수 있다.

 

728x90
반응형