Quando una memoria richieste dal programma di sistema , il sistema alloca prime file disponibili di memoria e li riserva finché il programma termina . Se più di un programma viene eseguito contemporaneamente , il sistema assegna semplicemente il successivo blocco disponibile , e continua a farlo fino a che non esaurisce la memoria disponibile . Quando alcuni programmi terminano , possono lasciare vuoti di memoria disponibile , ma queste aree potrebbero non essere utilizzabili . Se un programma richiede , per esempio , 100 byte di memoria , ma il primo divario disponibile è di soli 50 byte, allora quello spazio rimarrà inutilizzato ed il sistema sarà assegnato il primo blocco disponibile di 100 byte contigui invece di cercare di frammento richiesta del programma .
allocazione memoria
Mentre il sistema di misura della memoria in byte , non si può attribuire ad ogni singolo byte di memoria . Causa di memoria - indirizzamento protocolli , il sistema può iniziare solo allocazione di memoria a indirizzi specifici, generalmente multipli di 4, 8 , o 16 byte . Per esempio , se i protocolli di indirizzamento richiedono multipli di 16 byte , una richiesta per 25 byte di memoria potrebbe effettivamente prendere 32 byte . Il programma avrebbe preso i suoi 25 byte di memoria , ma lo spazio a partire dalla fine del programma fino al byte 32 ° rimarrebbe utilizzabile dal sistema . Inoltre, alcuni sistemi di programmi di concessione di un buffer aggiuntivo di memoria per tenere conto di condizioni variabili , e questa memoria possono rimanere riservati , anche se non utilizzato .
Frammentazione
questi piccoli blocchi frammentate di memoria sono la causa della frammentazione interna . Dal momento che i byte persi sono di solito relativamente piccolo rispetto ai requisiti di memoria dei programmi coinvolti , la frammentazione interna porta raramente a gravi problemi di sistema , tranne nei casi in cui la quantità di RAM installata è appena sufficiente per le esigenze del sistema , oppure quando il fallimento RAM riduce improvvisamente la quantità di memoria in un sistema altrimenti sano .
dati sulla frammentazione
I file system
può anche soffrire il proprio tipo di frammentazione interna . Al fine di accelerare l'accesso al disco , i file system utilizzano un sistema di assegnazione simile, riservando blocchi di byte chiamati cluster . Il system NTFS di Windows utilizza , per esempio, ha dimensioni di cluster regolabili che vanno da 512 a 4.096 byte . Qualsiasi file più piccolo di questo importo , oppure un file che sanguina sopra in un altro cluster inferiore alla dimensione totale , farà sì che il sistema di navigazione di spazio residuo in sede di assegnazione di più dati .
hardware © www.354353.com