포도가게의 개발일지

메모리 관리 참조 : [OS] Lec 9. Virtual Memory (1/5) - Non-continuous allocation 본문

CS

메모리 관리 참조 : [OS] Lec 9. Virtual Memory (1/5) - Non-continuous allocation

grape.store 2021. 9. 9. 23:55
반응형

Virtual Memory Management

  • Non-continuous allocation
  • 사용자 프로그램을 여러개의 block으로 분할
  • 실행시, 필요한 block들만 메모리에 적재
    - 나머지 block들은 swap device에 존재
  • 기법
    - Paging system
    - Segmentation system
    - Hybrid paging/segmentation system
    좌측은 가상주소 단편화 신경안쓰고 연속할당하여 관리 하지만 실제로는 우측으로 physical주소에는 나뉘어져서 올라간다.
       
  •  

너무 중요한듯

Block Mapping

  • 사용자 프로그램을 block 단위로 분할/관리
    - 각 block에 대한 address mapping 정보 유지
  • Virtual address : v = (b,d)로 구성
    b : block number -> 어느 블록인지
    d : displacement(offset) in a block -> 블록의 시작점에서 얼마나 떨어져있는지
  • Block map table(BMT)
    - address mapping 정보 관리 : kernel 공간에 프로세스마다 하나의 BMT를 가짐

BMT

* residence bit : 주소가 올라가 있나 check 1이 있음
* 그러면 real address열에 physical 주소가 저장되있음 r(나눠진 partition 실제찐 위치) = a+d를 통해 실제 저장되있는 위치를 알 수 있음

Comments