Elektrický plot

Electric Fence , eFence  je paměťový debugger napsaný Brucem Perensem . Představuje knihovnu, se kterou může programátor propojit svůj kód a přepsat volání funkcí alokace paměti standardní knihovny C. eFence se zhroutí, když dojde k chybě paměti. Pomocí ladicího programu můžete najít a analyzovat kód, který způsobil chybu.

Electric Fence je navržen tak, aby našel dva hlavní typy softwarových chyb:

V obou případech Electric Fence přeruší chybný program narušením přístupu do paměti. Obvykle tyto dvě chyby vedou k destrukci haldy, která se projeví mnohem později a zcela mimo hlavní příčinu. Tímto způsobem Electric Fence pomáhá programátorům najít přesné místo chyby paměti.

Electric Fence alokuje alespoň dvě stránky (tj. 8 kB na většině počítačů) pro každou přidělenou vyrovnávací paměť. V některých režimech provozu nevrací vyrovnávací paměti uvolněné programem do systému, ale používá je pro vlastní potřeby. Electric Fence proto značně zvyšuje spotřebu paměti laděného programu. Electric Fence by se měl používat pro ladění malých programů a produkční kód by nikdy neměl být kompilován pomocí Electric Fence.

Electric Fence je svobodný software , licencovaný pod GNU General Public License .