Persistența - viață-prog

Persistența este abilitatea de a programa statului să existe mai mult decât procesul care a creat-o. Fără această capacitate, statul poate exista doar în memorie și se pierde atunci când memoria este oprit, de exemplu, atunci când opriți calculatorul.

Acest lucru se realizează prin stocarea stării dispozitivului ca date de stocare pe termen lung, cum ar fi un hard disk sau memorie flash.

persistența Ortogonale sau transparent

Persistența numit „ortogonale“ sau „clar“ în cazul în care este pus în aplicare ca o proprietate intrinsecă a mediului de execuție a programului. Mediu pentru persistența ortogonală nu necesită programe de acțiune speciale, desfășurate în ea, pentru a menține sau de a restabili starea lor.

necesită persistența ortogonală a scrie și să citească datele de pe dispozitivul de stocare utilizând instrucțiuni speciale în program, care este folosit pentru a descrie magazin auxiliar. La finalizarea programului stochează datele.

Principalele sale avantaje sunt persistența ortogonale - program de predispusă la erori mai simple și mai puțin.

Modalități de punere în aplicare a persistenței

imagini de sistem

Dezavantaje. Modificări de stat aduse sistemului de la ultima salvare a imaginii sunt pierdute în cazul unei defecțiuni sau deconectare a sistemului. Salvarea imaginii după fiecare schimbare mică poate deveni prea chasoemnim pentru majoritatea sistemelor, astfel încât resentimentul nu este utilizată ca o metodă de persistență simplă pentru sistemele critice.

Utilizarea Jurnale - a doua modalitate de a pune în aplicare o persistență simplă. Logging - procesul de salvare evenimente în jurnal înainte de a utiliza sistemul. Aceste jurnale sunt numite reviste.

La începutul unei reviste pentru a citi, și fiecare acțiune este reaplicat în sistem, evitându-se astfel pierderea de date în cazul unei defecțiuni sau întrerupere.

Buștenii sisteme de fișiere jurnalizarea și baze de date, în cazul în care acestea sunt numite, de asemenea, jurnalele de tranzacții, sau jurnalele de acțiuni repetate.

Dezavantaje. Busteni sunt adesea combinate cu alte metode de persistență că toată istoria (potențial mare) a tuturor evenimentelor de sistem nu au nevoie de reaplicare la pornirea sistemului.

sistem de prevalență

Sistemul Prevalentnist (prevalenta System) - o tehnica care combina imaginile de sistem și jurnalele de tranzacții, discutate mai sus, pentru a obține în jurul valorii de limitele lor.

Dezavantaje: Prevalența sistemului ar trebui să aibă suficientă memorie pentru a se potrivi întregul stat de sistem.

Record „murdar“

„Murdar“ este un record în înregistrarea la un dispozitiv extern numai acele părți ale stării sistemului, care au fost modificate ( „murdar“), după ultima sa intrare. De exemplu, complex program de editare de documente pentru a utiliza intrare „murdar“ pentru a păstra numai acele părți ale documentului s-au schimbat de la ultima salvare.

Neajunsuri: Această tehnică necesită interceptarea modificărilor de stat în cadrul programului. Acest lucru este realizat prin netransparent, ceea ce necesită un API apeluri speciale din arhiva sau într-un mod transparent, cu transformarea automată a programului. Ca urmare, codul este mai lent decât codul nativ, și este mai dificil de depanare.

nivelurile de persistență

Orice nivel de software (strat de software), care ajută programul pentru a salva de stat, în general, numit nivelul de persistență. Cele mai multe dintre aceste niveluri nu ajung la persistența persistență în mod direct, și de a folosi baza de date principală.

SGBD utilizează o combinație de înregistrări „murdare“ și jurnal de tranzacții discutate mai sus. Ele oferă nu numai persistență, ci și alte servicii, cum ar fi interogări, de audit și de control al accesului.

Sisteme de operare persistente

OS persistente - sistem de operare, păstrând statutul său chiar și după un eșec sau neașteptat de închidere. Calculatorul rămâne în aceeași stare, chiar dacă acesta este oprit ca un televizor sau un dispozitiv simplu. Pentru sistemele de operare care oferă această capacitate sunt:

  • Capros, EROS de prelucrare
  • Coyotos, un descendent al lui EROS
  • EROS, un KeyKOS descendent
  • KeyKOS
  • Multics cu stocare cu un singur nivel de magazin cu un singur nivel
  • fantomă