문제

배경: 운영 체제가 시작되기 전에 0xa0000 이하의 메모리를 예약해야합니다. 이를 위해 나는 0040:0013 (또는 0x413) KIB에서 사용 가능한 낮은 메모리의 양인 단어.

그러나 Windows 및 기타 운영 체제가 사용됩니다 E820H/int15H 메모리 레이아웃과 일부 BIOS를 쿼리하려면 ES는 E820H/Int15H BIOS 기능의 0x413 변경 사항을 반영하지 않습니다. 따라서 필요한 경우 E820H 기능을 연결해야합니다.

의문: OS 전에 낮은 메모리를 예약하는 또 다른 (더 신뢰할 수있는) 방법이 있습니까? 또는 int15h 훅화 이외의 E820H/int15H 결과를 변경하는 다른 방법 (아마도 EBDA를 찌르기에 의해?)

도움이 되었습니까?

해결책

나는 그렇게 생각하지 않지만 부트 로더를하지 않는다면 OS를 중심 할 수 있습니다. Xen Hypervisor를 볼 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top