2013-10-29 17 views

답변

0

16 비트 CPU는 64KB의 메모리 만 처리 할 수 ​​있습니다. 메모리 범위를 확장하기 위해 기본적으로 pchyscak 사용 가능한 메모리에서 64KB 창의 기본 주소를 정의하는 세그먼트가 도입되었습니다.

이러한 포인터가 가리키는 pyhscial 주소를 얻으려면 세그먼트 값에 10h (16)을 곱하고 오프셋 주소를 추가해야합니다. 즉. 주소가있는 경우

145A:67B1 

145A0 (+10h or << 4) 
+ 67B1 
------ 
1AD51 <- Physical memory address 

보호 모드 설명자는 이러한 세그먼트와 유사하지만 추가 정보가 있습니다. 길이는 1-64KB (x286)까지 올라갈 수 있으며 prvilige 레벨 및 존재에 대한 정보가 있습니다. 특권 레벨은 운영 체제를 사용자 공간에서 더 안전하고 독립적으로 만드는 데 사용되며, 존재 플래그는 가상 메모리 용입니다.

386에서 범위가 확장되어 이제 세그먼트가 최대 1MB가 될 수 있고 세분성이 추가되어 이제 세그먼트가 4096 블록의 배수가되어 세그먼트 크기가 최대 4GB까지 확장됩니다.

설명 자의 또 다른 속성은 16 코드가 여전히 작동 할 수 있도록 세그먼트를 16 비트 또는 32 비트 모드로 설정하는 것입니다.