Посмотри. Может, где счётчик какой переполняется. Может стек. Пожет имеет место повторная входимость в прерывания.
Пройдись bochsdbg - сразу поймёшь, что не так.
AntiB Возможно, оффсет pm_entry не тот. Надо посчитать абсолютный адрес для pm_entry.
Тем более, что эта прога под венду. А я на венду клал большой и толстый.
Я бы на всякий случай мэджик с rdtsc вынес в отдельную функцию. И глянул бы дизасм кода. Благо Borland C 3.1 умеет генерить асмовый код. А перед...
А это чудо на чём написано, не на Borland C 3.1, случайно?
Сегментная модель памяти плоха тем, что приходится использовать FAR pointers, а это - перезагрузка селекторов, достаточно длительный процесс.
http://wiki.osdev.ru/index.php/%D0%9A%D0%BB%D0%B0%D0%B2%D0%B8%D0%B0%D1%82%D1%83%D1%80%D0%B0
APIC - читай Intel Manual. Хотя если не рассчитываешь ядро как SMP, тебе его нету смысла пока трогать.
У reiserfsck есть нехорошая фича. Он уязвим когда коммитит транзакции. То есть, если сбой по питанию в момент коммитинга транзакций происходит,...
В заголовке много лишней и ненужной инфы. Остальное, в принципе, терпимо.
Блин, ну и извращаются же люди под Виндами. В линуксе бы это была связка dd_rescue + losetup + mount.
Кстати, может быть ещё плохой контакт (например, на переходниках MiniJack -> Jack и наоборот). У меня плохой переходник Jack->MiniJack, так его...
У меня на интегрированном аудио нормальный звук даёт :). Только ручку комбоусилителя приходится выкручивать на полную :). Подключаю по схеме...
Разобрался с процессорами. Просто они стартовали, но выполняли всякую фигню (проблема оказалась в оффсетах).
Так этот код - часть драйвера в ядре... Исходники лежат здесь - http://xskernel.svn.sf.net/ Конкретно что я делаю с APIC -...
Стартануть второй проц, чтобы вывел текст в видеобуфер и зациклился. После посылки IPI-SIPI-SIPI 0 реакции.
Насколько помню, это нужно только шине, чтобы поддерживать каскадирование (PIC'а у нас два ведь).
Зато у AMD есть куча вкусных фич, которые можно получить по cpuid eax>0x80000004.
Подскажите, что я делаю не так: QWORD apic = ReadMSR(IA32_APIC_BASE); // _asm { mov ecx, 0x1b; rdmsr } size_t addr =...
Имена участников (разделяйте запятой).