Преглед садржаја:
Дефиниција - Шта значи заједничка меморија?
Заједничка меморија за софтвер је врста меморије коју могу делити више апликација или процеса са намером да пруже комуникацију међу апликацијама или избегну сувишне копије података. Ово је ефикасно средство за размену или преношење података, јер уклања потребу за употребом других процеса као што су улаз / излаз (У / И). Једна апликација спрема податке у заједничку меморију, док друга апликација може их користити када их пронађе.
У контексту процесора, дељена меморија је део меморије са случајним приступом (РАМ) којој могу приступити сви процесори у мултипроцесорском систему.
Техопедија објашњава заједничку меморију
Заједничка меморија софтвера је начин на који различити програми комуницирају и преносе податке без веће брзине комуникацијских процеса. Са дељеном меморијом, један програм уписује у заједничку меморију све податке које је потребан други програм да би примио.
На пример, ако програм А жели да даде списак програму Б, он спрема податке у заједничку меморију и обележава их семафором или другим системом за означавање који сигнализира да је спреман за читање у програму Б.
Када програм Б нађе датотеку, проверава семафор да ли је дозвољено додирнути ту датотеку. Ако је дозвољено, онда чини оно што треба да уради за датотеку, стави је у заједничку меморију или је ажурира. Такође ажурира семафор, тако да Програм А зна да би требало да преузме датотеку.
У погледу хардвера, конкретно микропроцесора, дељена меморија је велики блок РАМ-а који користи више процесора. Програмирање је лако јер сви процесори дијеле исти приказ података, што олакшава бржу комуникацију. Међутим, то се може закомпликовати јер процесори кеширају меморију за бржи приступ, што може довести до проблема попут кохеренције кеша.