OSDev

для всех
Текущее время: 28 мар 2024, 20:20

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




Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Ошибки эмуляторов PC
СообщениеДобавлено: 16 авг 2013, 00:07 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
После переделки менеджера памяти в своей ОС, у меня неожиданно всплыла ошибка с контроллером прерываний Local APIC + IO/APIC (видимо время задержек по памяти изменилось, что вызвало изменение реакции на прерывания). Суть проблемы в том, что в эмуляторе команда EOI разблокирует сразу все прерывания находящиеся в обработке, а должна разблокировать только последнее поступившее в обработку. Так, если в процессе обработки прерывания поступило и обработалось другое прерывание, то в текущий обработчик поступит вложенное прерывание до выдачи EOI. В моём конкретном случае, когда между прерываниями клавиатуры вклиниваются прерывания таймера, то драйвер клавиатуры зависает из-за нарушения порядка поступления прерываний. Ошибка проявляется в Bochs 2.6.2 и VMware Workstation 9.0.2. Естественно, ошибка не проявляется на реальном PC.

Думаю, решение будет таким - вложенные обработчики будут завершаться без EOI. При этом количество вложенных обработчиков будет подсчитано, и выданы команды EOI за каждого из них после завершения всех обработчиков.

PS. Предлагаю в этой теме собирать все найденные ошибки эмуляторов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибки эмуляторов PC
СообщениеДобавлено: 16 авг 2013, 06:05 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
Их достаточно много. Шаг влево-вправо от того, что делают популярные оси и ты уже сидишь и думаешь откуда взялся глюк, ведь все было сделано в точном соответствии со спеками и на реальном железе никаких проблем не наблюдается.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибки эмуляторов PC
СообщениеДобавлено: 16 авг 2013, 11:35 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Не знаю, у меня это первая найденная ошибка. Вот и хотелось бы узнать больше, на всякий случай :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибки эмуляторов PC
СообщениеДобавлено: 16 авг 2013, 11:40 

Зарегистрирован: 31 окт 2011, 18:20
Сообщения: 230
Была уже тема с багами эмуляторов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Ошибки эмуляторов PC
СообщениеДобавлено: 16 авг 2013, 11:51 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Ссылки на сообщения тоже хорошо.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

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


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

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


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

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