Domanda

  

FreeBSD implementa da colorare con   code di paging. Le code sono disposti   in base alle dimensioni della   L1 e L2 cache del processore; e quando   una nuova pagina deve essere allocata,   FreeBSD cerca di ottenere quello che è   in modo ottimale allineato per la cache.

Qualcuno può spiegare le linee di cui sopra, quello che è il concetto di code di paginazione?

Grazie!

È stato utile?

Soluzione

I sistemi operativi devono gestire le dimensioni delle cache CPU per ridurre di cache miss ( spiega anche colorare). Più semplicemente, i dati memorizzati nella cache (in unità chiamate pagine) devono essere attentamente selezionati sulla base di quanto spesso viene utilizzato, se è suscettibile di essere utilizzato di nuovo presto, e come 'costoso' sarebbe di ri-recuperare la dati dalla memoria principale / HD / SomeOtherDevice. Queste scelte sono importanti nelle applicazioni in cui la larghezza di banda della memoria è un collo di bottiglia.

Questo tipo di cose è spesso fatto con una coda di priorità che implementa la strategia di sostituzione di paging scelta dagli sviluppatori del sistema operativo. Queste code determinano quali pagine vengono sostituiti quando nuovi dati vengono spostati nella cache, e dove i dati saranno collocati nella cache. Si consiglia di consultare la documentazione di FreeBSD se si vuole scoprire cosa è in uso la strategia.

Per l'allineamento, i dati nella cache (o nella memoria principale) deve essere posizionato iniziato a limiti specifici al fine di accedere in modo efficiente (cioè da spostare in un registro CPU). Se i dati non è allineato, è necessaria calcolo in più per allinearlo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top