12.7 메모리 관리 하드웨어
메모리 관리 장치의 종류(MMU)
- 논리 메모리 참조를 물리 메모리 주소로 변환하는 동적 저장 장소 최대치를 위한 어드레스 맵핑 기능
- 메모리 내에서 서로 다른 사용자가 하나의 프로그램을 사용하기 위해 공통 프로그램 공유 기능
- 사용자간의 허락되지 않은 접근을 맡는 프로그램 보호 기능
MMU : 하드웨어와 소프트웨어의 융합 (S/W는 운영체제)
- CPU에 있는 하드웨어
- 메모리 컨트롤러를 사용한 하드웨어
세그먼트
- 같은 이름으로 주어져 있는 논리적으로 연관된 명령어나 데이터 요소의 집합을 의미
- 예) 서브루틴, 데이터의 배열, 심볼 테이블, 사용자가 만든 프로그램
논리 주소
- 세그먼트로 나누어져 있는 프로그램에 의해서 만들어진 주소
- 가상 주소와 유사하다
-
- 가상 주소 : 고정된 크기의 페이지로 나눈다
- 논리 주소 : 가변적인 길이의 세그먼트
세그먼트 페이지 맵핑
- a) : 두개의 테이블을 사용한다. (세그먼트, 페이지) 두 테이블을 읽는데 많은 시간이 걸린다.
- b) : 가장 최근에 참조된 테이블 값을 저장한다. (세그먼트, 페이지, 블록) CPU가 참조된 페이지를 요청할시에 더 빠르다.
논리 주소&물리 주소
- 논리 주소
-
- 4비트 세그먼트 : 16세그먼트
- 8비트 페이지 : 256페이지
- 8비트 워드 : 256 주소필드
- 물리 주소
-
- 12비트 블록 : 4096 블록
- 8비트 워드 : 256 주소 필드
논리&물리 주소 할당
메모리 보호
- Base address : 논리주소, 세그먼트, 페이지에 해당하는 데이터들이 포함되어 있는 위치
- Length : 특정한 세그먼트에 포함되어 있는 최대페이지의 개수
- Protection : 해당 하는 세그먼트에 허락 할 수 있는 접근 권한
접근 권한 : 메모리에 상중하는 프로그램을 보호하기 위해 할당한다.
- 대부분 OS라 보면된다.
1) Full read and write 권한 : 보호되지 않은 프로그램
2) Read Only : 쓰기 보호가 된 형태
3) Execute only : 프로그램 자체 보호가 된 형태
4) System only : 운영체제 시스템을 보호하기 위해 사용되는 권한