Electric Fence
Electric Fence, eFence — отладчик памяти, написанный Брюсом Перенсом. Представляет собой библиотеку, которую программист может подлинковать к своему коду и перекрыть вызовы функций распределения памяти стандартной библиотеки языка Си. eFence вызывает критический сбой программы, когда происходит ошибка работы с памятью. С помощью дебаггера можно найти и проанализировать код, вызвавший ошибку.
Electric Fence предназначен для поиска двух основных типов программных ошибок:
- Выход за границы динамического буфера;
- Использование динамически выделенного буфера, после его возвращения в кучу.
В обоих случаях Electric Fence прерывает работу ошибочной программы с помощью нарушения доступа к памяти. Обычно эти две ошибки приводят к разрушению кучи, что проявляется гораздо позже, и совершенно вне связи с первопричиной. Таким образом Electric Fence помогает программистам найти точное место ошибки работы с памятью.
Electric Fence выделяет не менее двух страниц (то есть на большинстве компьютеров 8Кб) для каждого выделенного буфера. В некоторых режимах работы он не возвращает системе освобождённые программой буферы, а использует их для своих нужд. Поэтому Electric Fence сильно увеличивает потребление памяти отлаживаемой программой. Electric Fence стоит применять для отладки небольших программ, и никогда не следует рабочий код компилировать с Electric Fence.
Electric Fence свободная программа, под лицензией GNU General Public License.
Внешние ссылки
| Компьютер | Это незавершённая статья о компьютерах. Вы можете помочь проекту, исправив и дополнив её. |
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....