2017-11-01 7 views
0

논리 주소가 필요한 이유 CPU가 다른 프로세스의 실제 주소를 직접 생성 할 수 있습니다.운영 체제의 논리 및 실제 주소

두 번째 질문은이 논리 주소가 CPU에 의해 어떻게 생성되는 것입니까?

+0

답변으로 책을 다룰 수 있습니다. OS 책을 가지고 메모리 관리 및 가상 메모리 챕터를 읽으십시오. –

답변

0

Logical address은 가상 메모리의 주소입니다. 그것의 사실상 존재하지 않기 때문에.

는 왜 논리 주소가 필요 ?

대답은 일반적으로 프로그래머가 OS 설계자가 모든 프로그래머가 실제 주소가 무엇인지 알고 기대 메인 메모리합니다 (물리적 주소) 게다가의 실제 주소가 무엇인지 모른다는 것이다. 이 가상 주소를 RAM의 실제 실제 주소로 변환하는 모든 부담은 Memory Management Unit입니다.

이 논리 주소가 CPU에 의해 생산되는 방법

?

는 CPU 단순히 보통 좋은 연속 블록 인 특정 프로세스에 할당되는 가상 메모리의 양에서이 주소를 생성하지만 실제 주소와 어드레스 변환 부 (페이지 연속적 일 필요는 액세스되고 테이블, TLB, ...)는 올바른 실제 주소를 얻기 위해 내부적으로 작동합니다.

Here은 확실히 의심을 취소하는 아름다운 동영상입니다.

0

논리 주소 변환은 최소한 두 가지 기능을 수행합니다. 첫째, 시스템 보안에 중요합니다. 페이지 보호는 논리 메모리 변환의 일부로 구현됩니다.

둘째, 메모리 관리에 도움이됩니다. 특히 논리 메모리 변환없이 가상 메모리를 구현하는 것은 불가능합니다.

다른 두 부분의 일부로 간주 될 수있는 세 번째 부분을 추가 할 수 있습니다. 논리 메모리는 메모리 공유 수단을 제공합니다. 예를 들어, 대부분의 운영 체제는 "시스템 공간"역할을하는 논리 주소 범위를 정의합니다. 이러한 논리 주소는 모든 프로세스에서 동일한 실제 주소로 매핑됩니다. 프로세스는 동일한 물리적 메모리를 공유하는 애플리케이션에서 큰

는 것이 일반적이다. 이는 논리 주소 변환을 통해 수행됩니다. 이 논리 주소가 CPU에 의해 생산되는 방법

내 두 번째 질문은?

논리 어드레스는 [일반적으로, 상기 CPU에 의해 생성되지 않는다. 이들은 페이지 테이블을 사용하여 CPU에 의해 물리적 주소로 변환됩니다. 운영 체제는 논리적 페이지에서 물리적 페이지 프레임으로의 매핑을 정의하는 페이지 테이블을 설정합니다.