CCoW: optimització de la còpia sobre escriptura tenint en compte la localitat espacial de les càrregues de treball, part 4
Apr 03, 2024
3.3. Seguiment de l'accés a les pàgines precopiades
Se suposa que CCoW ha d'amortitzar la sobrecàrrega per a la gestió freqüent d'errors de la pàgina. No obstant això, copiar pàgines per endavant comporta un altre problema: el seguiment dels accessos a la pàgina després de la còpia.
Hi ha una forta connexió entre el processament d'errors i la memòria. Per a la majoria de la gent, els errors sovint es veuen com una cosa dolenta, però poden ser oportunitats per aprendre i créixer. Si gestionem correctament els errors, podem millorar la nostra memòria i ajudar-nos a comprendre millor i respondre a situacions similars.
Una manera de fer front als errors és reflexionar i analitzar. Quan ens equivoquem, hem de prendre el temps per reflexionar sobre com s'ha produït l'error i què podem fer per evitar que torni a passar un error similar. Mitjançant la reflexió, podem identificar les causes arrels dels problemes i desenvolupar contramesures per resoldre'ls. Aquest tipus d'anàlisi no es tracta només d'errors, ens pot ajudar a prendre millors decisions en altres situacions de la vida i ajudar-nos a millorar les nostres habilitats i habilitats.
Una altra manera de fer front als errors és permetre'ns acceptar-los i seguir endavant. No hem de deixar que els errors ens frenin o ens frustrin. En canvi, hauríem de veure'ls com a oportunitats de creixement, permetent-nos aprendre dels nostres errors i continuar millorant. Si podem acceptar els errors i afrontar-los amb una actitud positiva, podem construir una mentalitat forta i una confiança en nosaltres mateixos, que és molt important per mantenir una bona memòria.
Finalment, podem enfortir la nostra memòria compartint els nostres errors. Quan parlem als altres dels errors que hem comès, tendim a recordar aquests esdeveniments amb més profunditat. Això és perquè quan ho expliquem als altres, hem d'aclarir les coses i recordar tots els detalls de l'error. D'aquesta manera podrem entendre millor aquests errors i evitar que es tornin a produir.
En resum, hi ha una forta relació entre el processament d'errors i la memòria. Manejant correctament els errors, podem enfortir la nostra memòria, millorar les nostres habilitats i habilitats i esdevenir millors persones. Hem de considerar els errors com una oportunitat, enfrontar-nos activament a les dificultats i aprendre i créixer d'ells. Es pot veure que hem de millorar la memòria, i Cistanche deserticola pot millorar significativament la memòria perquè Cistanche deserticola és un material medicinal tradicional xinès que té molts efectes únics, un dels quals és millorar la memòria. L'eficàcia de Cistanche deserticola prové dels múltiples ingredients actius que conté, com l'àcid tànic, polisacàrids, glicòsids flavonoides, etc. Aquests ingredients poden promoure la salut del cervell a través de diverses vies.

Feu clic a Coneix la memòria a curt termini com millorar
En l'esquema original de còpia sobre escriptura, el gestor d'errors de pàgina captura la primera escriptura de cada pàgina.
Només es copia la pàgina defectuosa i el sistema pot fer un seguiment exacte de l'accés a cada pàgina mitjançant el gestor d'errors de la pàgina. D'altra banda, quan el sistema copia una regió sencera, totes les pàgines de la regió s'assignen al procés amb permís escrit.
Així, les escriptures posteriors a aquestes pàgines copiades poden tenir lloc sense activar el mecanisme de gestió d'errors de pàgina, de manera que el sistema no pot fer un seguiment dels accessos a les pàgines copiades. Això pot ser problemàtic quan el procés realitza bifurcacions repetidament. Suposem que una regió té una localitat espacial alta i que una època es defineix com el període entre dues bifurcacions.
La localitat alta es pot capturar comptant els errors de pàgina que es van produir a la regió. Aleshores, suposem que el procés crea un procés nou amb una forquilla. Quan s'inicia una nova època amb la bifurcació, el primer accés d'escriptura a una de les pàgines de la regió iniciarà CCoW, copiant totes les pàgines de la regió. Ara el procés té totes les pàgines amb permís d'escriptura i no es generen més errors de pàgina des de la regió fins al final de l'època.
Quan es torna a iniciar una nova època, es considera que la regió té una cobertura baixa a l'època, ja que la regió només té una pàgina de còpia en escriptura. Així, cada escriptura a la regió es processa mitjançant el mecanisme original de còpia sobre escriptura per pàgina, comprometent així l'oportunitat d'optimització del rendiment fins i tot si la regió té una localitat alta.
Tingueu en compte que es considera que la regió torna a tenir una localitat alta en la propera època, i el procés es repeteix per alternar la situació. Per resoldre aquest problema, necessitem un mecanisme per fer un seguiment de l'accés a la pàgina després de la còpia.
Aquest estudi proposa aprofitar el bit brut a l'entrada de la taula de pàgines (PTE). En general, les arquitectures modernes mantenen informació diversa al PTE per a cada pàgina, i el bit brut és un dels camps suportats per la majoria d'arquitectures.
Quan MMU processa un accés a la memòria d'escriptura, estableix automàticament el bit brut de la pàgina corresponent. Això, per contra, implica que quan s'estableix el bit brut d'una pàgina, la pàgina s'ha actualitzat amb accessos d'escriptura.
Partint d'aquesta idea, vam modificar el mecanisme de càlcul de la cobertura. Inicialment, totes les regions es consideren regions normals. Durant la bifurcació, la cobertura de les regions normals es calcula amb el nombre de còpies sobre escriptures mitjançant l'equació (1).

