воскресенье, 19 ноября 2017 г.

Windbg debugging series, part 3 of n, make_shared vs new

Третья часть, в которой я немного покажу, как восстанавливать информацию об объектах в windbg без приватных символов (только публичные), а также немного поясню почему make_shared лучше чем сырой вызов new, и как вообще это связано с отладкой.

понедельник, 6 ноября 2017 г.

Windbg debugging series, part 2 of n. Stack overflow

Вторая часть, в которой мы обсудим ошибки переполнения стека. В основном, мы будем обсуждать переполнение стека в ядре, т.к. там все более драматично, чем в user-mode. Про user-mode расскажу в конце статьи.

среда, 1 ноября 2017 г.

Windbg debugging series (1 of n)

Лирическое отступление

Давно я ничего не писал в блог, но тут несколько людей так или иначе спрашивали меня про Windbg и про его расширения, поэтому решил попробовать написать серию постов об отладке C/C++ кода в Windows с помощью отладчика Windbg, поделиться своим опытом использования windbg, а также услышать feedback и ваши истории успеха при использовании Windbg

суббота, 7 марта 2015 г.

Пару слов о конференции C++ Russia 27-28 февраля 2015

Вступление

Я посетил конференцию http://meetingcpp.ru/, данная конференция посвящена языку C++ и проводится регулярно в России. Итак, ниже мои впечатления о конференции. Я разделил доклады на несколько основных направлений, хотя на самой конференции такого деления и не проводилось.

четверг, 1 января 2015 г.

Парад планет

В фильме «2012» парад планет 
оказывает негативное влияние на Солнце,
 что приводит к ужасным катаклизмам на нашей планете.
 (выдержка из Wikipedia)

Был на работе недавно довольно эпичный баг. Сформулирован он был примерно следующим образом: после развертывания компоненты FDE (Full disk encryption) Windows загружается но на экране ничего не отображается (черный экран). Разбирательство с этим багом у нас заняло несколько месяцев (естественно, не фулл-тайм), и вот, наконец, мы докопались до сути.

Итак, в этом баге встретились несколько особенностей: во-первых, особенности реализации  эмулятора 16-ти битного кода в ядре Windows, во-вторых, особенности BIOS конкретной машины, ну и в-третьих, наша пребутовая компонента, которая перехватывает некоторые прерывания BIOS для своих нужд.

пятница, 13 июля 2012 г.

Восхождение на белуху. Первый блин комом.

Хотя блог и тематический, решил написать сообщение не по теме, ибо слишком много эмоций и переживаний (положительных) подарил мне этот поход.

суббота, 21 января 2012 г.

Secure Coding

Наша компания купила курс для программистов C, C++: "Secure Coding in C and C++". Для проведения курса был приглашен преподаватель из Carnegie Mellon University. Я попытаюсь сделать краткий обзор лекций, которые нам были прочитаны. Скажу сразу - это мое субъективное мнение.