Stack cache: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m WPCleaner v2.01 - Fixed using Wikipedia:Check Wikipedia (References ripetuto - Wikilink scritto come un link esterno) |
m Bot: passaggio degli url da HTTP a HTTPS |
||
Riga 5:
Per velocizzare le operazioni Call/Return (chiamata e ritorno), alcuni processori fanno uso dei [[Register window|Register windows]] ([[sPARC]]<ref>Understanding stacks and registers in the Sparc architecture(s) - {{collegamento interrotto|http://icps.u-strasbg.fr/people/loechner/public_html/enseignement/SPARC/sparcstack.html.pdf|date=marzo 2018|bot=InternetArchiveBot}}</ref><ref>The SPARC Architecture - Jingke Li - http://web.cecs.pdx.edu/~herb/cs322s10/Sparc_Architecture.pdf</ref><ref>The SPARC Architecture Manual Version 8 - http://www.gaisler.com/doc/sparcv8.pdf - http://web.cecs.pdx.edu/~herb/cs322s10/Sparc_Architecture.pdf - http://web.cecs.pdx.edu/~herb/cs322s10/Sparc_Architecture.pdf</ref>, [[AMD 29000]], e [[Intel i960]]). In questi sistemi un set di registri (windows) sono riservati per ciascuna Call (da 2 a 32 windows). In questi sistemi non è quindi necessario alcun salvataggio, perciò le operazioni di Call e Return sono molto veloci, cambia solo la selezione del gruppo di registri.
[[File:Stack.svg|destra|miniatura|Stack]]
Una soluzione alternativa è la Stack Cache<ref>Stack data cache having a stack management hardware with internal and external stack pointers and buffers for handling underflow and overflow stack -
La stack cache previene che i dati di stack siano rimpiazzati dai dati normali. In questo modo l'hit-rate della stack cache può essere vicino al 100%<ref name="Stack Cache" /><ref name=":0">Implementing a Stack Cache - http://www.owlnet.rice.edu/~elec525/projects/SCpresentation.pdf</ref>. Un'ottimizzazione può essere ottenuta usando una cache L1 Set Associative e riservando uno dei set della cache per i dati di stack ([[Memoria cache#en:Honeywell|Honeywell]] [[Memoria cache#en:Groupe Bull|Bull]] Systems<ref name="Pseudo virtual add.">Cache memory having pseudo virtual addressing - Honeywell Bull Italia - https://www.google.com/patents/US5165028</ref>). Questo set non viene riservato esclusivamente per questi dati, ma l'area variabile libera sopra lo stack pointer, non usata dai dati di stack, può essere usata per i dati normali. Questo significa che questo Set è usato per i dati normali nel consueto modo ma con la sola restrizione che i dati normali non possono rimpiazzare i dati di stack.
|