Skip to content

Latest commit

 

History

History
46 lines (24 loc) · 1.61 KB

7_2_메모리_관리.md

File metadata and controls

46 lines (24 loc) · 1.61 KB

메모리 관리 - (2)

메모리 주소 종류, 주소 바인딩, 연속할당

페이징

  • 프로세스의 가상 메모리를 동일한 사이즈의 page 단위로 나눔
  • 가상 메모리 내용이 page 단위로 noncontiguous하게 저장됨
  • 일부는 backing store에 일부는 physical memory에 저장
  • 물리메모리를 동일한 크기의 frame으로 나눔. 가상메모리를 동일한 크기의 page로 나눔. page table을 이용해 logical을 physical address로 변환
  • 외부단편화 x, 내부단편화 o

페이지 테이블

  • 주기억장치에 상주
  • Page Table Base Register;PTBR : 페이지 테이블을 가리킴
  • Page Table Length Register; PTLR 테이블 크기 보관
  • 모든 메모리 접근 연산에는 2번의 메모리 접근 필요 : 주소 변환 위해 페이지 접근 한번, 실제 위치에 접근 한번
  • -> 주소변환 전담하는 캐시인 TLB(Translation Look-aside Buffer) 사용 : lookup hardware cache

Two-level Page Table

  • 현대의 컴퓨터는 address 공간이 큰 프로그램을 지원함
  • 페이지 테이블을 두 단계로 구성
  • 메모리 접근 총 3번하게됨. 시간적으로는 더 오래걸리지만 공간은 더 효율적
  • address space가 커질수록 다단계 페이지 테이블 필요.

Shared Page

  • Re-entrant Code = Pure Code : 읽을 수만 있으며 수정 불가
  • 여러 개의 프로세스가 동시에 같은 코드 수행 가능
  • Read Only로 하여 프로세스 간에 하나의 code만 메모리에 올림
  • Shared Code는 모든 프로세스의 logical address space에서 동일한 위치에 있어야 함