Windows poco efficiente con le CPU multi-core
Riscrivere Windows da zero per sfruttare i processori multi-core. Secondo Dave Probert (Kernel Architect di Microsoft), l’approccio attuale per sfruttare più unità di calcolo è “complicato e di scarso successo”. Probert sta lavorando alla prossima versione di Windows, ma sembra che la sua “visione” non guiderà lo sviluppo di Windows 8, in quanto molti altri sviluppatori non concordano con la sua tesi.
La gente, oggi, vuole che il sistema operativo sia reattivo. Grazie alla programmazione si può far capire al software come gestire le priorità . Tuttavia all’aumento dei core nelle CPU non corrisponde un rapido supporto da parte del software. I programmi non li sfruttano in maniera abbastanza efficiente.
Per amministrare i più core gli sviluppatori devono usare tecniche di programmazione parallele, che sono difficili da padroneggiare – e non sono molto usate al di fuori dei programmi specializzati. Il miglior modo di gestire i core sarebbe quello di ripensare gran parte del sistema operativo. “La domanda è non come programmare in modo parallelo, ma cosa fare con tutti questi transistor?”, ha affermato Probert.
Il Kernel Architect pensa che l’OS del futuro dovrebbe funzionare più o meno come un hypervisor, cioè come un layer tra una macchina virtuale e l’hardware. I programmi, o runtime come li ha definiti Probert, dovrebbero “assumersi molte delle funzioni per la gestione delle risorse. Il sistema operativo potrebbe assegnare a un’applicazione una CPU e della memoria, e il programma stesso, usando metadati generati dal compilatore, saprebbe come usare queste risorse al meglio”.
Probert ha ammesso che questo approccio potrebbe essere difficile da testare, ma il lavoro potrebbe rivelarsi utile. “In questo modello c’è molta più flessibilità “, conclude lo sviluppatore.
A ogni modo sembra che la gestione del numero crescente dei core sia un tema
su cui non si è ancora presa una decisione. Tra i diversi progetti c’è Barrelfish, su cui Microsoft sta lavorando avvalendosi di un primo sample di ipotetica CPU a 48 core di Intel (Intel, 48 core per raggiungere nuove frontiere). Tuttavia, come detto da Probert, in casa Microsoft ci sono ancora tesi differenti,che non fanno altro che ritardare una svolta che ormai si fa sempre più pressante.