войти зарегистрироваться

PHPPHP под С-шным дебаггером: копаемся внутри Zend Engine

Как-то пришлось мне столкнуться с проблемой: веб-краулер на PHP работает себе нормально, работает, а потом вдруг (через 3-6 часов работы) перестает что-либо делать и начинает кушать 100% CPU. Как искать такую проблему? Как узнать, где он зацикливается? А что если подключиться к PHP сишным дебаггером и узнать оттуда все, что необходимо? Подробности под катом.

Qt SoftwareQt Creator 2.3 и Remote Linux Deploy

В очередной раз на хабре осталась незамеченной новость, которая пробежала в блоге Qt Labs и известила о выходе Qt Creator 2.3. Если вскользь просмотреть список изменений, то как обычно можно увидеть кучу прикольных плюшек, одна из которых заинтересовала меня неимоверно. А именно — развёртывание и отладка приложения на удалённой Linux-машине, при помощи ssh, прямиком из среды разработки.

ПрограммированиеGDB GUI

image

Оказывается, у GDB есть GUI, который можно запустить при помощи ключика -tui

Подробнее

Open sourceВышел GDB 7.1

Вышла новая версия замечательного консольного отладчика GDB. Изменения:
  • Добавлена поддержка мультипрограммной отладки (т.е. теперь можно работать с несколькими программами в рамках одной сессии отладки)
  • Добавлена поддержка Position Independent Executable (PIE)
  • Поддержка платформ Xilinx MicroBlaze и Renesas RX
  • Улучшения в поддержке Python (напомню, что для GDB можно писать скрипты на Python)
  • Расширена поддержка C++
  • Новые возможности при работе с tracepoint'ами
  • Улучшения в записи процессов (Process Record)
  • Улучшения в протоколе удалённой отладки
Сам я новую версию пока что не «щупал», так что за всеми подробностями, пожалуйста, обращайтесь к документации.

К своему удивлению я не нашёл на хабре топиков, посвящённых этой программе. Поэтому хочу спросить: Интересно ли будет вам прочитать топик по основам отладки в GDB?

ПрограммированиеПривет из свободного от libc мира! (Часть 1)

В качестве упражнения я хочу написать программу на С. Достаточно простую для того, чтобы дизассемблировать ее и объяснить весь код самой себе.

Звучит несложно, правильно?

У читателя предполагается наличие опыта компиляции программ и работы в Линуксе. Небольшое умение читать ассемблерный код тоже пригодится.

ПрограммированиеСписок литературы

Под катом список хорошей литературы.