Alcuni nomi riservati utilizzati nel vecchio MS-DOS non possono essere utilizzati ancora oggi, nelle versioni più recenti e moderne di Windows essenzialmente per storici motivi di retrocompatibilità. In un altro articolo abbiamo visto i nomi che non si possono usare per file e cartelle in Windows. I tecnici di Redmond chiariscono in un documento ufficiale i nomi che non è possibile assegnare ai canali di Microsoft Teams: ancora una volta si tratta proprio di alcuni comandi e variabili un tempo ampiamente utilizzati in MS-DOS.
Microsoft spiega che il nome dei canali Teams non può iniziare con il simbolo underscore (_) né cominciare o chiudersi con un punto. Allo stesso modo non è ammesso l’utilizzo di una serie di caratteri speciali e, soprattutto, è vietato l’eventuale uso delle stringhe CON, CONIN$, CONOUT$, PRN, AUX, NUL, COM1 ... COM9, LPT1 ... LPT9, desktop.ini
e _vti_
.
Cosa sono i nomi riservati che non è possibile utilizzare
Nell’ambito dei sistemi operativi MS-DOS e Windows, alcuni nomi riservati rappresentano dispositivi hardware virtuali o risorse di sistema. La stringa CON
, per esempio, si riferisce alla console: CONIN$
rappresenta l’input sulla console, mentre CONOUT$
l’output.
Proseguendo con gli altri riferimenti vietati da Microsoft, PRN
si riferisce alla stampante predefinita, AUX
rappresentava inizialmente una porta ausiliaria o una periferica di comunicazione seriale; NUL
è un dispositivo fittizio che accetta dati in input e li scarta (è ancora oggi utilizzato nei file batch e negli script per evitare la visualizzazione dell’output di un comando).
Le stringhe COM1 ... COM9
, invece, rappresentano le porte seriali fisiche del dispositivo mentre LPT1 ... LPT9
erano in passato utilizzate per la comunicazione con le stampanti attraverso la porta parallela.
Discorso a parte, invece, meritano i file desktop.ini
e _vti_
. Il primo è un file di configurazione speciale utilizzato in Windows per personalizzare l’aspetto di una cartella: abbiamo visto che desktop.ini può essere addirittura utilizzato per nascondere elementi contenuti in una directory. La stringa _vti_
si riferisce a una denominazione utilizzata da FrontPage Server Extensions (FPSE), vecchio strumento per la creazione di siti Web.
Perché i vecchi nomi di MS-DOS hanno impatto su uno strumento come Microsoft Teams
Microsoft Teams è una piattaforma di comunicazione e collaborazione basata sul cloud progettata e sviluppata da Microsoft. L’idea è quella di consentire alle persone di lavorare insieme, comunicare e condividere informazioni in modo più efficace, sia che si tratti di piccole squadre aziendali che di grandi organizzazioni.
Teams poggia il suo funzionamento sia su codice che è in esecuzione sui sistemi server di Microsoft, sia su componenti client installati dagli utenti sui loro dispositivi.
Il fatto che Microsoft impedisca di assegnare nomi ai canali Teams che contengono comandi MS-DOS è un evidente indizio di come il software per la messaggistica, la comunicazione e la collaborazione, sia legato a doppio filo con il sottostante sistema operativo. Non è quindi escluso che i tecnici dell’azienda di Redmond abbiano “messo al bando” i nomi riservati di MS-DOS per evitare potenziali problemi sia lato server che lato client.
Un bug nella gestione della stringa con\con causava una schermata blu in Windows
Basti pensare che negli anni ’90 uno dei bug più sfruttati consisteva nell’utilizzo della stringa con\con
. Non appena si provava ad accedere a tale risorsa, ad esempio dalla finestra di dialogo Esegui (Windows+R), il sistema andava puntualmente in crash mostrando una schermata blu (BSoD).
Il problema poteva essere sfruttato anche in rete locale provando ad aprire la risorsa con\con
attraverso la rete locale. In questo caso ad andare in crash era il sistema destinatario della richiesta di connessione.
Un bug molto simile è venuto alla luce nel 2021: Windows 10 mostrava un errore BSoD semplicemente digitando la stringa \\.\globalroot\device\condrv\kernelconnect
nella barra degli indirizzi del browser Web. La comparsa della schermata blu aprendo un semplice URL con Chrome è stato poi risolto da Microsoft con una patch correttiva.