본문 바로가기

학부_대학원/운영체제

가상 메모리 to 물리 메모리[3]

SMALL

앞에 설명한 내용을 통해서 Linear Address를 구했다.


이제 Paging을 통해서 최종 목표인 Physical Address를 구하도록 한다.


Paging이라고 하면 무엇을 의미하는가?


가상 주소를 블록 단위[Page]로 메모리를 관리하는 방식을 의미한다.


바꿔 말하면 Linear Address[선형주소]룰  물리주소를 바꿔서 관리하는 방식?


그러면 왜 이런 Paging 이라는 기법을 사용하는가.


무슨 이득이 있길레?


단편화[Fragmentation]의 발생을 줄여 메모리를 효과적으로 사용한다.


내부 단편화, 외부 단편화 설명 [http://richong.tistory.com/admin/entry/post/?id=44]


그리고 메모리를 페이지 단위로 사용 하기 때문에, 해당 페이지 번호만 알면


메모리를 공유 할수 있는 장점이있다. 다른 프로세스 끼리 통신? 을


할 수 있을 것 같다.


설명하기에 앞서 역시 용어를 정리하고 가고자 한다.


Page라는 단어와 Frame이라는 단어이다.


둘다 일정한 크기로 나눈 블록이라는 개념은 동일하다.


하지만 Page는 가상 메모리를 일정한 크기로 나눈 블록을 의미하고


Frame은 물리 메모리를 일정한 크기로 나눈 블록을 의미한다.


본격적으로 설명 하고자 한다.


페이지 단위는 보통 4KB로 사용된다. 그러기 때문에 페이지의 offset을 나타내는 


bit도 12bit가 사용된다.  2^12 == 2^10 *2^2[4]해서 4KB이다


그러면 나머지 20bit를 이용해서 페이지의 번호를 표시하게 된다.




32bit의 선형주소[Linear Address]를 10bit, 10bit, 12bit 쪼개 본다.




LIST

'학부_대학원 > 운영체제' 카테고리의 다른 글

Component[컴포넌트]  (0) 2016.07.29
Deadlock  (0) 2016.07.27
크리티컬 섹션 vs 뮤텍스 vs 세마포어  (0) 2016.07.25
가상 메모리 to 물리 메모리[용어]  (0) 2016.07.25
가상 메모리 to 물리 메모리[2]  (1) 2016.07.24