Program za pronalaženje pogrešaka
Program za pronalaženje pogrešaka ili debugger je računalni program koji se rabi za otklanjanje grešaka ostalih programa. Debugger može testirati i provjeriti pravilnost rada programa.
Rušenje programa se događa u slučaju da je izvođenje programa nemoguće zbog softverskog buga, to jest, greške u kodu. Primjerice, program je možda koristio instrukciju koja nije dostupna za trenutnu verziju korisnikovog procesora ili je pokušao pristupiti nekoj nedostupnoj ili zaštićenoj memoriji.
Opis[uredi]
Debuggeri daju napredne funkcije kao što su pokretanje programa korak po korak (single-stepping), zaustavljanje ili pauziranje izvođenja programa na takozvanom breakpointu tijekom određenih zbivanja, a neki čak i mogućnost mijenjanja programa dok se izvodi. Iste funkcije koje čine debugger korisnim za rješavanje bugova čine ga i pomagalom pri razbijanju softverske zaštite, tj. crackiranju programa koji nije besplatan u svrhe da se može koristiti neograničeno bez ikakvog plaćanja ili kupovanja. Korisni su i za testiranje performansi programa. Pojedini debuggeri rade samo sa specifičnim programskim jezikom dok drugi mogu raditi s više njih.
Većina popularnih debuggera daje samo jednostavno komandnolinijsko sučelje (command-line interface - CLI), često iz razloga da maksimiziraju portabilnost i minimaliziraju trošenje sistemskih resursa računala. Ipak, popravljanje grešaka u programu preko grafičkog sučelja (GUI) debuggera se često smatra jednostavnijim i produktivnijim.
Neki od poznatih debuggera su: