Kas yra talpyklos suderinamumas?

Talpyklos suderinamumas yra natūrali problema, kuri atsiranda, kai sistemos duomenų rinkinį pasiekia ir keičia keli agentai. Pagrindinė kompiuterių architektūros sritis, kurioje tai tampa problema, yra kelių procesorių kompiuteriai. Kiekvienas kelių procesorių kompiuterio procesorius turi savo talpyklą, kuri įkelia ir saugo informaciją iš laisvosios kreipties atminties (RAM). Kai du procesoriai pasiekia tą pačią atminties sritį, jei nebus imtasi tam tikrų atsargumo priemonių, talpyklos nuoseklumas būtų prarastas.

Be talpyklos darnos kelių procesorių sistema negalėtų veikti. Yra keletas būdų, kaip išspręsti šią problemą ir išvengti galimų problemų. Katalogu pagrįsta darna, šnipinėjimas ir šnipinėjimas yra trys metodai, naudojami siekiant išvengti talpyklos darnos praradimo.

Katalogu pagrįsta darna veikia kaip filtras, užtikrinantis darną. Duomenys dedami į atminties dalį, kuri yra prieinama visiems procesoriams. Kai pakeičiama toje atminties srityje saugoma informacija, sistema arba atnaujins talpyklas, arba panaikins jas negaliojančias.

Snooping reikalauja, kad procesorius stebėtų visas prieigas prie atminties vietų, kurios buvo talpykloje. Tai leidžia procesoriui žinoti, kada įvyko rašymo operacija. Žinodamas, kada įvyksta rašymo operacija, procesorius gali atnaujinti talpyklą.

Snarfavimas yra gana panašus į šnipinėjimą. Snarfing apima ne tik prieigos prie atminties vietų, kurios buvo talpykloje, stebėjimą, bet ir tikrosios informacijos, saugomos atmintyje, stebėjimą. Įrašant atmintį, talpyklą galima atnaujinti nauja informacija.

Katalogais pagrįstos darnos sistemos turi gana didelį delsą, todėl apdorojimas lėtesnis. Mažesni dažnių juostos pločio reikalavimai leidžia katalogais pagrįstoms nuoseklumo sistemoms būti praktiškoms didelės apimties talpyklos suderinamumo taikymuose. Kuo daugiau procesorių naudoja sistema, tuo daugiau pranašumų ji gali turėti naudojant katalogais pagrįstą darnos sistemą.
Šnipinėjimas yra daug greitesnis būdas. Šis metodas reikalauja daugiau pralaidumo nei naudojant katalogu pagrįstą metodą. Šis metodas gali būti efektyviai naudojamas sistemose, kuriose yra palyginti nedaug procesorių.
Snarfing paprastai nenaudojamas kaip talpyklos darnos palaikymo metodas. Taip yra visų pirma todėl, kad snarfing reikalauja daugiau išteklių, palyginti su šnipinėjimo ir katalogais pagrįstais metodais. Kad snarfing sistema veiktų, ji turi sekti ir atminties adresus, ir tose atminties srityse saugomus duomenis. Dėl pralaidumo ir apdorojimo, kurį sunaudoja šis metodas, jis nepageidautinas daugeliui talpyklos nuoseklumo palaikymo programų.