tlb(2)
-
운영체체(9), Main Memory
Memory Management 메모리 관리의 목표 개발자가 메모리가 어떻게 되어있는지를 몰라도 쉽게 사용할 수 있도록 돕는다. 비싼 자원인 메모리를 효율적으로 사용할 수 있도록 하고, 메모리 프로텍션(두 개 이상의 프로세스를 독립적으로 만들어서)을 제공하는 목표를 가지고 운영체제가 메모리를 관리한다. 개발자가 몰라도 잘 사용할 수 있도록 추상화를 잘 해준다. Batch programming - monitor가 프로그램을 메모리에 올리고 이를 모니터링하다가 job을 처리하는 식으로 진행했다. 이때는 프로그램 하나가 메모리를 모두 썼다. 실제 ram의 주소를 사용해서 처리했다. 어차피 프로그램을 하나만 올려서 사용했기 때문이다. Multiprogramming - 여러 프로세스가 메모리에 올라가서 동작해야하..
2022.12.18 -
컴퓨터 구조(14), Virtual Memory
Virtual Memory 1. Virtual Memory 1) Motivation - 하드웨어의 캐시 - 실제 여러 프로그램을 돌리기 위해 필요한 데이터는 메인메모리의 사이즈보다 훨씬 큰데 이를 해결해준다. - 지금 당장 필요로 하는 액티브 포션만 들고, 나머지는 디스크에 둬서 동시에 사용할 수 있도록 돕는다. - 로컬리티 법칙이 필요하다. - 동시에 여러 프로그램을 돌리기 위해선 문제가 발생할 여지가 많다. 동일한 메모리 공간에 액세스할 때 충돌이 발생하는 것도 해결해준다. - 메모리 공간을 충돌없이 사용할 수 있도록 돕는다. - 각각의 프로그램을 프로텍트해준다. - 비어있는 메모리 공간을 사용하도록 돕는다. 내가 사용한 저장공간을 동일한 프로그램을 실행한다고 해서 쓸 수 있는 것은 아니다. - 어드..
2022.06.15