운영체제

기말 2 과제 - 가상 메모리

김시윤 2018. 11. 9. 22:47

1)가상메모리가 무엇이며, 어떻게 구현되는 기술인지 설명하세요.

가상 메모리

- 가상 메모리는 메모리를 관리하는 또 다른 형태로, 각 프로그램에 실제 주소가 아닌 가상 메모리 주소를 주는 방법이다.

- 프로그램 전체를 동시에 실행하지 않으므로 요구한 메모리 전체가 아닌 일부만 적재해도 실행이 가능하다.

- 가상 메모리는 다중프로그래밍 환경을 구축했고 메인 메모리의 단점이었던 제한된 용량과 중첩 사용 문제를 해결했다.

 

어떻게 구현되는지?


- 페이징 방식으로 구현된다.

1) 활동 영역을 메인 메모리에 유지하면서 필요할 때는 디스크와 메모리 사이에 프로세스 코드와 데이터를 저장한다.

2) 자동으로 전송하는 스왑 인, 스왑 아웃 과정을 거쳐 프로세스를 재할당한다.

3) 디스크에 저장된 주요 공간은 캐시로 처리하여 메인 메모리를 효율적으로 사용할 수 있게 한다.



2)스래싱이 무엇인지 설명한 후, 그에 대한 대책인 작업 집합 모델에 대하여 충분히 설명하세요.

스래싱 페이지 교환이 계속 일어나는 현상

- 어떤 프로세스가 프로세스 수행에 보내는 시간보다 페이지 교환에 보내는 시간이 더 길면 스래싱을 하고 있다고 표현한다.

 

작업 집합 모델 가장 최근의 페이지 참조에 있는 페이지 집합

- 프로세스의 작업 집합 모델 내의 페이지들, 즉 최근에 참조된 페이지들을 메인 메모리에 유지시켜 프로세스를 빠르게 실행한다. 그리고 새로운 프로세스들은 메인 메모리에 자신들의 작업 집합을 적재할 수 있는 공간이 있을 때만 시작할 수 있다.

 

- 프로세스가 많이 참조하는 페이지 집합을 메모리 공간에 계속 상주시켜 빈번한 페이지 대치 현상을 줄인다.

- 프로세스들을 메모리에 저장해야 프로세스를 효율적으로 실행할 수 있다. 그렇지 않으면 빈번한 페이지 대치 작업으로 스래싱이 발생한다.

- 프로세스의 작업 집합 모델을 구성하려면 작업 집합의 크기를 알아야 하는데, 작업 집합 크기는 작업 집합 창을 이용하여 구한다.

- 작업 집합 창은 매개변수를 이용하여 정리하며, ‘현재 시간(t)에서 최근의 일정 시간 단위(  )’를 정하여 결정한다.

- 따라서 작업 집합 창의 크기는 매개 변수인 시간 단위 (  )에 따라 다르다.

 

3) 다음 페이지 참조열에서 다음 각 페이지 대치 알고리즘에 페이지 부재가 몇 번 발생하나요? (단 페이지 프레임은 4개로 가정하고, 현재 기억장치는 모두 비어 있다고 가정한다)    페이지 참조열 : 0, 6, 5, 1, 4, 5, 0, 5, 3, 6, 5, 5, 2, 3, 2, 3, 5, 2, 2, 6

      1) LRU    2) 선입선출FIFO   3) 최적OPT   4) 시계

1) LRU - 9

0

6

5

1

4

5

0

5

3

6

5

5

2

3

2

3

5

2

2

6

0

0

0

0

4

4

4

4

4

6

6

6

6

6

6

6

6

6

6

6

 

6

6

6

5

6

0

0

0

0

0

0

2

2

2

2

2

2

2

2

 

 

5

5

6

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

 

 

 

1

1

1

1

1

3

3

3

3

3

3

3

3

3

3

3

3

 

2) 선입선출FIFO  - 10

0

6

5

1

4

5

0

5

3

6

5

5

2

3

2

3

5

2

2

6

0

0

0

0

4

4

4

4

4

4

5

5

5

5

5

5

5

5

5

5

 

6

6

6

6

6

0

0

0

0

0

0

2

2

2

2

2

2

2

2

 

 

5

5

5

5

5

5

3

3

3

3

3

3

3

3

3

3

3

3

 

 

 

1

1

1

1

1

1

6

6

6

6

6

6

6

6

6

6

6

 

3) 최적OPT - 7

0

6

5

1

4

5

0

5

3

6

5

5

2

3

2

3

5

2

2

6

0

0

0

0

0

0

0

0

3

3

3

3

3

3

3

3

3

3

3

3

 

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

 

 

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

 

 

 

1

4

4

4

4

4

4

4

4

2

2

2

2

2

2

2

2

 

4) 시계 9

0

6

5

1

4

5

0

5

3

6

5

5

2

3

2

3

5

2

2

6

0

0

0

0

4

4

4

4

4

4

4

4

4

3

3

3

3

3

3

3

 

6

6

6

5

6

6

6

6

6

6

6

6

6

6

6

6

6

6

6

 

 

5

5

6

5

5

5

5

5

5

5

5

5

5

5

5

5

5

5

 

 

 

1

1

1

0

0

3

3

3

3

2

2

2

2

2

2

2

2

 

'운영체제' 카테고리의 다른 글

기말 3 과제  (0) 2018.11.16
기말 3 과제  (0) 2018.11.16
기말 1 과제  (0) 2018.11.02
6주차 과제  (0) 2018.10.13
6주차 과제  (0) 2018.10.07