Kas yra tiesioginė prieiga prie atminties?

Tiesioginė prieiga prie atminties, kartais vadinama DMA, yra duomenų perdavimo iš laisvosios kreipties atminties į kitą kompiuterio dalį būdas neužimant centrinio procesoriaus. Ši galimybė yra įdiegta daugelyje šiuolaikinių kompiuterių sistemų. Tai leidžia kompiuteriui vienu metu atlikti kelias užduotis, todėl kompiuteris tampa greitesnis.

Kaip smulkaus verslo savininkas tvarko visas ataskaitas ir informaciją, patenkančią į jo biurą arba iš jos, taip ir kompiuterio centrinis procesorius turi apdoroti visą kompiuterio įvestį arba išvestį. Prieš tiesioginę prieigą prie atminties, duomenų atsisiuntimas arba įkėlimas užėmė visą centrinio procesoriaus dėmesį. Jis vienu metu galėjo atlikti tik vieną užduotį.

Kompiuteris su įjungta tiesiogine prieiga prie atminties yra tarsi smulkaus verslo savininkas su keliais padėjėjais. Užuot tvarkydamas visą informaciją tiesiogiai, centrinis procesorius gali perduoti užduotį tiesioginės atminties prieigos valdikliui. Tai pagrindinėje plokštėje įmontuotas įrenginys, kuris prižiūri tiesioginės prieigos prie atminties operacijas. Centrinis procesorius gali laisvai atlikti kitas užduotis, kol vyksta įkėlimas arba atsisiuntimas. Kai deleguota užduotis baigta, DMA valdiklis praneša centriniam procesoriui.

Kiekvienas kompiuterio prievadas turi bent vieną tiesioginės atminties prieigos kanalą, kurį galima priskirti per tą prievadą prijungtiems įrenginiams. Kad veiktų tinkamai, kiekvienam įrenginiui turi būti priskirtas skirtingas kanalas. Dauguma kortelių, kurias galima įdiegti kompiuteryje, pvz., garso, tinklo ar vaizdo plokštės, gali naudoti tiesioginę prieigą prie atminties, kad galėtų atlikti savo užduotis.

Kelių branduolių procesoriai taip pat gali naudoti tiesioginę prieigą prie atminties. Paprastai jie turi laikinosios atminties tipą, vadinamą vietine arba bloknoto atmintimi. Baigę atliekamą veiksmą, jie gali perkelti duomenis iš vietinės atminties į pagrindinę atmintį naudodami tiesioginės prieigos atminties kanalą.

Priklausomybės nuo DMA trūkumas yra tas, kad tai gali sukelti vadinamąjį talpyklos nuoseklumo praradimą. Iš esmės tai reiškia, kad duomenys visą laiką juda ir gali būti saugomi keliose laikinose vietose. Problema ta, kad kai kompiuterio prašoma pasiekti informaciją, jis gali nepasiekti naujausios informacijos. Kompiuterių gamintojai gali tai išspręsti naudodami specialią aparatinę įrangą arba programuodami operacinę sistemą, kad apsaugotų nuo talpyklos nuoseklumo praradimo.