Paging

  • 최초 적합과 최적 적합(1/3정도 메모리 낭비) → Compaction(메모리 계산 부담) → Paging
  • 프로세스를 일정 크기인 페이지로 잘라 메모리에 적재하는 방식
  • hole과 프로세스를 모두 특정 페이지 단위로 잘라서 관리
  • 프로세스를 나눈 페이지 마다 relocation register를 만들어 놓으면 CPU는 마치 프로세스가 연속된 메모리 공간에서 동작하고 있다고 생각...

  • MMU ⇒ page table
  • CPU가 내는 주소 : Logical Address / page table을 거쳐 Physical Address

ex) logical address = 50, page size = 16byte

50 = 110010(2)

하위 4bit(0010)은 n비트

상위 2bit(11)가 '3'의 값이 페이지 번호 → 이에 해당하는 페이지 테이블 숫자를 읽는다. 8이라 가정하면

8 = 1000(2)

8과 n비트를 합쳐 10000010(2)라는 물리적 주소로 간다. 10진수로 바꾸면 130!

 

  • 페이징 과정을 진행하면 내부 단편화가 발생할 수 있다.
  • 프로세스의 크기가 페이지 크기의 배수가 아니라면 마지막 프로세스의 페이지는 한 프레임을 다 채울 수 없다.
  • 하지만 외부 단편화에 비하면 낭비가 적다!

+ Recent posts