OSDev http://osdev.su/ |
|
APIC http://osdev.su/viewtopic.php?f=6&t=412 |
Страница 1 из 1 |
Автор: | ZarathustrA [ 06 май 2011, 13:06 ] |
Заголовок сообщения: | APIC |
В общем картина такая: не могу отправить IPI на Application processor. В системе два проца, оба запущены, оба выполняют код. Подсистема прерываний настроена. StartUp IPI и INIT IPI проходят нормально. На Boot Processor: if (IPI -> BP) // самопрерывание OK; if (IPI -> AP) // самопрерывание FAIL; // прерывания AP не происходит На Application Processor: if (IPI -> BP) // самопрерывание OK; if (IPI -> AP) // самопрерывание FAIL; // прерывания AP не происходит В чем может быть проблема? Какие могут быть причины у того, что AP не ловит IPI? |
Автор: | ZarathustrA [ 06 май 2011, 14:49 ] |
Заголовок сообщения: | Re: APIC |
Вопрос закрыт. Было: VOID ASMCODE Apic::EnableApic(VOID) { __asm mov EAX , APIC_PAGE + APIC_SPUR_INT_REG; __asm or [EAX], 0x00000100U ; __asm ret ; } Стало: VOID ASMCODE Apic::EnableApic(VOID) { __asm push EBX ; __asm mov EAX , APIC_PAGE + APIC_SPUR_INT_REG; __asm mov EBX , [EAX] ; __asm or EBX , 0x00000100U ; __asm mov [EAX], EBX ; __asm pop EBX ; __asm ret ; } |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |