Checker

From Free Software Directory
 
Jump to: navigation, search


[edit]

GNU Checker

https://www.gnu.org/software/checker/
Finds memory errors at runtime.

Checker is a debugging tool suite which is used to find memory errors at runtime.

'Checker' can help find bugs that standard tools cannot always find. The best example is memory leaks. A memory leak is a zone of memory, allocated with malloc that is not used anymore. So the memory allocated is lost. This means you program needs more memory and runs slower, since your OS might have to start swapping. It detects bad memory accesses such as: reading uninitialized memory, writing in a freed zone, writing or reading outside of a memory block, and using NULL pointers. This is particularly useful for big programs with many functions. Checker maintains bitmaps to keep track of the status of each byte of memory. The status can be writable, readable, both, or none. When memory is allocated, the new memory becomes write-only: you are not allowed to read it because it has not been initialized. But when you you write to this new block, those bytes become readable and writable. When the block is freed, the bytes become unreadable and unwritable. Red zones are unreadable and unwritable memory, so that each access to a red zone produces a warning.





Licensing

License

Verified by

Verified on

Notes

License

LGPLv2.1

Verified by

Bendikker

Verified on

1 January 2019

Verified by

Bendikker

Verified on

1 January 2019




Leaders and contributors

Resources and communication

AudienceResource typeURI
Savannah (Ref)https://savannah.nongnu.org/projects/checker/
Generalhttps://savannah.gnu.org/people/
Mailing Listhttps://lists.gnu.org/mailman/listinfo/gnu-system-discuss/
VCS Repository Webviewhttps://cvs.savannah.nongnu.org/viewvc/checker/
Downloadhttps://alpha.gnu.org/gnu/checker/


Software prerequisites

KindDescription
Source requirement GCC 2.8.1




Entry







"Savannah (Ref)" is not in the list (General, Help, Bug Tracking, Support, Developer) of allowed values for the "Resource audience" property.

















Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.