OSDev

для всех
Текущее время: 29 апр 2024, 18:41

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу Пред.  1, 2, 3
Автор Сообщение
 Заголовок сообщения: Re: SMP, переназначение прерываний
СообщениеДобавлено: 21 мар 2012, 18:51 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Bargest писал(а):
Скачал BOCHS 2.5.1 с поддержкой SMP. Long-Mode выключен.

Я сам 64-битный режим не использую, и не пробовал. Ну раз не работает, значит не работает.
Bargest писал(а):
Как быстрее получить Local APIC ID, через CPUID или считав из памяти по адресу Local APIC'?

Точно не знаю. Мне кажется, прочитать из памяти проще, и наверно быстрей. В реальности читается не из памяти, как ты понимаешь.

PS. ЛС пришло, только проверять забываю. Пиши на форуме, форум всё стерпит :-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SMP, переназначение прерываний
СообщениеДобавлено: 01 апр 2012, 07:38 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
Я перевёл пример из книжки на загрузчик немного упростил и добавил ыключение мышки ps2, но прерывание 12 не срабатывает теперь после включения АПИК. И клава стала глючить.
Вложение:
2.rar [3.25 КБ]
Скачиваний: 408


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SMP, переназначение прерываний
СообщениеДобавлено: 02 апр 2012, 10:14 
Аватара пользователя

Зарегистрирован: 20 апр 2011, 10:54
Сообщения: 145
У меня близкий по теме вопрос
1)APIC Global Enable flag, bit 11 ⎯ Enables or disables the local APIC (see
Section 10.4.3, “Enabling or Disabling the Local APIC”). This flag is available in
the Pentium 4, Intel Xeon, and P6 family processors. It is not guaranteed to be
available or available at the same location in future Intel 64 or IA-32 processors.
(Великая книга).
Как это понимать?
2)В чем смысл Spurious Interrupt (из мануалов ничего не понял - как его обрабатывать)?

_________________
Found a CPU. LAPIC ID: 00


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: SMP, переназначение прерываний
СообщениеДобавлено: 02 апр 2012, 18:05 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
Spurious Interrupt везде означает примерно одно и то же -- ложное прерывание. Оно происходит, когда процессору уже выдан запрос прерывания и он отправил подтверждение, а контроллер прерывания обнаружил, что исходный запрос (от устройства) куда-то пропал. Обычный PIC, помнится, в таких случаях нагло врал процессору, заявляя, что прерывание пришло по линии IRQ 7 или IRQ 15 (в зависимости от того, первый это PIC или второй), поэтому обработчики соответствующих векторов должны были уже сами выяснять, а не ложное ли это прерывание.

Ну а обработка... Скорей всего, достаточно просто его проигнорировать. Просто частое появление таких прерываний является поводом задуматься, а всё ли хорошо работает: вообще говоря, их возникать не должно.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу Пред.  1, 2, 3

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB