M
Sommario:
Sicuramente molti di voi avranno sentito parlare di Midori, che sarebbe il passo successivo per Windows. Un nuovo sistema operativo scritto da zero, con un nuovo kernel e scritto in un linguaggio moderno. Così moderno che non esiste ancora come tale.
Il linguaggio, nome in codice M, è basato su C ed è specificamente progettato per la programmazione di sistemi operativi, in grado di raggiungere il livello più basso ma senza perdere le utili astrazioni necessarie per creare programmi più comuni, come un'applicazione utente.
In un articolo sul suo blog, Joe Duffy, uno degli sviluppatori di Midori, ha condiviso dettagli molto interessanti su questo futuro linguaggio. L'idea principale del progetto è creare un linguaggio con type-safe (type-safety) come C, ma c con ottime prestazioni , come C++.
Gran parte dello sforzo prestazionale va a modificare due aree di C: il Garbage Collector e il sistema di digitazione A colpo d'occhio , il C Garbage Collector per un programma ogni X volta, cerca oggetti che non sono più in uso (ad esempio, il tuo browser ha salvato diverse immagini nella RAM ma non ne ha più bisogno) e libera la loro memoria. Per gli sviluppatori è un sistema che libera molta complessità quando si tratta di gestire la memoria, ma come puoi immaginare è più lento. M sarebbe più intelligente in questo senso, prendendo in prestito diverse idee dal C++ per comprendere meglio il ciclo di vita degli oggetti (quando iniziano a essere utilizzati e quando non sono più necessari) e quindi essere più efficiente quando si tratta di allocare e liberare memoria senza che il netturbino debba entrare in gioco.
D&39; altra parte, le modifiche al sistema di digitazione cercano di affrontare uno dei problemi che hanno attualmente la maggior parte delle lingue antiche (leggi: progettate prima del 2005), il parallelismo In questo momento, i computer non crescono in altezza (velocità del processore) ma in larghezza, con più core in parallelo. Creare programmi che facciano buon uso di tale elaborazione parallela non è facile e ci sono molti dettagli sottili, specialmente quando si condividono dati tra più processi o thread."
M porterebbe concetti dai linguaggi di programmazione funzionale, principalmente l'immutabilità degli oggetti e la gestione degli effetti collaterali del metodo, che renderebbe più facile per i programmatori e il compilatore creare più thread per sfrutta i core multipli dei computer e quindi migliora notevolmente le prestazioni.
Inoltre, M introdurrà anche un nuovo sistema di gestione degli errori: veloce, facile da usare, efficiente, che fa uso di contratti di codice per limitare il comportamento del programma a percorsi validi e facile da capire in modo che il il compilatore può eseguire ottimizzazioni.Parleremmo quindi di un linguaggio che facilita la creazione di programmi più sicuri e robusti, cosa molto importante se vogliamo usarlo per un sistema operativo.
Basta con il gergo tecnico: cosa significa?
Dopo essermi immerso un po' nel mondo dei linguaggi di programmazione, cosa significa?
Prima di tutto, Microsoft sembra prendere molto sul serio la fase successiva di Windows. Mary Jo Foley afferma che Midori è passata dall'essere solo un progetto di ricerca a passare sotto l'ala protettrice di Terry Myerson, nel gruppo Unified Operating System. M e Midori non sono solo un esperimento, ma la via da seguire per Microsoft.
Ha senso preparare un' altra finestra? Certo. Come qualsiasi altro programma, un sistema operativo ha una durata limitata. Il mondo è molto diverso ora da quando è stato progettato Windows, e non importa quanto sia flessibile il sistema, così tanti cambiamenti nel corso degli anni per adattarlo a nuovi scenari finiscono per farsi sentire e inizia ad essere più redditizio ricominciare da zero ( qualcosa che piace molto a noi informatici).
Certo, Midori non ci sarà a breve o medio termine. Ma quando sarà finito (ammesso che sia mai stato fatto, il che non è nemmeno certo) sarà un sistema che, essendo parallelo e incentrato sul cloud fin dall'inizio, metterà Microsoft al capo mondiale dei sistemi operativi, almeno a livello tecnico e di capacità.
Per quanto riguarda M, se come promesso fosse un'estensione di C senza modifiche non supportate, molti sviluppatori potrebbero facilmente passare ad esso. E se lo rilasciano completamente fuori dagli schemi, cosa che hanno anche promesso, potrebbero essere in grado di uscire dal "loop Microsoft" in cui C è bloccato in questo momento, espanderlo e quindi ottenere un enorme vantaggio su altre lingue e società.
Per ora, sembra che la lingua avrà un futuro, e dovremmo conoscere maggiori dettagli nelle prossime settimane.Per quanto riguarda Midori, ricordiamoci che non è nemmeno ufficiale, ci vorrà ancora molto tempo per saperne di più su di lui, ma questo tipo di storia ci dice dove sta andando Microsoft.