IT 기획의 길

[OS] OS의 버퍼 캐시와 가상 메모리의 차이 본문

IT 인프라/운영체제

[OS] OS의 버퍼 캐시와 가상 메모리의 차이

완벽하기 쉽지 않지만 완벽해지려고 노력해야 한다 2021. 12. 9. 15:11

OS의 가상 메모리와 캐시 메모리의 차이점

 

메모리는 일시적 또는 영구적으로 정보를 저장하는 데 사용되는 하드웨어 장치입니다. 이 기사에서는 가상 메모리와 캐시 메모리의 차이점에 대해 논의했습니다. 캐시 메모리 는 데이터의 액세스 시간을 줄이기 위해 사용되는 고속 메모리입니다. 다른 한편, 가상 메모리 는 정확히 물리적 메모리 가 아니며 주 메모리의 용량을 한도를 초과하는 기술입니다.

가상 메모리와 캐시 메모리의 가장 큰 차이점은 가상 메모리를 사용하면 주 메모리보다 큰 프로그램을 실행할 수 있지만 캐시 메모리 는 최근에 사용한 데이터에 더 빨리 액세스 할 수 있다는 것입니다. 아래 비교 차트의 도움으로 몇 가지 차이점에 대해 논의 할 것입니다.

비교 차트

비교의 근거                        가상 메모리                                                                       캐쉬 메모리
기본 가상 메모리는 사용자의 메인 메모리 용량을 확장합니다. 캐시 메모리는 CPU의 데이터 액세스 속도를 고정시킵니다.
자연 가상 메모리 기술입니다. 캐시 메모리는 저장 장치입니다.
기능 가상 메모리는 주 메모리보다 큰 프로그램의 실행을 허용합니다. 캐시 메모리는 최근에 사용 된 원본 데이터의 사본을 저장합니다.
메모리 관리 가상 메모리는 운영 체제에서 관리합니다. 캐시 메모리는 하드웨어가 완벽하게 관리합니다.
크기 가상 메모리는 캐시 된 메모리보다 훨씬 큽니다. 캐시 메모리의 크기는 제한되어 있습니다.
매핑 가상 메모리는 가상 주소를 실제 주소에 매핑하기위한 매핑 구조를 필요로합니다. 캐시 메모리에서는 매핑 구조가 필요하지 않습니다.

가상 메모리의 정의

가상 메모리 는 컴퓨터의 실제 메모리가 아니라 주 메모리에 완전히 배치 되지 않는 대형 프로그램 의 실행을 허용하는 기술 입니다. 프로그래머는 주 메모리보다 큰 프로그램을 실행할 수 있습니다.

이제 가상 메모리가 어떻게 작동하는지 이해합시다. 이 프로그램은 가상 메모리 주소가 여러 페이지 로 나뉘어져 있습니다. 주 메모리는 또한 여러 페이지 로 나뉩니다. 자, 우리가 볼 수 있듯이 프로그램의 가상 주소는 사용 가능한 주 메모리보다 큽니다. 따라서 메모리 맵은 가상 주소를 주 메모리에 매핑하는 데 사용됩니다.

페이지 0, 1, 2가 주 메모리에 매핑되고 주 메모리가 가득 차게됩니다. 이제 가상 메모리의 페이지 3이 주 메모리의 공간을 요청하면 페이지 0과 같이 가장 오래된 페이지가 하드 디스크로 전송되어 주 메모리에서 페이지 3에 대한 장소를 비우고 프로세스가 진행됩니다. 페이지 0이 다시 필요할 경우, 그 당시 가장 오래된 페이지가 다시 하드 디스크에 전송되어 페이지 0을위한 장소가됩니다.
2 개의 프로그램이 동일한 데이터를 메인 메모리에 배치해야한다면, 메모리 맵핑 유닛은 두 프로그램이 공유 데이터 가 저장되는 메인 메모리의 동일한 어드레스 공간을 공유하게한다. 이렇게하면 파일을 쉽게 공유 할 수 있습니다.
가상 메모리의 이점은 다음과 같습니다.
  • 프로그램은 더 이상 주 메모리의 한계에 의해 제약받지 않습니다.
  • 가상 메모리는 다중 프로그래밍의 정도를 높입니다.
  • CPU 사용률을 높입니다.
  • I / O 장치가 적 으면 메모리에있는 프로그램을로드하거나 스왑해야합니다.

그러나 가상 메모리의 단점 이 있습니다. 프로그램의 더 많은 페이지를 하드 디스크에 저장하면 하드 디스크에서 데이터에 액세스 할 때 주 메모리에서 데이터에 액세스하는 것보다 시간이 오래 걸리기 때문에 성능  저하 됩니다.

캐시 메모리의 정의

가상 메모리와 달리 캐시  프로세서 자체에서 구현되는 저장 장치 입니다. 최근에 액세스 한 원본 데이터의 사본을 가지고 있습니다. 원래 데이터는 주 메모리 또는 보조 메모리에 배치 될 수 있습니다. 캐시 메모리  데이터 액세스 속도를 고정 하지만 어떻게됩니까? 이해합시다.

우리는 CPU의 액세스 속도가 주 메모리 의 액세스 속도로 제한 된다고 말할 수 있습니다. 프로그램이 프로세서에 의해 실행될 때마다 메인 메모리에서 프로그램을 가져옵니다. 프로그램 사본 이 이미 프로세서에 구현 된 캐시 에있는 경우. 이 프로세스는 빠른 속도로 실행되는 데이터에 더 빨리 액세스 할 수 있습니다.

가상 메모리와 캐시 메모리의 주요 차이점

  1. 가상 메모리는 사용자를 위해 가상 메모리의 용량을 확장 합니다. 그러나 캐시 메모리는 CPU에 대한 데이터 액세스를 더 빠르게 만듭니다.
  2. 캐시는 메모리 저장 장치 이지만 가상 메모리는 기술 입니다.
  3. 가상 메모리는 메인 메모리보다  프로그램의 실행을 가능하게합니다. 반면에 캐시 메모리는 최근에 사용 된 원본 데이터의 복사본 을 저장합니다.
  4. 가상 메모리 관리는 운영 체제에 의해 수행됩니다. 반면에 캐시 메모리 관리는 하드웨어에 의해 수행됩니다.
  5. 가상 메모리는 캐시 된 메모리 크기보다 훨씬 큽니다 .
  6. 가상 메모리 기술은 매핑 구조 가 가상 주소를 물리적 주소에 매핑하는 반면 캐시 메모리  매핑 구조를 필요로 하지 않습니다 .

결론:

가상 메모리는 사용자를 위해 주 메모리의 용량을 가상으로 확장하는 기술입니다. 캐시 메모리는 최근에 액세스 한 데이터를 저장하는 저장 장치로 CPU가 데이터에 더 빨리 액세스 할 수있게 해줍니다

'IT 인프라 > 운영체제' 카테고리의 다른 글

운영체제와 커널이란?  (0) 2021.12.15
운영체제의 역할  (0) 2021.09.24