La doppia personalità di explorer
Se venite dal mondo Linux, siete abituati a pensare al computer come a una torta a strati. C’è il Kernel (il motore), c’è il Server Grafico (che disegna le finestre) e c’è il Desktop Environment (GNOME, KDE, XFCE) che vi dà la barra delle applicazioni e i menu. Se uno strato non vi piace, lo togliete e ne mettete un altro.
Su Windows, questa distinzione sembra non esistere. Siamo abituati a pensare che l’interfaccia grafica sia Windows. In realtà, anche il sistema di Microsoft ha una sua modularità, ma è nascosta dietro un unico, schizofrenico protagonista: explorer.exe.
Il dottor Jekyll e Mister Hyde di Redmond
Aprite il Task Manager (Gestione Attività) su Windows. Troverete sicuramente il processo explorer.exe (o “Esplora Risorse”).
Il problema è che quel singolo file eseguibile soffre di una doppia personalità. Svolge due ruoli completamente diversi, spesso contemporaneamente:
- La Shell (L’Ambiente): È il padrone di casa. Disegna la barra delle applicazioni, il menu Start, gestisce le icone sul desktop, l’area di notifica e la pressione del tasto “Windows”.
- Il File Manager (L’Utensile): È l’applicazione che usiamo per navigare tra le cartelle, copiare file o spostare documenti da
C:aD:.
In sistemi come Linux, questi due ruoli sono spesso separati (ad esempio, GNOME Shell fa l’ambiente, Nautilus fa il file manager). Su Windows, per risparmiare memoria e integrare tutto al massimo, Microsoft ha fuso tutto in un unico eseguibile.
Il paradosso dell’avvio
Qui le cose si fanno interessanti. Come fa explorer.exe a sapere quale dei due ruoli deve recitare?
Tutto dipende dal Registro di Sistema. Alla chiave HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon, esiste una stringa chiamata Shell.
Di default, il suo valore è explorer.exe.
Quando Windows si avvia:
- Legge quella chiave.
- Lancia
explorer.exe. - Explorer si “guarda allo specchio” (controlla il sistema) e si fa una domanda: “C’è già qualcun altro che sta disegnando il desktop?”
- Se la risposta è NO, Explorer assume il ruolo di Shell: fa apparire la barra delle applicazioni e le icone.
- Se la risposta è SÌ, Explorer capisce di non essere necessario come capo, e si apre semplicemente come finestra per gestire i file.
L’esperimento dell’Uomo di Paglia
Questa logica crea un paradosso per chi vorrebbe un Windows minimale.
Molti utenti avanzati si sono chiesti: “Posso avviare Windows SENZA la barra delle applicazioni e il desktop, ma usando comunque Explorer per navigare tra i file?”
La risposta intuitiva sarebbe modificare il registro o usare dei comandi speciali all’avvio. Ma Explorer è programmato in modo ostinato: se è il primo processo grafico a partire, deve diventare la Shell. Non accetta rifiuti. Se provate a uccidere la Shell e rilanciate Explorer, lui rigenererà istantaneamente tutto il desktop.
L’unico modo per aggirare questa doppia personalità è usare un “Uomo di Paglia”.
Bisogna ingannare Windows impostando come Shell un programma diverso e leggerissimo (ad esempio, il semplice terminale cmd.exe).
- Windows avvia il PC e carica l’Uomo di Paglia (es.
cmd.exe) come Shell. - Lo schermo è nero, c’è solo il terminale.
- Da lì, lanciamo manualmente
explorer.exe. - Explorer parte, vede che il posto di “Shell” è già occupato (dal terminale) e quindi si rassegna: si apre come semplice finestra di gestione file, senza disegnare barre o menu Start.
Conclusione
La “monoliticità” di Windows è in gran parte un’illusione tenuta in piedi da questo singolo processo tuttofare. Capire come funziona explorer.exe ci permette non solo di personalizzare il sistema, ma anche di apprezzare le diverse filosofie alla base dei sistemi operativi: la specializzazione modulare di Linux contro l’integrazione efficiente (ma rigida) di Windows.