본문 바로가기

OS/OS

하이버네이트(Hibernate)란?

반응형
SMALL

하이버네이트를 알기 전에 프로그램이 어떻게 실행되는지를 알아야합니다.

 

우선 커널은 실행기(Executor)를 통해 프로그램을 실행합니다. 실행기는 기억장치(Storage)에서 exe파일(Windows의 경우)을 가져오고, 커널이 이것을 메모리에 할당해 실행시킵니다.

 

이처럼 모든 프로그램은 메인 메모리에 로드되어 실행되며, 메인 메모리는 보통 RAM(Random-Access Memory)이라고 부릅니다.

 

하지만 RAM은 모든  프로그램을 담기엔 너무 작고 비쌉니다. 또한 전원이 나가면 저장된 데이터가 모두 사라지는 휘발성(Volatile) 장치입니다. 그래서 보조기억장치(Secondary storage)가 필요합니다. 자기테이프(Magnetic tapes), 광학디스크(Optical disk), 자기디스크(Magnetic disk), SSD(Soli-State Disk)는 비휘발성(Non-volatile) 기억장치입니다.

 

반면 메인 메모리, 캐시(Cache), 레지스터(Registers)는 휘발성 기억장치입니다.

 

보조기억장치는 용량이 크고 저렴한 편이지만, 캐시나 레지스터는 용량이 작고 비쌉니다.

 

그래서 최근 컴퓨터에는 절전 모드가 나왔습니다. 데이터를 전부 지우지 않고 절전을 한 다음 내가 원하는 작업을 이어가는 방법입니다.

 

이 방식은 컴퓨터가 절전모드에 들어가면 메모리의 모든 데이터를 보조기억장치에 담아둡니다. 그렇게 절전모드가 종료되면 보조기억장치에 담은 데이터를 그대로 불러와 작업을 수행합니다.

 

이러한 방식을 하이버네이트(Hibernate)라고 합니다.


이상 하이버네이트(Hibernate)란? 이었습니다. ^_^ 

반응형
LIST

'OS > OS' 카테고리의 다른 글

공룡책 5장 CPU 스케줄링  (2) 2019.11.06
공룡책 4장 스레드  (0) 2019.11.03
공룡책 3장 프로세스  (0) 2019.11.02
멀티스레딩이란?  (0) 2019.06.17
프로세스와 스레드의 차이  (0) 2019.06.17