верно особенно когда что-то нужно сделать, а русского описания этого "чего-то" нет
sergh пиши в ЛС мыло, вышлю
rpy3uH в мануале от Intel написано лучше всего сам достаточно долго разбирался, но в итоге это себя оправдало просто читай не спеша сначала другое...
процессор не обладает (ну до определенной степени конечно :)) искусственным интеллектом он видит, что в селекторе FS бит TI установлен...
Chingachguk возьми bochs и пошагово пройдись отладчиком вообще я у тебя в коде не нашел установки FS а т. к при обратном переключении задач...
Mika0x65 хорошо, допустим при переключении сохраняются/восстанавливаются только EAX, EBX, ..., ESI, EDI, CR3, EFLAGS вот набросал примерный...
не понимаю, почему только для этого неужели сохранение контекста "вручную" быстрее?
ну если в стеке лежат последовательно SS3, ESP3, CS3, EIP3 и CPL = 0 тогда да
можно сделать сегментность на уровне задач, т. е не отказываясь от страничного режима, ввести LDT для каждой задачи, причем база каждого сегмента...
нет, это просто к вопросу о том, что аппаратное переключение возможно без создания отдельных TSS дескрипторов для каждой задачи как в Windows я не...
TSS необходим в любом случае откуда по-вашему брать SS/ESP (для ring0) при исключении/прерывании (когда CPL = 3)? кроме того, для аппаратного...
нельзя точнее можно, но придется писать свой Linux ;-)
ну... EIP всегда задается относительно базы в CS
честно говоря я тоже не совсем понимаю, зачем при вызове sysenter/sysexit изменять значения дескрипторов разве что только для того, чтобы избежать...
будешь смеяться, но сырцы ядра и есть самый лучший ман из книг лучшая на мой взгляд, http://oz.by/books/more1025384.html?id_search=55687
а если у нас есть код, который должен быть доступен с любого уровня привелегий, т. е и в режиме ядра, и в пользовательском режиме. Разве переход...
дело вот в чем mov ds, ax mov ss, ax xor eax, eax mov es, ax fs и gs на реальной машине и в VMWare оказывались в неопределенном состоянии в то...
YR архитектурно-зависимый код - тот, что на ассемблере (непосредственно или с помощью вставок) написан чем конкретно нужно помочь?
format binary CODE_32_SEGMENT = 0x0050 CODE_32_SECTORS_COUNT = 4096 / 512 STACK_SIZE = 512 HEAD_STACK_ESP = 0x90000 + STACK_SIZE...
ну не знаю, пошагово прогонял в Bochs, ничего подозрительного не замечал (кстати Bochs тоже :))
Имена участников (разделяйте запятой).