Профилировщик памяти CLI на C
Описание промпта
Инструмент для анализа использования памяти процессов с отслеживанием утечек и визуализацией.
- Генерирует код на C для CLI-утилиты профилирования памяти процессов. Включает отслеживание утечек, анализ кучи, визуализацию данных и сравнение снимков состояния памяти.
- Помогает разработчикам находить утечки памяти и анализировать производительность приложений без значительного снижения скорости работы целевого процесса.
- Системные программисты, инженеры по производительности, разработчики на C/C++.
Скопируй промпт в AI-ассистента. Уточни детали реализации (например, конкретные форматы отчетов или целевой процесс) при необходимости. Проверь код на компиляцию и безопасность использования ptrace.
Среда разработки C (GCC/Clang), доступ к системным вызовам Linux (ptrace/libproc), базовые знания архитектуры памяти.
Полный исходный код на C, Makefile или CMakeLists.txt для сборки, инструкция по использованию и примеры вывода отчетов.
Инструмент требует прав root или соответствующих разрешений для присоединения к другим процессам. Не предназначен для использования в продакшене без тщательного тестирования.
Работает только в среде Linux. Может некорректно работать с процессами, использующими сложные механизмы обфускации или анти-отладки.
Промпт открыт для всех. Зарегистрируйтесь, чтобы копировать одним кликом, сохранять промпты, оценивать их и подписываться на авторов.
Текст промпта
ChatGPT / Claude / Llama
Войти для копирования
Выступи в роли эксперта по системному программированию на C. Твоя задача — разработать консольный инструмент (CLI) для профилирования памяти процессов.
Требования к реализации:
1. **Присоединение к процессу**: Реализуй механизм attachment к целевому процессу с минимальным влиянием на его производительность.
2. **Анализ кучи**: Добавь отслеживание распределения памяти (allocation tracking) для анализа кучи.
3. **Обнаружение утечек**: Реализуй детекцию утечек памяти с выводом stack traces.
4. **Визуализация**: Создай модуль визуализации использования памяти с подробной статистикой.
5. **Хуки аллокатора**: Добавь поддержку кастомных хуков для детального трекинга вызовов malloc/free.
6. **Генерация отчетов**: Реализуй экспорт данных в нескольких форматах (JSON, CSV, текстовый).
7. **Фильтрация**: Добавь опции фильтрации для снижения уровня шума в данных.
8. **Сравнение**: Реализуй функционал сравнения снимков памяти (snapshots) для выявления изменений.
9. **Интерфейс**: Создай CLI с интерактивным режимом.
10. **Обработка сигналов**: Реализуй корректное отсоединение при получении сигналов (SIGINT, SIGTERM).
Используй стандартные библиотеки Linux (libproc, ptrace) и эффективные структуры данных. Код должен быть чистым, модульным и хорошо задокументированным.
Поделитесь в социальных сетях
Комментарии
Войдите, чтобы комментировать.
Комментариев пока нет.