부트로더에서 10h 인터럽트를 이용해 텍스트를 출력하는 이유?
글쓴이: syia / 작성시간: 토, 2005/10/29 - 7:36오후
많은 부트로더가 10h 인터럽트를 이용해 텍스트를 출력하던데
특별한 이유가 있나요?
0xb800 번지에 직접쓰는게 더 빠르다고 하던데..
저같은경우 VMware에서 0xb800 번지에 쓰기가 안되서
골머리를 앓고있는중입니다 -_-;
-----
VMware에 쓰기가 안되는건 해결이 됬으나.. (알고보니 플로피 이미지 만드는 프로그램이 문제였음;;) 여전히 10h 인터럽트를 이용하는건 궁금하군요 ^^;
Forums:


직접 써봤는데 동생 컴퓨터와 내 노트북에서는 문제가 없는데 내 컴퓨터에서
직접 써봤는데 동생 컴퓨터와 내 노트북에서는 문제가 없는데 내 컴퓨터에서는 글자가 약간 깨지는 군요.
뭔가 쓰기 행위 외에도 신경 써줘야 할 부분이 있는 것 같습니다.
- 죠커's blog / HanIRC:#CN
보통 바이오스 인터럽트(10h등)를 사용하는 이유는, 하드웨어별 특성을
보통 바이오스 인터럽트(10h등)를 사용하는 이유는, 하드웨어별 특성을 피하기 위해서입니다. 내부 구현이(롬바이스내에 구현된 출력루틴) 어떠할지라도 일정한 출력을 원할때 사용합니다.
과거 그래픽 프리미티브등을 만들때, 모드세팅은 바이오스 인터럽트를 이용했고,
고성능을 위해 메모리 번지에 직접 출력하는 루틴은 그래픽 카드의 종류 및 벤더 특성에 따라 처리했었습니다.
부트로더의 경우에는 자주 출력하는 부분이 아니고, 초기 일정 시간 동안만, 사용하기 때문에 성능보다는 안정적인 코드가 좋다는 판단이 아니었을까? 라는 예측이 됩니다.