Memoria mapa

Memoria mapa, informatikaren zientzian, datu egitura bat da. Normalean memorian kokatuta dago eta  memoriaren kokapena adierazten du. "Memoria mapa" kontzeptuak esanahi desberdinak izan ditzake testuinguruaren arabera.

 Memoria asoziatiboa erabiltzen duen cache antolaketa azkarra eta malgua. Memoria asoziatiboak, memoria hitzaren  helbidea eta  edukia gordetzen ditu.[azalpen gehiago behar dira]
 Abiarazte-prozesuan, firmwaretik memoria mapa bat bidaltzen da sistema eragilearen nukleoak memoriaren diseinuaren berri izateko. Memoria osoaren tamainari buruzko informazioa, erreserbatutako eskualdeen informazioa eta arkitekturari buruzko beste xehetasun batzuen informazioa ditu.
 Memoria birtualeko ezarpenetan eta memoria kudeatzeko unitateetan, memoria mapa bat, orri-taula edo hardware erregistroei dagokie. Prozesu jakin baten biltegiratzen dute, memoriaren diseinu birtualaren eta espazio hori memoria fisikoaren helbideekin erlazionatzeko moduaren arteko mapatzea. 
 Era natiboko "debugger" programetan, memoria mapa bat, kargatutako artxibo exekutagarri edo/eta liburutegikoen eta memoria eskualdeen arteko mapatzeari dagokio. Memoria mapa hauek, memoria-helbideak ebazteko ( "pointer" funtzioa esaterako) sinbolo errealetara.

 PCaren BIOSaren Memoria mapa 
BIOSa  IBMaren PCarentzat (Personal Computer) eta bateragarrientzako, errutina multzo bat eskaintzen du, sistema eragileak edo aplikazioek memoriaren diseinua lortzeko erabil dezaketeena. Hurrengo hauek dira eskuragarri dauden errutinetako batzuk:

BIOS: INT 0x15, AX = 0xE801: 

BIOSa eteteko dei hau memoriaren tamaina lortzeko erabiltzen da  64 MB baino gehiagoko konfigurazioetan. 1994ko abuztuaren 23tik aurrera BIOS AMIrekin bateragarria da. Deitzen duen pertsonak AX 0xE801 ezartzen du eta 0x15 exekutatzen du. Erroreren bat gertatzen bada,  errutina CF (Carry Flag) set 1ekin itzultzen da. Errorerik ez badago, CFa 0 batekin itzultzen da, eta erregistroen egoera honela deskribatzen da:  
ERREGISTROABalorearen deskribapenaEAXMemoria handipena 1M eta 16M artean, Kbtan. (Balio maximoa: 0x3C00 = 15360KB).EBX16 Mtik gorako 64K-ko blokeen zenbaketa.ECXKonfiguratutako memoria 1Mtik 16Mra, Kbtan.EDX64Ktan konfiguratutako blokeen kontua 16Mren gainetik
BIOS: INT 0x15, AX = 0xE820 - SISTEMARE MEMORIA MAPA ESKURATU: 

Input:
ERREGISTROABalorearen deskribapenaEAX0x0000E820EBXJarraipen balorea edo 0x0 maparen hasieran hasteko.ECXBufferaren tamaina erantzunerako (20 byte).EDX0x534D4150 (ASCII  'SMAP'-rentzako)ES: DIsegmentua: buferraren desplazamenduaren kokapena emaitzarako.
SMAP buffer estruktura:
CompensarTamainaBalorearen deskribapena0QWORD (8 byte)EBXak erreferentzia egiten dion memoria maparen eskualdearen oinarrizko helbidea.8QWORD (8 byte)Luzeera bytetan.16DWORD (4 byte)Helbide tarte mota.
Erabilera: sistema eragileak memorian  SMAP buffer bat esleitu behar du (20 byteko buffera).  Ondoren erregistroak konfiguratu behar dira "Input" taulan ageri den moduan. Lehenengo deian, EBXak 0a esleitu behar du. Hurrengo urratsa INT 0x15 deitzea da. Errorerik ez badago, eten-deia CF ezabatuta itzultzen da eta buffera memoria-maparen lehen eskualdea adierazten duten datuekin betetzen da. BIOSak EBXa eguneratzen du, orduan, OSak berriro errutina deitzen du hurrengo eskualdea bufferera itzultzeko. BIOSek zeroan jartzen du EBX.

 Ikus, gainera 
 BIOS

 Kanpo estekak 
 Mark Russinovich-ren RAMMap

Kategoria:Ordenagailuen memoriak