Valgrind
- For alternative betydninger, se Valgrind (flertydig). (Se også artikler, som begynder med Valgrind)
Udvikler(e) | The Valgrind Developers |
---|---|
Stabil version | 3.22.0 (31. oktober 2023) |
Operativsystem | Linux, Mac OS X |
Type | Hukommelsesfejlfinder |
Licens | GPL |
Hjemmeside | Valgrind.org |
Valgrind er et edb-program til dynamisk fejlfinding i og analyse af andre programmer.
Valgrind kan finde fejl ved den måde programmer bruger hukommelse på såsom brug af ikke-initialiseret hukommelse og brug af hukommelse efter det er frigivet og meget andet. Valgrind fungerer ved at fortolke et programs binære maskinkode på en virtuel CPU hvilket gør at de fleste programmer kan køres af Valgrind uden at man skal gøre nogle særlige forberedelser forinden.
Valgrind er et frit program under GPL-licensen. Det er lavet af Julian Seward og andre. Det kan bruges på Linux-systemer på x86, x86-64, PowerPC og Mac OS X. Det findes desuden nogle projekter for portering til andre styresystemer.
Valgrind er modulært opbygget, og analysen af det program som Valgrind udfører, laves af et særskilt værktøj (tool). Valgrind version 3.2.0 distribueres med følgende værktøjer:
- Memcheck: Til at finde af fejl ved brug af hukommelse (adressering af ikke-allokeret hukommelse, brug af ikke-initialiseret hukommelse, hukommelseshuller og andre hukommelsesrelaterede fejltyper).
- Cachegrind: Til profilering (analyse) af brugen af hukommelsecache (I1-, D1- og L2-cache).
- Massif: Til profilering af det samlede hukommelsesforbrug.
- Callgrind: Til analyse af hvordan programmets funktioner kalder hinanden.
- Lackey: Et demonstrationsværktøj til brug for værktøjsudviklerne.
Andre værktøjer omfatter:
- Helgrind: Til analyse af mulig usikker brug af resurser i trådede programmer.
Programmet af opkaldt efter Valgrind, porten til Valhal i nordisk mytologi.