Che cos’è l’ordinamento della memoria?

L’ordinamento della memoria, o riordino, è un processo attraverso il quale l’unità di elaborazione centrale (CPU) accetta le richieste di memoria del computer e le ordina secondo il modello più ottimizzato. Il processo cambia le richieste, spesso i processi vengono completati fuori servizio, ma utenti e programmatori non lo vedono. Questo di solito può essere fatto molto facilmente su un sistema con una singola CPU, ma un sistema con più CPU potrebbe riscontrare un problema al momento dell’ordine. Se questo processo non fosse utilizzato, i computer non sarebbero così efficienti nel completare le richieste degli utenti.

Ogni volta che qualcuno fa qualcosa su un computer, ad esempio sposta il mouse, apre un programma o modifica un’immagine, la CPU deve approvare l’utilizzo della memoria per l’attività. Queste richieste normalmente arrivano in modo lineare, ma raramente vengono elaborate in questo modo. Con l’ordinamento della memoria, le attività vengono elaborate nel miglior modo possibile per rendere il computer più veloce. Ad esempio, se la CPU può facilmente occuparsi del secondo processo prima del primo, utilizzerà la memoria per quel processo prima di passare ad altri.

Le richieste spesso vengono eseguite fuori ordine, il che potrebbe confondere utenti e programmatori. Allo stesso tempo, la CPU è programmata per sapere che l’ordinamento della memoria può confonderli, quindi esegue tutto in un modo che fa sembrare che i processi vengano completati in modo lineare, anche se non lo sono. Ciò rende più facile la comprensione per gli utenti e di solito impedisce ai programmatori di dover inserire codici eccessivi per garantire che la CPU funzioni in modo efficiente.

L’ordinamento della memoria normalmente può essere eseguito facilmente su un computer con una singola CPU, ma potrebbero esserci problemi con un computer che ha più CPU. Questo perché è più facile approvare e ordinare correttamente gli accessi alla memoria con una CPU, ma due o più CPU potrebbero vacillare quando si tenta di elaborare più attività. Se c’è una comunicazione adeguata tra le due o più CPU, questo problema viene solitamente mitigato.

Senza l’ordinamento della memoria, le attività potrebbero essere più difficili per il computer e il programmatore. Dal lato del computer, la CPU sarebbe in grado di soddisfare le richieste solo quando arrivavano, il che significa che l’intero processo rallenta e potrebbe far aspettare gli utenti. Per il programmatore, dovrebbe scrivere codice eccessivo per garantire che la CPU si occupi correttamente di tutte le attività, il che renderebbe la creazione del programma molto più lunga.