2010-06-10 7 views
3

임베디드 시스템에서 수시로 호출해야하는 BIOS 기능이 있으며 LRMI를 사용하여 사용자 공간 프로그램에서 성공적으로 호출 할 수있었습니다. 이제로드 가능한 커널 모듈에서 동일한 작업을 수행하려고합니다.리눅스 커널 모듈의 리눅스 리얼 모드 인터페이스

이렇게 할 방법이 있습니까? 아마 다른 도서관?

+0

내장 시스템은 BIOS를 사용합니까? 어떤 종류의 임베디드 시스템입니까? – Daniel

+0

임베디드 시스템이라면 해결 방법을 찾아야합니다. 아마도 당신은 리눅스에서 BIOS를 호출하기를 원하는 이유를 설명해야 할 것입니다. 예를 들어 BIOS를 새로 고치려고한다면 DOS 파티션으로 부팅하여 작업을 수행 할 수 있습니다. – BraveNewCurrency

답변

0

프로세서가있는 모드 (BIOS가 모든 리소스를 초기화 한 후에 켜지는 보호 모드)와 관련이 있습니다. BIOS 인터럽트를 다시 사용하려면 프로세서가 16 비트 리얼 모드 시스템을 에뮬레이트 할 때 v8086 모드를 사용해야합니다. 그런 다음 레지스터를 설정하고 가상 모드 프로그램을 사용하여 인터럽트를 호출 할 수 있습니다.

여기에 가상 모드에 들어갈 방법은 다음과 같습니다 http://www.brokenthorn.com/Resources/OSDev23.html

또한 시도하고 리얼 모드로 전환하지만,이 프로세서를 재설정 포함 할 수있다. 나는 당신이 이것을 할 수 없기 때문에 당신이 이것을 어떻게 프로그램 적으로 할 것인지 모른다.

+0

사실, LRMI는 BIOS 호출에 도달하기 위해 CPU를 v8086 상태로 자동 설정합니다. 이 작업을 수동으로 수행하려는 경우 빠른 연구가 필요할지라도이를 신속하게 파악해야합니다. – Magn3s1um