I vantaggi e gli svantaggi della memoria di input e output isolata
I dispositivi di input e output (I/O) sono le parti di un sistema informatico, come la tastiera o il modem, che inviano o ricevono informazioni da e verso i processori del computer. Nei sistemi I/O mappati in memoria, i dispositivi I/O utilizzano parte della memoria del computer come indirizzo per la trasmissione dei messaggi. Nei computer con sistemi a memoria isolata, I/O e memoria hanno indirizzi diversi.
I/O
I sistemi informatici possono mappare I/O a un indirizzo nei banchi di memoria perché il processo di messaggistica dei dispositivi I/O è simile allo scambio di dati con la memoria del computer. Lo stesso bus, il percorso elettronico per la trasmissione di informazioni da e verso i processori, serve per accedere sia alla memoria che ai dispositivi di input e output. Uno svantaggio della memoria isolata è che i sistemi di mappatura della memoria sono più semplici per il bus, poiché utilizza lo stesso insieme di indirizzi per le operazioni di I/O e di memoria.
Mappa della memoria
In un sistema mappato alla memoria, diventa difficile per il computer distinguere le operazioni di I/O da altre opzioni software che accedono alla memoria; i sistemi a memoria isolata non hanno questo problema. Le operazioni di I/O nei computer mappati in memoria utilizzano solo parte dell'indirizzo di memoria completo, per rendere la loro posizione più distintiva. I sistemi a memoria isolata sono più complessi perché, a differenza dei computer mappati in memoria, non possono utilizzare gli stessi sistemi di decodifica e controllo per dispositivi di memoria e I/O. Nei computer mappati in memoria, qualsiasi istruzione che porta i dati fuori dalla memoria funziona anche sui dispositivi di input e output.
Programmazione
In un computer con memoria isolata, la programmazione è più pulita:l'I/O ha un proprio indirizzo separato, quindi il computer può utilizzare gli indirizzi per identificare se è la memoria o l'I/O con cui un programma dovrebbe funzionare. Con la mappatura della memoria, tuttavia, qualsiasi istruzione che fa riferimento alla memoria può essere utilizzata anche come istruzione per il sistema I/O. Con la memoria isolata, i programmi richiedono l'aggiunta di istruzioni "In" e "Out" per estrarre o inviare dati alla memoria o agli indirizzi I/O.
Spazio di memoria
Quando un computer utilizza un sistema I/O mappato in memoria, parte dello spazio che il computer utilizza per la memoria viene dedicato agli indirizzi di input e output, lasciando meno spazio per l'effettiva archiviazione della memoria. Con la mappatura della memoria, gli indirizzi I/O devono essere scritti in modo che siano distinti dai banchi di memoria che li circondano; l'assegnazione di indirizzi I/O è più semplice nei sistemi a memoria isolata. Poiché i dispositivi I/O occupano meno spazio della memoria a un determinato indirizzo, è possibile che parte dello spazio di memoria all'indirizzo I/O venga inutilizzato e sprecato.