Ho riletto il capitolone sulla memoria virtuale nata circa negli anni 60, per di piu usa anche la parola "impaginazione" e dunque il mio Italiano è dopotutto in linea con gli Italiani. (anche se la tecnica si chiama paginazione un segmento un un indirizzo può essere impaginato )
La tecnica descritta da migliorabile ovvero l'impaginazione dei segmenti è stata adottata dai MULTICS tra il 60 e il 70.
Nel 286 era gia presente la memoria virtuale ma è stata migliorata nel 386.
Il 286 aveva solo la segmentazione mentre nel 386 è stata introdotta anche la paginazione, con la possibilità di disabilitare o meno tale tecnica, in piu permetteva come il multics di impaginare i segmenti.
Un sistema operativo può dunque scegliere come gestire la memoria.
Unix scelse il metodo piu semplice della paginazione per avere miglior porting, mentre OS/2 lavorando solo su x86 scelse la segmentazione.
Quindi Unix ha 3 segmenti principali CODICE,DATI,STACK, se la macchina possiede la paginazione allora tutti gli indirizzi possono essere impaginati.
OS/2 usa la segmentazione ed ogni segmento può avere determinate grandezze, OS/2 non usa l'impaginazione nonostante ci fosse sul 386.
Ci sono poi 30/40 pagine che parlano di tutto il meccanismo di come viene gestita dai due sistemi operativi e altre cose carine.
Deduco che i chip odierni espongano entrambe le tecniche ma sia poi il s.o. a scegliere quale utilizzare, penso che linux essendo UNIX like utilizzi tuttora la paginazione mentre su Windows non saprei ma dubito che si sia discostata dal metodo che aveva utilizzato da anni.
Esempio Windows 10 vuole implementare dei protocolli open-source
Windows sta iniziando con l'open-source e lo sta facendo alla grande rilasciando il nuovo compilatore c# proprio open! e che dire è un compilatore fantastico e per di piu semplice da estendere, un capolavoro come sempre.