A20 라인

Ahn9807 (토론 | 기여)님의 2023년 2월 16일 (목) 08:21 판 (새 문서: 분류: X86 아키텍쳐 == 개요 == 옛날 8086 시절에는 어드레스 라인을 20비트만 사용하다가, 이 후 어드레스 라인이 24비트로, 다시 32비트로 확장되면서 기존 어드레스 라인과의 호환성 문제가 생겨났다. 이것을 해결하기 위해 21번째 어드레스 비트를 켜고 끌 수 있는 기능이 키보드 컨트롤러를 통해서 제공되게 되었고, 이것이 바로 지금 보호모드 사용과 메모리 관리...)
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)


개요

옛날 8086 시절에는 어드레스 라인을 20비트만 사용하다가, 이 후 어드레스 라인이 24비트로, 다시 32비트로 확장되면서 기존 어드레스 라인과의 호환성 문제가 생겨났다. 이것을 해결하기 위해 21번째 어드레스 비트를 켜고 끌 수 있는 기능이 키보드 컨트롤러를 통해서 제공되게 되었고, 이것이 바로 지금 보호모드 사용과 메모리 관리를 위해 A20 라인을 켜주어야 하는 원인이 되었다. A20게이트는 21번쨰 어드레스 버스 라인에 있는 앤드 게이트 이다.

A20라인을 켜주지 않으면 메모리 주소의 21번쨰 비트는 0으로 고정된 것처럼 동작한다. 따라서 현대 커널에서는 부팅과정에서 이 라인을 해제하는 방법이 필요한다.