2018년 11월 27일
분산 메모리 할당 기법
I. 외부 단편화 해결, 페이징 기법
가. 페이징 기법의 매핑 테이블 개념
p: page number, f: frame No.(physical address), d: page offset ① logical address의 주소 이용 page number 확보 ② page table에서 해당 page에 있는 frame number 확보 ③ frame number + page offset으로 물리 메모리 주소 확인 | |
– 메모리 고정 크기 분할 방식 – 읽기 빠름, 메모리 낭비 큼 – 직접, 연관, 직접/연관 사상법 |
– 매핑 테이블은 페이지 번호, 프레임 번호로 구성
나. 페이징 기법의 페이지 매칭 방식
페이지 매칭 방식 | 설명 |
---|---|
Direct Mapping | – 페이지 테이블을 주기억장치에 위치 – 데이터 접근 위해 2번 접근, 속도 느림 |
Associative Mapping | – 테이블을 Associative Buffer에 저장 |
Direct/Associative Mapping | – 테이블을 Associative Buffer에 저장 – 주 기억장치에 분산 저장 |
II. 내부 단편화 해결, 세그먼트 기법
가. 세그먼트 기법의 개념
s: segment number, d: page offset ① segment address의 주소 이용 segment number 확보 ② segment table에서 시작 주소(base)와 길이(limit) 확보 ③ segment + offset으로 물리 메모리 주소 확인 | |
– 필요한 만큼 가변적인 Segment로 분할 메모리 낭비 적으나 외부단편화 발생 |
– 메모리를 논리적 블록 단위인 세그먼트(segment)로 분할하여 물리 주소를 논리 주소로 변환
나. 페이징과 세그먼트 비교
항목 | 페이징 기법 | 세그먼트 기법 |
---|---|---|
할당 단위 | 메모리 할당 크기 고정 | 메모리 할당 크기 가변 |
적재 단위 | 프로그램 일부 적재 | 프로그램 전체 적재 |
장점 | – 외부 단편화 없음 – 교체 시간 짧음 | – 내부 단편화 최소화 – 코드, 데이터 공유용이 |
단점 | – 스레싱 문제 심각 – 내부 단편화 발생 – 코드, 데이터 공유논란 | – 외부 단편화 심각 – 메인 메모리 커야함 – 교체 시간 길어짐 |
III. 페이징/세그먼트 방식 혼용 기법
항목 | 세부 내용 |
---|---|
개념 | – 페이징 기법과 세그먼트 기법의 장점을 수용하여 가상 기억 장치에서 세그먼트 단위로 가상 주소를 관리하고 세그먼트를 페이지 단위로 관리하는 기법 |
특징 | – 물리적 주소 처리는 페이징 기반으로 수행 – 주소 검색은 세그먼트에서 페이지순으로 수행 – 단편화 최소화를 위해 기억장치 효과정 사용 |
구성도 | |
– 가상 주소의 세그먼트 번호를 이용하여 SMT상의 레코드 찾음, 여기 PMT 주소가 저장 – 해당 PMT에서 가상 주소의 페이지 번호를 이용, 주기억장치의 페이지 프레임 시작 주소 구함 – 여기에 변위를 더해 실제 주소를 구함 |