Tutta la memoria è sempre stata condivisa da tutti i programmi in anticipo, " Modalità Reale " sistemi operativi come DOS . Qualsiasi programma in grado di leggere o scrivere la memoria di qualsiasi altro programma in qualsiasi momento, senza restrizioni . Autori del DOS TSR -così chiamati " Terminate and Stay Resident " programmi usati questa funzione in molti modi intelligenti per simulare il multitasking ed estendere la funzionalità di altri programmi senza l'accesso al codice sorgente originale . Questa caratteristica ha permesso anche ai virus di propagarsi con estrema facilità , ha offerto programmi di alcuna sicurezza contro il controllo dei propri dati da parte di altri programmi , e ha reso facile il crash l'intero sistema attraverso un piccolo errore di programmazione che accidentalmente sovrascritto la memoria di alcuni altri processi . < Br ingegneri >
modalità protetta
di Intel hanno riconosciuto i problemi della sicurezza e della stabilità di memoria condivisa per tutto il sistema , quindi hanno sviluppato " modalità protetta ", la cui prima comparsa su 80.286 chips. Modalità Protetta introduce il concetto di "anelli ", o livelli di privilegio . Anello 0 processi, destinati al kernel del sistema operativo , in grado di leggere e scrivere la memoria . Anello 3 processi , destinati a programmi ordinari , vengono arrestati dalla lettura e la scrittura della reciproca memoria dall'hardware . Tentare di farlo i risultati in un " errore di segmentazione " errore e di solito termina il programma incriminato .
Memoria
modalità condivisa Moderna Protetta impedito molti dei problemi causato da systemwide memoria condivisa in modalità reale , ma è ancora a volte desiderabile per un programma per poter leggere e scrivere la memoria che è condiviso con qualche altro programma o dispositivo. I sistemi operativi come Linux, quindi , aggiunto il supporto per la memoria condivisa in modo esplicito . Programmi e dispositivi possono scegliere di condividere la memoria con un altro, soggetto ad alcune restrizioni . Thread di esecuzione all'interno di uno parti del programma il loro memoria per impostazione predefinita.
Parallel Computing
Molti computer contengono più di un core della CPU . Programmi stessi possono dividere in molteplici " fili" di esecuzione , ciascuno dei quali può eseguire , allo stesso tempo , per accelerare le operazioni complessive richieste di alcuni dati. Hanno spesso bisogno di operare sugli stessi dati contemporaneamente o comunicare il loro stato ad un altro, e la memoria condivisa è un modo popolare per fare questo .
Librerie dinamiche
Comunemente librerie dinamiche utilizzate come libc sono tipicamente caricate da molti programmi diversi . Poiché il codice oggetto in queste librerie è solitamente usato in una sola lettura modo da programmi , significativi risparmi di memoria possono essere realizzati con memoria condivisa . La libreria dinamica può essere caricato solo una volta dal sistema operativo e condiviso tra un qualsiasi numero di programmi , diminuendo l'utilizzo complessivo della memoria .
sistemi © www.354353.com