I. 가상주소와 물리주소간의 변환, 가상메모리 관리
가. 가상메모리 관리의 정의
각 프로그렘에 실제 메모리 주소가 아닌 논리 메모리 주소를 전달하여 메모리 확장 효과
하드디스크의 큰 공간을 활용하여 주기억장치보다 더 큰 공간을 제공가능
II. 페이지 테이블을 이용한 직접사상 과정 및 원리
가. 페이지 테이블을 이용한 직접사상 절차도
나. 페이지 테이블을 이용한 직접사상 절차 및 원리
구분 | 절치 및 원리 | 내용 |
절차 | 가상주소참조 | 수행중인 프로세스는 논리적인 주소를 참조 |
프레임검색 | 페이지 테이블에 저장되어 있는 페이지 프레임을 검색 | |
물리주소 변환 | 검색된 페이지 프레임과 변위 주소 값을 더해서 변환 | |
메모리접근 | 변환된 물리적 주소 값을 통해 메인 메모리 접근 | |
가상주소 | 가상주소 | 페이지 가상 주소 =페이지번호 +Offset |
Paging | Page | 일정한 크기의 고정 단위로 나뉘어진 단위 |
Main memory | 실제 물리적인 주소 공간을 지닌 Unit | |
Page Frame | 일정한 크기로 나뉘어진 메인 메모리 단위 | |
Page Table | Page들을 리스트로 구성하고 있는 집합 | |
Page Fault | Page Table에 Page가 존재하지 않을 경우 발생 |
III. TLB를 이용한 간접사상 과정 및 원리
가. TLB을 이용한 간접사상 과정
•
나. 간접사상 방식의 원리
구분 | 절치 및 원리 | 내용 |
절차 | TBL 검색 | 가상 주소가 물리 메모리 주소로 변환되어야 할 때, 먼저 TLB를 검색 |
물리주소변환 | TLB에서 검색이 성공하면(TLB hit), 즉시 물리 메모리 주소를 반환 | |
페이지 테이블검색 | 만약, TLB에서 검색이 실패하면(TLB miss), 페이지 테이블을 검색 (Page walk) | |
TLB 업데이트 | 페이지 테이블에서 일치하는 매핑 데이터를 찾았다면, 해당 정보를 TLB에 업데이트 (TLB Write) | |
TBL | TLB Hit | 가상주소가 TLB에 존재 물리주소 통해 Cache 검색 Cache 에서 Hit 되면 Data 를 CPU 에게 전달 |
TLB Miss | 가상주소가 TLB에 없음 가상주소로 페이지테이블 검색 |
|
TLB Write | 페이지테이블에서 찾은 항목을 TLB에 갱신 |
구분 | 설명 | TLB 동작 |
TLB Hit | 가상주소에 해당되는 페이지 테이블 항목이 TLB에 있음 | CPU가 TLB를 통해 물리주소생성 |
TLB Miss | 가상주소에 해당되는 페이지 테이블 항목이 TLB에 없음 | 주기억장치 페이지 테이블 참조 후 TLB 갱신 |
TLB Fault | 가상주소에 해당되는 페이지 테이블 항목이 TLB와 주기억장치에 모두 없음 | 디스크로부터 페이지 반입 후 페이지테이블 갱신 |
III. 페이지 테이블과 TLB 방식간 비교
구분 | 직접사상에 의한 주소 변환 | TLB에 의한 주소 변환 |
사상방식 | Direct Mapping | Association Mapping |
페이지 테이블 위치 | 주기억장치 내 | 고속 특수 Cache 내 |
장단점 | 데이터 접근 위해 주기억장치 두 번 접근으로 인한 시간 지연 | TLB 모든 항목을 병렬로 고속탐색 가격이 비싸기 때문에 적용 한계 |
IV. TLB 성능 향상 방법
1.페이지 크기를 증대시키는 방법
-메모리 사상의 적용 정도 증가, 페이지 내부단편화 증가
2.다중 페이지를 지원하는 방법
-적은 내부 단편화로 큰 페이지 사용 가능
'4. 컴퓨터 시스템 및 정보통신 > 컴퓨터시스템' 카테고리의 다른 글
전송부호화(소스코딩, 채널코딩, 라인코딩) (0) | 2022.08.03 |
---|