보조기억장치를 주기억장치처런 사용하는게 가상메모리 개념이잔아.
주기억장치위 보조기억장치의 물리주소 값들을 저장하는거면..
Cpu는 주기억장치랑 데이터 송수신 하는게 훨씬 빠르잔아
근데 가상 메모리 쓰면 보조기억장치까지 가야 된다는 건데
그럼 데이터를 가져오는데 오래ㅜ걸리는거 아님??
주기억장치위 보조기억장치의 물리주소 값들을 저장하는거면..
Cpu는 주기억장치랑 데이터 송수신 하는게 훨씬 빠르잔아
근데 가상 메모리 쓰면 보조기억장치까지 가야 된다는 건데
그럼 데이터를 가져오는데 오래ㅜ걸리는거 아님??
오래 걸려...
아닌데 스왑하는 것은 가상메모리 개념의 옵션이지. 주기억 장치만으로도 가상 메모리를 구성할 수 있어. 가상 메모리는 단편화(external)을 없애는 용도로도 사용되지
가상메모리가 단편화를 없애는 용도로 사용된다는건 좀 잘못된게 아닌가 싶다. 보호모드 아래에선 모두 페이지 단위로 관리되는거 아님? 단편화를 없애는 용도로는 힙이 사용되는거겠고. EMM386.exe 써봤다면 가상메모리가 메모리 부족 문제를 해결하기 위해서 만들어졌다는걸 부정하긴 어려울것 같은데. 주기억장치인 램이 비싸니깐 보조기억장치의 자원을 끌어다 쓰는거고, 하락하는 성능 문제를 해결하기 위해 어느정도 캐시를 두고 있어.
그건 x86의 경우이지 애초부터 64비트인 경우는 emm386같은거 필요없어. low, high의 개념도 없고 그냥 메모리일 뿐이야. 페이지단위로 관리한다는 것 자체가 페이지 테이블을 쓰는거고 가상주소를 사용하는건데 이게 가상메모리의 핵심이지. 가상메모리에 대해서 emm386과 연결하는 것은 과거 x86 컨벤셔널 메모리를 쓰는 32비트 이하의 특수한 경우를 일반화 시키는 오류야
원래 가상 메모리란 가상 주소를 쓸수 있도록 해서 진짜 물리 주소의 비연속된 공간을 가상으로 연속된 공간으로 펼치는게 핵심이야. 이 과정에서 스왑기법은 더 넓은 영역을 쓸 수 있게 해주는 옵션기능이고