가상 메모리는 실제 램 외에 하드 디스크 등의 보조 기억장치를 활용하여 램 용량을 확장하는 기술이다. 프로그램이 필요로 하는 데이터를 램에 모두 올리지 않고, 일부만 램에 올려두고 나머지는 하드 디스크에 저장한다. 이를 통해 램의 용량 제약을 극복하고 더 큰 프로그램을 실행할 수 있게 된다.
가상 메모리 작동 원리
- 페이징(Paging): 램과 디스크를 일정한 크기의 페이지로 나누고, 필요한 페이지만 램에 로드한다.
- 세그멘테이션(Segmentation): 프로그램을 논리적인 단위인 세그먼트로 나누고, 필요한 세그먼트만 램에 로드한다.
- 페이지 폴트(Page Fault): 프로그램이 특정 페이지에 접근할 때 해당 페이지가 램에 없으면 페이지 폴트가 발생하고, 운영체제는 필요한 페이지를 디스크에서 램으로 가져온다.
가상 메모리의 장점
- 프로그램 크기 제한 극복: 램 크기를 초과하는 큰 프로그램을 실행할 수 있게 된다.
- 다중 프로그램 지원: 여러 프로그램이 동시에 실행될 때 각 프로그램이 독립적으로 가상 주소 공간을 사용하여 충돌을 방지한다.
'운영체제(OS) > keyword' 카테고리의 다른 글
(Project3-Virtual Memory) 변환 색인 버퍼(TLB) (0) | 2023.12.16 |
---|---|
(Project3-Virtual Memory) 페이지 테이블(Page Table) (0) | 2023.12.16 |
(Project2-User Programs) 세그멘테이션 오류(Segmentation Fault) (0) | 2023.12.16 |
(Project2-User Programs) 인터럽트(Interrupt) (0) | 2023.12.16 |
(Project2-User Programs) 32 bit OS vs 64 bit OS (0) | 2023.12.15 |