На днях у одной из тестовых машин, занимающих жизненное пространство у меня в офисе, обнаружились проблемы с перегревом. Вернее сказать не у неё, а у машин из той же самой партии компьютеров. Под это дело организовали установку дополнительных кулеров на все подобные машины и, что б два раза не вставать, - обновление BIOS. Я, надо сказать, никаких проблем с перегревом не замечал, но мало ли. Ставят – чего ж отказываться.
(more…)
Posted at 9:43 pm •
За последние две-три недели узнал много нового про архитектуру amd64. Во-первых, я наткнулся сначала на документ, а затем на аналогичный раздел в MSDN, где толково описаны не только соглашения о вызовах (этого добра везде навалом), но и дано детальное описание того, как должен выглядеть стек функции, как происходит раскрутка стека, что такое и зачем нужны пролог и эпилог функции. Полезный документ, особенно если нужно разобраться как работает stack unwinder.
(more…)
Posted at 8:40 pm •
Я вот тут периодически читаю всякие ругательные статьи про Vista, и про то, как из нее можно выпилить конфетку, если отключить с десяток служб и, самое главное, если отключить ненавистный UAC. Тот самый, который User Account Control:
Скажите, это я один такой извращенец, что я его не выключаю или это только я один не под локальным администратором работаю?
Примечание: на моей рабочей станции я вынужден работать под учетной записью администратора и там UAC все-таки выключен. Хотя я больше года с ним продержался.
Posted at 9:27 pm •
Вопрос:
Скажите, а невозможность загрузки в 64bit-процесс 32bit DLL - фатальна, или же возможны какие-то хаки, недокументированные обходные пути?
Отвечаю здесь, так как ответ получился слушком длинным.
Во-первых, про любые недокументированные возможности меня спрашивать бесполезно. Даже если такая возможность существует, я всё равно о ней не расскажу. Этому есть несколько причин, включая очевидные вещи вроде NDA, законе об авторском праве и т.д. Еще одна причина, почему я не горю желанием это делать, - это то, что раскрывая детали реализации того или иного компонента, я тем самым лишаю этот компонент возможности развиваться и улучшатся в следующих версиях.
(more…)
Posted at 10:07 pm •
Ключ «Image File Execution Options» знаком, наверное, всем кто вынужден тратить много времени на отладку приложений. В частности, с его помощью можно указать системе всегда запускать определённый процесс под отладчиком. В этом же ключе утилита gflags.exe сохраняет выбранные отладочные опции и т.д. За подробностями рекомендую обратиться в Google, там есть много полезного.
(more…)
Posted at 11:34 pm •
Вскоре после написания поста про определение разрядности исполняемых файлов выяснилось, что в мире .NET «всё совсем по-другому».
(more…)
Posted at 10:33 pm •
Порой разработчики приложений просто поражают своей храбростью и безудержным оптимизмом. Свежий пример – на днях получаю письмо с просьбой разобраться почему 32-битное приложение, нормально работавшее в Windows Server 2003 for Itanium перестало запускаться в Windows Server 2008 for Itanium. Что особенно приятно, так это то, что вместо традиционного «приложение падает, если сделать то, то и вот то», просто прислали сессию отладчика, остановленную непосредственно перед вызовом NtAllocateVirtualMemory, который и приводил к падению.
(more…)
Posted at 9:50 pm •