Category: 컴퓨터 구조

0

컴퓨터 구조 - 메모리 관리 Paging 기법

Paging 기법 프로세스가 사용하는 메모리를 일정한 크기로 잘라 메모리에 할당 하는 방식, 기존 논리 주소 공간이 하나의 연속된 물리 주소 공간에 들어가야 하는 제약을 해소하기 위해 생긴 방식 프로세스의 주소 공간을 나누는 단위는 page, 메모리를 나누는 단위는 frame 이라 한다. page 와 frame 의 크기는 항상 같다. 메모리에 프로세스 주소 공간 전체를 올릴 필요가 사라졌다. 연속된 메모리로 관리하지 않기 때문에 Page Table 을 이용해 여러개로 나뉜 Page 정보를 관리한다. 외부 단편화 가 발생하지 않지만 내부 단편화 가 발생하게 된다. Page Table Virtual Page Number 를 Physical Frame Number 로 변환 시켜주는 Mapping 정보와 현재 Memory 적재 여부를 확인할 수 있는 Table MMU(Memory Management Unit) 는 Page Table 정보를 이용해 논리 주소를 물리 주소로 변환시킨다. Page Table 을 프로세스 마다 하나씩 존재하고 메모리에 올라가 있다. 실행된고 있는 프로세스가 많을 수록 메모리에 올라가 있는 Page Table 정보도 많게 된다. Page Fault Page Fault 란 프로세스가 요청하는 Page 정보가 현재 Memory 에 없는 경우를 뜻한다.

0

컴퓨터 구조 - 메모리 관리 Segmentation 기법

Segmentation 기법 Paging 기법과 달리 프로세스가 사용하는 메모리를 서로 크기가 다른 논리적 단위인 세그먼트로 분할 하고 메모리에 할당하는 기법 Segmentation 은 프로세스를 세그먼트(code, data, stack)의 집합으로 보고 의미가 같은 논리적 내용 단위로 자른다. 자르는 방식에서의 차이가 있고, 메모리에 할당하는 방식은 Paging 과 같다. Segmentation 은 Segmentation Table 을 이용해 여러개로 나뉜 Segment 들을 관리 한다. Paging Table 과의 차이는 Segmentation Table 은 서로 다른 크기로 나뉘었기 때문에 Limit 정보도 같이 관리된다.