본문 바로가기

운영체제

Virtual Memory

Demand Paging

- virtual memory는 이전 메모리관리와는 다르게 운영체제가 관리한다.

- 실제 필요할 때 page를 메모리에 올리는 것을 말한다. 이는 필요한 부분만 올리기 때문에 I/O양이 감소하고 memory 사용량이 감소하며 빠른 응답시간을 제공한다.

- valid / invalid bit의 사용

  * invalid bit의 의미: 사용되지 않는 주소 / swap out되어서 물리적인 주소에 없는 경우

- 만약 요청이 들어왔는데 invalid bit이 set되어 있으면 page fault가 걸린다.(운영체제에 넘어가는 경우)

 

disk I/O작업은 오래 걸리기 때문에 cpu를 preempt당하는 것이다. 

 

page fault를 처리할 때 사용될 알고리즘

 

1. optimal algorithm은 미래에 참조될 page들을 모두 알고 있다는 가정하에 사용되는 알고리즘이다.

따라서 실제 시스템에서 사용되는 알고리즘은 아니지만, 다른 알고리즘에 참고로 사용되는 알고리즘이다. 

2. FIFO Algorithm은 먼저 들어온 페이지를 먼저 쫓아내는 방식으로, 실제 시스템에서 사용되는 알고리즘이다. 

3. LRU는 가장 오래전에 참조된 것을 지우는 알고리즘으로, 가장 많이 쓰이는 알고리즘이다.

4. LFU

 

 

 

 

 

Reference

http://www.kocw.net/home/search/kemView.do?kemId=1046323

 

'운영체제' 카테고리의 다른 글

Memory Management4  (0) 2021.06.30
Memory Management3  (0) 2021.06.30
Memory Management2  (0) 2021.06.29
Memory Management  (0) 2021.06.29
Deadlock  (0) 2021.06.29