Интернет магазин китайских планшетных компьютеров



Компьютеры - Electric Fence

13 мая 2011





Electric Fence, eFence — отладчик памяти, написанный Брюсом Перенсом. Представляет собой библиотеку, которую программист может подлинковать к своему коду и перекрыть вызовы функций распределения памяти стандартной библиотеки языка Си. eFence вызывает критический сбой программы, когда происходит ошибка работы с памятью. С помощью дебаггера можно найти и проанализировать код, вызвавший ошибку.

Electric Fence предназначен для поиска двух основных типов программных ошибок:

  • Выход за границы динамического буфера;
  • Использование динамически выделенного буфера, после его возвращения в кучу.

В обоих случаях Electric Fence прерывает работу ошибочной программы с помощью нарушения доступа к памяти. Обычно эти две ошибки приводят к разрушению кучи, что проявляется гораздо позже, и совершенно вне связи с первопричиной. Таким образом Electric Fence помогает программистам найти точное место ошибки работы с памятью.

Electric Fence выделяет не менее двух страниц для каждого выделенного буфера. В некоторых режимах работы он не возвращает системе освобождённые программой буферы, а использует их для своих нужд. Поэтому Electric Fence сильно увеличивает потребление памяти отлаживаемой программой. Electric Fence стоит применять для отладки небольших программ, и никогда не следует рабочий код компилировать с Electric Fence.

Electric Fence свободная программа, под лицензией GNU General Public License.



Просмотров: 869


<<<