성능에 미치는 요인들
성능에 영향을 끼치는 여러가지 요인들이 있다.
- page size
- TLB reach
- Belady's anomaly
Page Size
Page size는 일반적으로 4KB에서 4MB 사이로 한다.
- page size가 작아지면
- 장점
- page I/O time이 줄어든다.
- page fault handling이 작아진다.
- internal fragmentation이 작아진다.
- 단점
- page table size는 커진다. (더 많은 page를 기록해야 함)
- 장점
- page size가 커지면
- 장점
- page table의 크기는 작아진다.
- total I/O time은 작아진다.
- 단점
- page I/O time이 커진다.
- page fault handling은 커진다.
- internal fragmentation은 커진다.
- 장점
TLB Reach
TLB reach는 address translation 시 TLB에서 얼마나 hit이 잘 날것인가를 표현하는 간접적인 지표이다.
TLB Reach = TLB size * Page size
TLB reach가 커지면 page hit이 발생할 확률이 커진다.
이는 address translation에서 hit이 잘 난다는 것을 의미한다.
그러나 TLB size가 키우면 하드웨어의 비용이 높아지고 가성비가 안좋아진다.
page size를 키우면 internal fragmentation, page fault handling 등이 안좋아진다.
따라서 이를 잘 조절해야 한다.
Belady's Anomaly
page replacement 알고리즘 중 FIFO algorithm은 memory 크기가 커짐에도 page fault가 증가함을 야기했다.
optimal 알고리즘, LRU 알고리즘 등 stack으로 표현되는 알고리즘은 belady anomaly를 가지고 있지 않다.
즉, stack으로 구현 가능한 알고리즘은 이상현상을 초래하지 않는다.
따라서 page replacement 알고리즘을 만들 때 주의해야 한다.
'Computer Science > Operating System' 카테고리의 다른 글
I/O Register, Device Driver (0) | 2021.06.20 |
---|---|
I/O Devices (0) | 2021.06.20 |
Memory Optimization (0) | 2021.06.20 |
Memory Allocation and Trashing (0) | 2021.06.20 |
Page Replacement (0) | 2021.06.20 |
댓글