Электрический забор
- Информацию о физическом барьере см. в разделе «Электрический забор» .
Electric Fence (или eFence ) — отладчик памяти, написанный Брюсом Перенсом . Он состоит из библиотеки, которую программисты могут связать со своим кодом, чтобы переопределить стандартной библиотеки C. управления памятью функции eFence вызывает сбой программы при возникновении ошибки памяти, поэтому можно использовать отладчик для проверки кода, вызвавшего ошибку.
Electric Fence предназначен для поиска двух распространенных типов ошибок программирования:
- Переполнение конца (или начала) динамически выделяемого буфера
- Использование динамически выделенного буфера после его возврата в кучу
В обоих случаях Electric Fence вызывает немедленное прерывание ошибочной программы из-за ошибки сегментации. Обычно эти две ошибки приводят к повреждению кучи, которое проявляется гораздо позже, обычно несвязанным образом. Таким образом, Electric Fence помогает программистам находить точное место ошибок программирования памяти.
Electric Fence выделяет как минимум две страницы (часто 8 КБ) для каждого выделенного буфера. В некоторых режимах работы освобожденные буферы не освобождаются. Таким образом, Electric Fence значительно увеличивает требования к памяти для отлаживаемых программ. Это приводит к рекомендации, что программистам следует по возможности применять Electric Fence к небольшим программам и никогда не оставлять Electric Fence связанным с производственным кодом.
Electric Fence — бесплатное программное обеспечение , распространяемое по лицензии GNU General Public License .
См. также [ править ]
Внешние ссылки [ править ]
- Electric Fence 2.2.4 из Ubuntu Исходный код
- DUMA — форк Electric Fence, который также работает для Windows.
- eFence-2.2.2 – частота вращения источника электроизгороди 2.2.2