Varför använder Windows fortfarande bokstäver för enheter?

Windows tilldelar vanligtvis din systemenhet bokstaven C: och ger andra bokstäver till andra lagringsenheter. Det är ovanligt – macOS och Linux använder inte bokstäver. Windows kan komma åt enheter utan bokstäver, så varför använder det dem?

Var kommer drivbokstäver ifrån?

Liksom många saker i Windows – till exempel hur den använder snedstreck bakåt istället för framåt – går drivbokstäver tillbaka till MS-DOS dagar (i själva verket till och med lite tidigare). Detta är anledningen till att Windows-systemenheten använder bokstaven C:—A: och B: var reserverade för diskettenheter.

Enhetsbokstäver överfördes till MS-DOS från CP/M, ett äldre operativsystem. De erbjöd ett sätt att komma åt logiska och fysiska lagringsenheter som innehåller filer. För att komma åt en fil med namnet README.TXT på den andra diskettenheten, skriver du bara B:README.TXT.

Behovet av enhetsbokstäver är uppenbart på kommandoraden. Om det inte fanns några enhetsbokstäver, hur skulle du snabbt ange sökvägar till filer på olika enheter? Detta var systemet som MS-DOS ärvde, och Microsoft har hållit fast vid det sedan dess.

Även om enhetsbokstäver kan verka mindre viktiga nu när vi använder grafiska skrivbord och helt enkelt kan klicka på ikoner, spelar de fortfarande roll. Även om du bara kommer åt dina filer via grafiska verktyg, måste programmen du använder hänvisa till de filerna med en filsökväg i bakgrunden – och de använder enhetsbokstäver för att göra det.

Unix-alternativet: Mount Points

Drivbokstäver är dock inte den enda möjliga lösningen. Apples macOS, Linux och andra Unix-liknande operativsystem använder en annan metod för att komma åt olika partitioner och lagringsenheter.

Istället för att vara åtkomlig på ett brev, kan en enhet göras tillgänglig på en katalogsökväg i filsystemet. Till exempel, på Linux, var externa lagringsenheter traditionellt monterade på /mount. Så istället för att komma åt en DVD-enhet på D:, kan du komma åt den på /mount/dvd.

Detta går ner till ”roten” av filsystemet. Linux och macOS har inga enhetsbokstäver, så basdelen av filsystemet är inte en bokstav. Istället har de en rotkatalog, som är /. Systemenheten är ”monterad” (tillgänglig) vid / istället för C:. Andra enheter kan monteras i godtyckliga mappar – om du vill att din hemkatalog ska lagras på en annan enhet kan du montera den på /home. Innehållet på enheten kommer då att vara tillgängligt på /home.

Du kan komma åt enheter på Windows utan bokstäver

Så varför kan du inte montera enheter på Windows så här, vilket gör dem tillgängliga på godtyckliga sökvägar istället för bokstäver? Varför kan du till exempel inte komma åt din USB-enhet på C:USB?

Tja, du kan! Moderna versioner av Windows låter dig nu montera lagringsenheter på en mappsökvägockså. Det här alternativet är tillgängligt i verktyget Diskhantering. Högerklicka på en partition på en enhet, välj ”Ändra enhetsbeteckningar och sökvägar” och klicka sedan på ”Lägg till”. Du kan använda alternativet ”Montera i följande tomma NTFS-mapp” för att göra en lagringsenhet tillgänglig på en mappsökväg precis som du kan på Unix-liknande operativsystem.

För att göra detta måste du dock montera enheten på en mappsökväg på en NTFS-volym – och den NTFS-volymen måste monteras på en enhetsbeteckning.

Så även om du fick slut på enhetsbokstäver från A: till Ö: skulle du fortfarande kunna montera ytterligare lagringsenheter och komma åt dem i Windows. Du är inte bara begränsad till 26 enheter på moderna versioner av Windows.

Du kan också ändra vilka enheter som använder vilka bokstäver från Diskhantering – även om du inte kan ändra din C:-enhet till en annan bokstav. Även att ändra en bokstav som D: till E: kan orsaka problem. Till exempel, om du har en genväg som pekar på enhet D: och filerna plötsligt ligger på E:, kommer genvägen att gå sönder.

Varför använder Windows fortfarande bokstäver?

Om enhetsbokstäver (som C:) är en gammal artefakt och Windows kan fungera utan dem, varför använder det dem fortfarande?

Anledningen är enkel och förklarar många Windows-designbeslut – bakåtkompatibilitet. Tidiga versioner av Windows måste vara kompatibla med MS-DOS-programvara, och moderna versioner av Windows måste vara kompatibla med äldre Windows-program. Körbokstäver fortsätter bara att föras vidare.

Det räcker trots allt med en enda röra med bara enhetsbokstäver! Tekniskt sett är det möjligt att installera Windows så att C: inte är din systemenhet. Du kan installera den på enheten G: och ha mappar G:Windows, G:Users och G:Program Files. C: behöver inte vara din primära enhet, och detta stöds officiellt av Windows. Men många Windows-program antar att du använder en C:-enhet, och du kommer att få problem om du inte gör det. Och om Windows-program inte kan föreställa sig att du inte använder C: som din systemenhetsbeteckning, föreställ dig hur de kommer att gå sönder om du inte har några enhetsbokstäver alls.

Du kanske undrar varför Windows fortfarande visar enhetsbokstäver. När allt kommer omkring kunde File Explorer dölja dem och bara visa orden ”System Drive” eller ”USB Flash Drive”, men File Explorer visar redan enkla beskrivningar som det, och ibland kanske du vill veta enhetsbeteckningen. Många applikationer visar sökvägar som D:FolderFile.doc.

Visst, Microsoft skulle kunna investera i kompatibilitetsprogram som omdirigerar alla förfrågningar om C: till en annan väg. Men istället för att slänga enhetsbokstäver och lägga en massa tid på att fixa saker som skulle gå sönder som ett resultat, väljer Microsoft att hålla fast vid enhetsbokstäver.