Crash [1] [2] (de asemenea accident [1] [2] , accident [3] [2] , eșec fatal [ 2] , accident , crash , crash ) este un program de blocare sau un sistem de operare atunci când nu mai funcționează normal .
Adesea, programul se blochează până când este generat un raport de eroare cu detaliile eșecului.
Dacă programul este o parte importantă a sistemului de operare, întregul sistem se poate bloca sau se poate bloca ca urmare a unei panică a nucleului sau a unei erori fatale de sistem.
Majoritatea erorilor sunt rezultatul executării instrucțiunilor invalide ale mașinii . De exemplu, când contorul de program este setat la o adresă greșită sau ca urmare a unei depășiri a memoriei tampon , o parte din datele programului sunt suprascrise din cauza unei erori . Acest lucru are ca rezultat accesul la valori ale datelor aleatorii din memorie care nu se mai potrivesc cu cererea inițială și are loc gestionarea excepțiilor în procesor .
Bug-ul original al software-ului care a declanșat acest lanț de evenimente este în general considerat a fi cauza accidentului care este descoperit în timpul procesului de depanare . Acest lucru este adesea departe de a fi evident, deoarece eroarea originală poate fi departe de un eveniment de blocare și pare a fi un cod sursă perfect valid .
O aplicație se termină de obicei atunci când efectuează o operațiune care nu este permisă de sistemul de operare. Sistemul de operare aruncă apoi o excepție sau un semnal în aplicație .
Aplicațiile Unix răspund în mod tradițional la un semnal cu o descărcare de memorie . Majoritatea aplicațiilor GUI Windows și Unix răspund prin afișarea unei casete de dialog cu opțiunea de a atașa un depanator dacă este instalat unul.
Unele aplicații încearcă să revină după o eroare și continuă în loc să se închidă.
Erorile comune care cauzează blocarea aplicațiilor includ:
O aplicație care rulează pe un server web poate eșua și site-ul poate să nu funcționeze sau să afișeze un mesaj de eroare.
De exemplu, dacă un site care utilizează o bază de date SQL (cum ar fi MySQL ) folosește un script (cum ar fi PHP ) și acel server se blochează, atunci PHP va genera o eroare de conexiune.