Отладка кода NASM c помощью командных файлов GDB

В данной заметке на примере простой программы на Ассемблере NASM в среде Linux приводятся примеры использования командных файлов в консольном отладчике GDB (GNU Debugger).

Наряду с интерактивным режимом работы (управляющие команды вводятся пользователем непосредственно) в GDB существует возможность использования пакетного режима (управляющие команды GDB выполняются из предварительно подготовленного командного файла). Командные файлы позволяют автоматизировать выполнение рутинных, многократноповторяющихся операций в процессе отладки.

Читать дальше →

PHP: Выявляем узкие места в производительности сайта

Лирика

Каждый разработчик сайта рано или поздно сталкивается с проблемой оптимизации производительности своего проекта. Не важно по каким причинам (бурный рост, или же просто кривой код), и не важно на каком этапе (проектирование, продакшн) — нужно уметь выявлять узкие места и исправлять ситуацию. Что делать: добавлять кэш-сервера, разделять базу, оптимизировать запросы, править код и логику приложения? Решать Вам, но косвенно указать на узкое место поможет одно небольшое решение. Это обычный php-класс, который позволяет оценивать производительность любых фрагментов кода (по времени выполнения) и группировать полученные результаты. Решение с одной стороны простое до безобразия и его очень легко интегрировать в любой проект, с другой стороны может оказаться очень полезным инструментом при выявлении узких мест.


Читать дальше →