가상메모리
-
[OS] 요구 페이징(가상메모리)OS 2021. 12. 6. 09:53
요구 페이징(가상메모리) 안녕하세요? 장장스입니다. 우리가 일반적으로 사용하는 컴퓨터의 메모리는 8GB, 16GB로 그 크기가 한정되어 있습니다. 그럼에도 우리는 많은 프로그램을 동시에 띄워 사용하고 있습니다. 운영체제는 한정된 메모리 공간을 효율적으로 사용하기 위해 가상메모리 기법을 사용합니다. 가상메모리 기법은 크게 요구 페이징 방식(demand paging)과 요구 세그먼테이션 방식(demand segmentation)으로 구현이 됩니다. 요구 세그먼테이션 방식의 경우에는 페이지드 세그먼테이션 기법을 사용하는 경우입니다. 대부분의 경우에는 요구 페이징 방식을 사용합니다. 요구 페이징(demand paging) 요구 페이징은 프로그램 실행 시 프로세스를 구성하는 모든 페이지를 한꺼번에 메모리에 올리는..
-
[OS] 프로세스 메모리 구조 (코드, 데이터, 스텍, 힙)OS 2021. 7. 19. 07:57
프로세스 메모리 구조 (코드, 데이터, 스텍, 힙) 프로그램의 실행 프로그램의 실행은 두가지 중요한 의미를 가진다. 파일 시스템에 존재하던 실행파일이 메모리에 적재된다는 의미 프로그램이 CPU를 할당받고 명령을 수행하고 있는 상태 파일 시스템에 있는 실행 파일이 메모리에 적재될 때, 실행파일 전체가 메모리에 올라가지 않는다. 일부분만 메모리에 올라가고 나머지는 디스크의 특정영역인 스왑 영역에 존재한다. 프로세스 메모리 영역 프로세스의 주소 공간은 코드(code), 데이터(data), 스택(stack), 힙(heap) 영역으로 구성된다. 이러한 주소 공간을 우리는 가상 메모리 (또는 논리적 메모리: logical memory)라고 부른다. code 영역 사용자가 작성한 프로그램 함수들의 코드가 CPU에서 ..