[OS] 가상 메모리(swap) 사용 시 CPU 점유율이 폭증하는 이유
·
Computer Science/Operating System
연구팀을 위해 데이터를 뽑는 도중 큰 데이터를 뽑다가 서버를 터트렸다. 해당 원인에 대해서 공부했던 내용에 대해서 서술한다. 가상 메모리(swap)란? 가상 메모리는 물리적인 RAM이 부족할 때 디스크 공간의 일부를 RAM처럼 사용하는 시스템이다. 이는 임시 방편으로 RAM이 부족한 상황에서 프로세스를 계속 실행하게 해준다. 예를 들어, 사용자가 8GB RAM을 갖춘 컴퓨터에서 10GB의 메모리를 요구하는 대규모 응용 프로그램을 실행하려고 시도한다면, 실제 물리적인 RAM만으로는 충분하지 않다. 이때, 운영체제는 2GB의 데이터를 하드 디스크의 swap 영역에 저장하게 된다. 이로 인해 사용자는 마치 10GB의 RAM이 있는 것처럼 프로그램을 실행할 수 있다. 하지만, 디스크 I/O는 RAM보다 느리므로..
[CS] 운영체제 - 메모리 관리
·
Computer Science/Operating System
메모리는 주소를 통해서 접근하는 매체이다. 크게 논리적인 주소, 물리적인 주소로 나뉜다. Logical address 와 Physical Address Logical address(논리 주소) 프로세스마다 독립적으로 가지는 주소 공간이며, 각 프로세스마다 0번지부터 시작한다. CPU가 보는 주소는 논리적인 주소이다. Physical address(물리 주소) 메모리에 실제 올라가는 위치를 말한다. 주소 바인딩 주소 바인딩이란 주소를 결정하는 것을 의미한다. Compile time binding 물리적 메모리 주소가 컴파일 시 알려진다. 시작 위치 변경시 재컴파일한다. 컴파일러는 절대 코드를 생성한다. Local time bining Loader의 책임하의 물리적 메모리 주소를 부여한다. 컴파일러가 재배치..
얼은펭귄
'메모리 관리' 태그의 글 목록