Tipicamente si ha frammentazione nell'implementazione della paginazione e della segmentazione. La paginazione si dice che causa frammentazione interna in quanto lo spazio inutilizzato si trova all'interno di una pagina. Nel secondo caso si ha frammentazione esterna perché lo spazio sprecato è al di fuori dei segmenti. In tale caso si può risolvere, e recuperare lo spazio perso, eseguendo periodicamente un'operazione di compattamento, in modo da avere un unico "grande" blocco di byte disponibili. Per quanto riguarda la paginazione purtroppo non c'è modo di evitare la frammentazione interna e si avrà mediamente uno spreco di memoria .
FRAMMENTAZIONE ESTERNA
Un tipo di frammentazione è la frammentazione esterna. Questo problema si verifica quando il primo blocco libero di memoria non è sufficiente per essere utilizzato il programma successivo.
FRAMMENTAZIONE INTERNA
Un altro tipo di frammentazione è frammentazione interna. Frammentazione interna deriva dal fatto che, mentre la memoria è in byte, la più piccola unità disponibile è generalmente maggiore di quello dovuto affrontare norme di memoria.
quindi:
frammentazione esterna = memoria disponibile, ma divisa in blocchi troppo piccoli (e sparsi) per poterci mettere un processo
frammentazione interna = memoria "sprecata" all'interno dei blocchi in cui c'e' un processo