DjPhoeniX
@DjPhoeniX
Hardcore iOS & ESP developer & DJ

Переключение TSS: Intel vs. Oracle?

Кто всё-таки виноват, и что с этим делать?



Спецификации интела гласят (7.3):

8. Saves the state of the current (old) task in the current task’s TSS.



12. The TSS state is loaded into the processor.


Сначала сохраняем, потом загружаем, что логично. Но, пытаясь воссоздать этот код, я наткнулся на исключение #TS в VirtualBox и QEMU (в vmWare и реальных компах всё было ок). Копаясь в проблеме, было выяснено, что в сегментных регистрах TSS — нули, то-есть VirtualBox и QEMU не сохраняют текущее состояние задачи (а точнее — делают это после загрузки. Пруф 1:375, пруф 2:386).



Временно решил проблему принудительным ручным заполнением TSS. Что верно то в итоге? Какому из гигантов верить?
  • Вопрос задан
  • 2757 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы