3학년/운영체제

Chapter4-5

김야키 2019. 7. 23. 17:29

가상 메모리 할당

 

쓰레싱

  1. 가상 메모리를 사용함에 따라 실제 접근을 하기 위해서는 실제 메모리 상에 올라와 있는 것이 좋다.
  2. 페이지 부제가 계속적으로 발생 하면 성능이 떨어진다.
  3. 이렇게 되면 페이지 교체에만 자원을 많이 소모하게 되는데 이런 상황을 쓰래싱이라 한다.

 

쓰래싱을 줄이는 법

  1. 멀티 프로그래밍을 줄이는 것
  2. 실행중인 프로세스를 인의적으로 빼는 것
  3. 할당된 페이지를 늘리거나 페이지 프로그램을 줄이는 것

 

구역성(Locality)

  1. 한글 프로그램을 쓸 때 에디팅을 하다 여러가지 작업을 할 때 해당 코드가 한 페이지에 들어가지 않는다고 가정을 한다. 그렇다면 다른 작업을 함께 묶어서 다른 페이지도 함께 올린다.
  2. 페이지 하나가 접근 되는 순간 함께 있는 페이지도 함께 메모리에 올리는 것
  3. 그 집합들을 작업 세트(Working Set)라고 부른다.
  4. 예측하기 힘듦(개발자 외에는)

 

작업 세트(Working Set)

  1. 프로세스에 의해 자주 참조되는 페이지 묶음
  2. 페이지 부제율이 줄어들게 된다.
    • 페이지 부재가 자주 일어나면 작업 세트를 늘린다.
    • 패이지 부재가 적으면 작업 세트를 줄인다.
  3. 정확한 예측은 어렵다.
  4. 페이지를 나열할 때 대략적인 시간으로 작업 세트를 대략적으로 둔다.
  5. 시간을 어떻게 맞추느냐 에 따라 다르다.
  6. 시간을 크게 잡으면 작업 세트가 커지고 작게 잡으면 작업세트도 작아진다.

 

 

주소공간(Address Space)

    1. 32비트 = 232
    2. 메모리에 접근하는 주소가 32비트 (=232 )
      • 64비트라면 주소 표현은 64비트 (=264 )
    3. 32비트 시스템에서 Page의 크기가 4kb라면
      • k = 210
      • 4 * 210 B = 212 B
      • P = 20비트 = 220  = 1MB
    4. 너무 커서 페이지를 둘로 나누어서 계층적으로 사용
      • 이것을 계층형 이라 함

 

Hash

 

역 페이지 테이블

 

-      프로세스 전체에 하나의 페이지 테이블을 사용

-      메모리 만큼의 크기만 있으면 되기 때문에 찾기가 빠르다.

-      단점 : pid에 대한 p값이 없을 수 있기 때문에 가상 메모리에 접근을 한 뒤에 찾는다.

 

'3학년 > 운영체제' 카테고리의 다른 글

Chapter4-4  (0) 2019.06.23
Chapter4-3  (0) 2019.06.23
Chapter4-2  (0) 2018.04.17
Chapter4-1  (0) 2018.04.17
Chapter3  (0) 2018.04.13