Mentre es gestiona l'error de pàgina per a una regió de localitat alta, totes les pàgines de la regió es copien amb el bit brut esborrat. A més, la regió està marcada com a regió precopiada. Durant la bifurcació, la cobertura de la regió copiada es calcula amb el nombre de pàgines brutes de la regió de la manera següent:
![]()
La cobertura calculada per a cada regió es porta a través de la bifurcació i s'utilitza com a mètrica per a la localitat espacial de la regió. Quan es produeix un error de pàgina d'escriptura en una regió, el sistema comprova la cobertura de la regió i pot copiar prèviament les pàgines de les regions de localitat alta.
La figura 2 il·lustra una situació en què la cobertura es calcula després de les precòpies. Suposem que es copien ambdues regions (ombrejats en vermell) i que les pàgines 0, 2, 3, 4 i 11 tenen el bit brut establert.
Per calcular la cobertura mentre processa la bifurcació, el sistema utilitza el bit brut en comptes del recompte de còpia en escriptura, ja que les regions es copien en l'època actual. Així, la regió 0 té una cobertura del 66%.
Mentre que la cobertura de la regió 1 és del 15%. Per gestionar l'error de pàgina de la pàgina 3, la regió 0 es torna a copiar, mentre que l'error de pàgina de la pàgina 9 es gestiona amb el mecanisme original. D'aquesta manera, podem evitar que les regions d'alta localitat es desfoquin.

3.4. Captació de la localitat
Com que el gestor d'errors de pàgina es troba al camí crític de rendiment del sistema operatiu, hauríem de minimitzar la sobrecàrrega per a la implementació de l'esquema proposat.
Bàsicament, CCoW requereix un mecanisme per calcular la cobertura, i la manera més senzilla d'implementar aquesta característica és fer un seguiment de les pàgines que desencadenen errors de pàgina amb un mapa de bits tal com vam descriure a la secció 3.2.
Mentre gestiona un error de pàgina, el sistema estableix el bit corresponent a la pàgina defectuosa. Durant la bifurcació, el sistema escaneja el mapa de bits per comptar el nombre de pàgines defectuoses per a cada regió i calcula la cobertura. El mapa de bits es reinicia després del càlcul.
Aquest enfocament és senzill però imposa limitacions d'espai i temps elevats. El sistema hauria de mantenir una entrada de mapa de bits d'un bit per a cada pàgina de 4 KB i inspeccionar tot el mapa de bits durant la bifurcació. Tenint en compte l'enorme empremta de memòria de les aplicacions intensives en memòria, aquestes operacions suposaran una gran sobrecàrrega durant la bifurcació, compensant el benefici del rendiment de CCoW. Optimitzem aquesta implementació aprofitant les característiques de l'error de pàgina.
Si es produeix un error de pàgina des d'una pàgina, la pàgina no incorre en errors de pàgina addicionals fins que el procés crea un procés nou. Així, cada pàgina pot provocar un error d'una pàgina com a màxim, i per a una regió amb n pàgines, els errors de pàgina només es poden produir fins a n vegades. Això implica que comptar el nombre d'errors de pàgina per regió és suficient per calcular la cobertura, en lloc de mantenir el mapa de bits per a pàgines individuals.
Així, substituïm el mapa de bits amb els comptadors d'errors. Cada regió s'associa amb un parell de comptadors de la manera següent: un per comptar els errors de pàgina en l'última època i un altre per comptar els errors de pàgina en l'època actual.
El primer s'utilitza per determinar la localitat espacial de les regions, mentre que el segon s'utilitza per controlar la localitat espacial de l'època actual. Durant la bifurcació, el comptador d'errors actual es copia al comptador d'errors anterior.
Si es copia una regió en aquesta època, el nombre de pàgines brutes de la regió s'escriu al comptador d'errors anterior. Els comptadors s'omplen mentre es crea una nova àrea de memòria virtual (VMA) i es recuperen quan el seu VMA corresponent es redueix o no s'assigna. Aquesta optimització redueix la sobrecàrrega d'espai de CCoW d'un bit per pàgina a uns quants bytes per regió.

For more information:1950477648nn@gmail.com






