728x90
Page Table
Paging
- address space를 연속적으로 할당하지 말고, 페이지라는 단위로 쪼개서 사용하는 것이다.
- 먼저, 프로세스의 메모리를 page 단위로 자르고, 실제 physical 메모리도 page 단위로 쪼갠다. 이 때 쪼개진 physical memory를 page나 page frame이라고 부른다. 그리고 이 virtual address의 page를 physical memory의 frame으로 mapping하는 방법이다.
Page Table
- VPN(Virtual Page Number)를 PFN(Physical Frame Number)로 매핑해주는 table
- 각각의 프로세스는 자신만의 page table을 독립적으로 가지고 있으며, 각 프로세스의 page table이 저장되어 있는 주소를 page table register가 저장하고 있다.
- page table은 OS로부터 관리되고, MMU가 접근해서 읽는다. 이 때, 각 page table의 원소 하나하나를 page table entry(pte)라고 한다.
- page table은 메인 메모리에 존재해서 메인 메모리에 최소 2번은 접근해야 원하는 데이터를 얻을 수 있다.
- 페이지 테이블에 접근
- 페이지 테이블을 기반으로 실제 메모리에 접근
- 이를 줄이기 위해서 TLB를 사용한다.
728x90
'Computer > CS' 카테고리의 다른 글
페이지 폴트(Page Fault) (0) | 2024.03.22 |
---|---|
TLB(Translation Lookaside Buffer) (0) | 2024.03.22 |
가상 메모리(Virtual Memory) (0) | 2024.03.22 |
블로킹/논블로킹(Blocking/Non-Blocking) (0) | 2024.03.12 |
동기/비동기 (0) | 2024.03.12 |