시스템상에서 프로세스들은 다른 프로세스들과 CPU와 메인 메모리를 공유합니다. 그런데, 메인 메모리를 공유하는 것은 몇가지 문제에 직면하게 됩니다. CPU에 대한 요청이 늘어날수록, 프로세스들은 몇가지 이유로 인해 느려지게됩니다. 만약 너무 많은 프로세스들이 너무 많은
footer: Copyright © 2021 by HungryDev, All rights reservedslidenumbers: trueautoscale: trueslide-transition: truebuild-lists: true컴퓨터 시스템에서의 메인 메모리는 바
주소 공간은 양의 정수 값으로 오름차순으로 정렬됩니다. {0, 1, 2, . . .}주소 공간의 정수들이 연속적으로 있으면 우리는 이를 linear address space라고 부릅니다. 기본적으로 주소 공간은 linear address space를 전제로합니다. 가상
가상 메모리는 디스크에 저장된 N개의 연속된 바이트 크기 셀들의 배열로 구성됩니다. 각각의 바이트는 유니크한 가상 주소를 가지고 배열처럼 index로 접근 가능합니다. 디스크 배열의 내용은 메인 메모리에 캐시되어있습니다. 메모리 계층구조의 다른 캐시들처럼, 디스크에 있
바로 지난 장에서 우리는 가상 메모리가 DRAM을 활용해서 더 큰 가상 메모리의 캐시 페이지의 집합으로 어떻게 활용하는지를 살펴보았습니다. 흥미롭게도, 몇몇 초기 시스템들(ex. DEC PDP-11/70)은 물리 메모리보다 더 적은 가상 메모리 공간을 지원했었습니다.
어떤 시스템이든 운영체제가 메모리 시스템에 대한 접근을 제어할 수 있는 수단을 반드시 제공해야 합니다. 유저 프로세스는 read-only 코드섹션을 수정할 수 없어야합니다. 또한 커널에 있는 코드와 데이터 구조들도 읽거나 수정할 수 없어야합니다. 또한 다른 프로세스의