Кривая ОС, черезанальный дебаг. Часто требуется связываться с мантейнерами других частей ОС, чтобы они рассказывали о внутренней структуре своих кодовых выделений. Переменные можно найти только в memory dump, кривую функцию только методом тыка. Вобщем феерическое безобразие. DefectiveByDesign - и этим всё сказано.
> Совсем по другому, чем они рекомендуют делать сторонним разработчикам.
Абсолютно! Может мне так везет, на каждом микрософтовском сборище где я был, кто-нибудь из выступавших проходился по поводу gdb, причем делал это в такой манере... у нас тут гопники цивильнее базары ведут.
> на каждом микрософтовском сборище где я был, кто-нибудь из выступавших проходился по поводу gdb, причем делал это в такой манере... у нас тут гопники цивильнее базары ведут.
А за что они его так не любят? (Серьёзно. С gdb не работал.)
> встроенный я ядро отладчик умеющий gdbserver+gdb
Это для стендовой отладки девелоперами ядра, а по линку речь идет о другом - ядро падает у _других_ разрабов, к разработке ядра отношения не имеющих ("Упало далеко и в релизном билде Висты"). Так что встроенный в ядро дебагер здесь не помощник.
> Сколько, оказывается, здесь специалистов по отладке ОС 8) А как _вы_ отлаживаете свои ОС? Ну или хотя бы - как это должно происходит в "правильно"? :D
Увы от нас тут мало что зависит. Всё в культуре и традициях программирования unix-way.
Читкал у Энди Таненбаума, что Мелкомягкие до 18-00 пишут код, потом это посылается на центральный сервер, собирается (build) а затем ночью это всё тестится. С утра приходят разрабы, читкают ашыпки, исправляют, в 18-00 всё становится снова на круги своя.
> Читкал у Энди Таненбаума, что Мелкомягкие до 18-00 пишут код, потом это посылается на центральный сервер, собирается (build) а затем ночью это всё тестится
Судя по презентации они даже не осилили делать одновременно восходящее и нисходящее проектирование разных компонентов ОС. Про этап оптимизации тоже ничего не сказано. То ли его нет, то ли они оптимизируют что придётся как придётся.
Жесть. не помнить на ум формат стекового фрейма без артефактной бумажко. calling convention максимум 3 штуки, которые волшебным образом видно из прототипа функции. Дебаггинг скилл мля. Я валяюсь... Максимум зачем нужна ЧИСТАЯ бумажка - оффсет посчитать если пальцев не хватает (стековый фрейм нарисовать для наглядности).