Przypisanie litery dysku
W przypadku przechowywania danych komputerowych przypisywanie liter dysków to proces przypisywania alfabetycznych identyfikatorów do woluminów . W przeciwieństwie do koncepcji punktów montowania w systemie UNIX , gdzie woluminy są nazywane i umieszczane arbitralnie w pojedynczej hierarchicznej przestrzeni nazw, przypisywanie liter dysków umożliwia korzystanie z wielu przestrzeni nazw najwyższego poziomu. Przypisywanie liter dysków jest zatem procesem używania liter do nazywania korzeni „lasu” reprezentującego system plików; każdy wolumin zawiera niezależne „drzewo” (lub, w przypadku niehierarchicznych systemów plików, niezależną listę plików).
Pochodzenie
Koncepcja liter dysków, używana obecnie, przypuszczalnie [ potrzebne źródło ] zawdzięcza swoje korzenie rodzinie systemów operacyjnych IBM VM , której początki sięgają CP/CMS w 1967 r. ( i jego poprzednika badawczego CP-40 ), poprzez Digital Badania (DRI) CP/M . Koncepcja ewoluowała w kilku etapach:
- CP/CMS używa liter dysków do identyfikowania minidysków dołączonych do sesji użytkownika. Pełne odniesienie do pliku ( nazwa ścieżki w dzisiejszym żargonie) składa się z nazwy pliku , typu pliku i litery dysku zwanej trybem pliku (np. A lub B ). Minidyski mogą odpowiadać fizycznym dyskom, ale częściej odnoszą się do dysków logicznych, które są automatycznie mapowane na współużytkowane urządzenia przez system operacyjny jako zestawy wirtualnych cylindrów .
- CP/CMS zainspirował wiele innych systemów operacyjnych, w tym system operacyjny mikrokomputera CP/M, który używa litery dysku do określenia fizycznego urządzenia pamięci masowej. Wczesne wersje CP/M (i innych systemów operacyjnych dla mikrokomputerów) zaimplementowały płaski system plików na każdym dysku, w którym pełne odniesienie do pliku składa się z litery dysku , dwukropka, nazwy pliku (do ośmiu znaków ), kropki i typ pliku (trzy znaki); na przykład
A:README.TXT
. (Była to era 8-calowych dyskietek , w których tak małe przestrzenie nazw nie narzucały praktycznych ograniczeń). Na to użycie wpłynęły prefiksy urządzeń używane w systemie operacyjnym TOPS-10 firmy Digital Equipment Corporation (DEC). - Składnia litery dysku wybrana dla CP / M została odziedziczona przez Microsoft dla jego systemu operacyjnego MS-DOS za pośrednictwem Seattle Computer Products ' (SCP) 86-DOS , a tym samym także przez wersję OEM PC DOS firmy IBM . Pierwotnie litery dysków zawsze reprezentowały woluminy fizyczne, ale w końcu pojawiła się obsługa woluminów logicznych .
- Dzięki wyznaczonej im pozycji jako następcy DOS, koncepcja liter dysków została również odziedziczona przez OS / 2 i rodzinę Microsoft Windows .
W tych systemach początkowo nie było ważnych możliwości hierarchicznych katalogów w ramach każdej litery dysku. Była to główna cecha systemu UNIX i innych podobnych systemów operacyjnych, w których dyski twarde zawierały tysiące (zamiast dziesiątek lub setek) plików. Rosnąca pojemność pamięci mikrokomputerów doprowadziła do ich wprowadzenia, po czym ostatecznie pojawiły się długie nazwy plików . W systemach plików pozbawionych takich mechanizmów nazewnictwa przypisywanie liter dysków okazało się użyteczną, prostą zasadą organizowania.
Systemy operacyjne korzystające z przypisania litery dysku
- Rodzina CP/M
- CP/M , MP/M , Concurrent CP/M , Concurrent DOS , FlexOS , 4680 OS , 4690 OS , S5-DOS/MT , Multiuser DOS , System Manager , REAL/32 , REAL/NG , Personal CP /M , S5-DOS , DOS Plus
- AMSDOS
- Rodzina DOS-ów
- GEMDOS , TOS , MiNT , MagiC , MultiTOS , EmuTOS
- Rodzina Atari DOS
- MSX-DOS
- ANDOS , CSI-DOS , MK-DOS
- GEOS
- OS/2 (w tym eComStation i ArcaOS )
- Rodzina Windowsów
- Rodzina Windowsa 9x
- Rodzina WindowsNT
- Oprogramowanie systemu Xbox
- ReactOS
- System operacyjny Symbian
- Systemy operacyjne dla hobbystów
Kolejność przydziału
MS-DOS/PC DOS od wersji 5.0 i nowszych systemów operacyjnych przypisuje litery dyskom zgodnie z następującym algorytmem:
- Przypisz literę napędu A: do pierwszej stacji dyskietek (napęd 0), a B: do drugiej stacji dyskietek (napęd 1). Jeśli obecna jest tylko jedna fizyczna dyskietka, napęd B: zostanie przypisany do fantomowego napędu dyskietek mapowanego na ten sam dysk fizyczny i dynamicznie przypisywany do A: lub B: w celu ułatwienia operacji na plikach dyskietek. Jeśli nie ma fizycznej stacji dyskietek, DOS 4.0 przypisze zarówno A:, jak i B: do nieistniejącego napędu, podczas gdy DOS 5.0 i nowsze unieważnią te litery dysków. Jeśli obecne są więcej niż dwa fizyczne napędy dyskietek, wersje DOS wcześniejsze niż 5.0 przypiszą kolejne litery dysków, podczas gdy DOS 5.0 i nowsze ponownie przyporządkują te napędy do wyższych liter dysków na późniejszym etapie; patrz poniżej.
- Przypisz literę dysku do pierwszej aktywnej partycji podstawowej rozpoznanej na pierwszym fizycznym dysku twardym . DOS 5.0 i nowsze zapewnią, że stanie się on dyskiem C: , więc dysk rozruchowy będzie miał dysk A: lub C: .
- Przypisz kolejne litery dysków do pierwszej partycji podstawowej na każdym kolejnym fizycznym dysku twardym (wersje DOS wcześniejsze niż 5.0 będą sondować tylko dwa fizyczne dyski twarde, podczas gdy DOS 5.0 i nowsze obsługują osiem fizycznych dysków twardych).
- Przypisz kolejne litery dysków do każdej rozpoznanej partycji logicznej znajdującej się na pierwszej partycji rozszerzonej, zaczynając od pierwszego dysku twardego i przechodząc do kolejnych fizycznych dysków twardych.
- DOS 5.0 i nowsze: Przypisz litery dysków do wszystkich pozostałych partycji podstawowych, zaczynając od pierwszego dysku twardego i przechodząc przez kolejne fizyczne dyski twarde.
- DOS 5.0 i nowsze: Przypisz litery dysków do wszystkich fizycznych napędów dyskietek poza drugim fizycznym napędem dyskietek.
- Przypisz kolejne litery dysków do dowolnych sterowników urządzeń blokowych załadowanych w CONFIG.SYS za pomocą instrukcji DEVICE , np. dysków RAM .
- Przypisz kolejne litery dysków do dowolnych dysków ładowanych dynamicznie za pomocą instrukcji CONFIG.SYS INSTALL w AUTOEXEC.BAT lub nowszych, tj. dodatkowe napędy dysków optycznych ( MSCDEX itp.), napędy PCMCIA / PC Card , napędy USB lub Firewire lub napędy sieciowe .
- tylko partycjom rozpoznanych typów partycji . W szczególności „ukryte partycje” (te, których identyfikator typu został zmieniony na nierozpoznaną wartość, zwykle przez dodanie
10h
) nie są.
MS-DOS/PC DOS w wersji 4.0 i wcześniejszych przypisuje litery do wszystkich napędów dyskietek przed rozważeniem dysków twardych, więc system z czterema napędami dyskietek nazwałby pierwszy dysk twardy E: . Począwszy od DOS 5.0, system zapewnia, że dysk C: jest zawsze dyskiem twardym, nawet jeśli system ma więcej niż dwa fizyczne napędy dyskietek.
Chociaż bez celowego ponownego mapowania, przypisania liter dysków są zwykle ustalane do następnego ponownego uruchomienia, jednak Zenith MS-DOS 3.21 zaktualizuje przypisania liter dysków podczas resetowania dysku. Może to spowodować zmianę liter dysków bez ponownego uruchamiania, jeśli partycjonowanie dysku twardego zostało zmienione.
MS-DOS na komputerze Apricot przypisuje dyskom twardym litery, zaczynając od A: , przed rozważeniem napędów dyskietek. System z dwoma dyskami z każdego dysku nazwałby dyski twarde A: i B: , a dyskietki C: i D: .
Na japońskim PC-98 , jeśli system jest uruchamiany z dyskietki, dedykowana wersja MS-DOS przypisuje litery do wszystkich dyskietek przed rozważeniem dysków twardych; robi odwrotnie, jeśli jest uruchamiany z dysku twardego, to znaczy, jeśli system operacyjny został zainstalowany na dysku twardym, MS-DOS przypisze ten dysk jako dysk „A:”, a potencjalnie istniejącą dyskietkę jako dysk „B:” . Japońska wersja systemu Windows 95 obsługuje specjalną opcję /AT , która wymusza umieszczanie systemu Windows na dysku C:.
Niektóre wersje systemu DOS nie przypisują litery dysku rozpoczynającej się od C: do pierwszej aktywnej partycji podstawowej rozpoznanej na pierwszym fizycznym dysku twardym, ale do pierwszej rozpoznanej partycji podstawowej pierwszego dysku twardego, nawet jeśli nie jest ona ustawiona jako aktywna .
Jeśli w tablicy partycji znajduje się więcej niż jedna partycja rozszerzona, przetwarzane są tylko dyski logiczne z pierwszego rozpoznanego typu partycji rozszerzonej.
Niektóre późne wersje DR-DOS IBMBIO.COM zapewniają strukturę konfiguracji przed uruchomieniem, przechowującą flagi bitowe do wyboru (oprócz innych) między różnymi strategiami przypisywania liter dysków. Strategie te mogą być wstępnie wybrane przez użytkownika lub OEM lub zmienione przez program ładujący w locie podczas uruchamiania DR-DOS. W przypadku tych problemów dysk rozruchowy może również różnić się od A: lub C:.
Kolejność liter dysków może zależeć od tego, czy dany dysk jest zarządzany przez sterownik czasu rozruchu, czy przez sterownik ładowany dynamicznie. Na przykład, jeśli drugi lub trzeci dysk twardy jest typu SCSI iw systemie DOS wymaga sterowników załadowanych przez plik CONFIG.SYS (np. karta kontrolera nie oferuje wbudowanego systemu BIOS lub korzystanie z tego systemu BIOS nie jest praktyczne), to pierwsza podstawowa partycja SCSI pojawi się po wszystkich partycjach IDE w systemie DOS. Dlatego DOS i na przykład OS/2 mogą mieć różne litery dysków, ponieważ OS/2 ładuje sterownik SCSI wcześniej. Rozwiązaniem było rezygnacja z partycji podstawowych na takich dyskach twardych.
W systemach Windows NT i OS/2 system operacyjny używa wspomnianego algorytmu do automatycznego przypisywania liter do stacji dyskietek , stacji dysków optycznych , dysku startowego i innych rozpoznanych woluminów, które nie są tworzone przez administratora w systemie operacyjnym. Woluminy tworzone w systemie operacyjnym są określane ręcznie, a niektóre automatyczne litery dysków można zmieniać. Nierozpoznanym woluminom nie są przypisywane litery i zazwyczaj system operacyjny pozostawia je nietknięte.
Częstym problemem związanym z przypisaniem litery dysku jest to, że litera przypisana do dysku sieciowego może kolidować z literą woluminu lokalnego (takiego jak nowo zainstalowany napęd CD/DVD lub pamięć USB). Na przykład, jeśli ostatnim dyskiem lokalnym jest dysk D:, a dysk sieciowy zostałby przypisany jako E: , nowo podłączone urządzenie pamięci masowej USB również otrzymałoby przypisanie dysku E:, powodując utratę łączności z udziałem sieciowym lub Urządzenie USB. Użytkownicy z uprawnieniami administratora mogą ręcznie przypisywać litery dysków, aby rozwiązać ten problem. Innym warunkiem, który może powodować problemy w systemie Windows XP , jest zdefiniowanie dysków sieciowych, ale w stanie błędu (jak w przypadku laptopa działającego poza siecią). Nawet jeśli niepodłączony dysk sieciowy nie jest następną dostępną literą dysku, system Windows XP może nie być w stanie zmapować dysku, a ten błąd może również uniemożliwić zamontowanie urządzenia USB. [ potrzebne źródło ]
Wspólne zadania
Zastosowanie schematu omówionego powyżej w dość nowoczesnym systemie opartym na systemie Windows zwykle skutkuje następującymi przypisaniami liter dysków:
- A 3 + 1⁄2 ″ : — Napędy dyskietek , lub . 5 + 1⁄4 ″ i ewentualnie inne typy napędów dysków, jeśli są obecne
- B: — Zarezerwowane dla drugiego napędu dyskietek (który był obecny na wielu komputerach PC).
- C: — Pierwsza partycja dysku twardego .
-
D: do Z: — Tutaj są oznaczone inne partycje dysku. System Windows przypisuje następną wolną literę dysku do następnego dysku, który napotka podczas wyliczania dysków w systemie. Dyski można podzielić na partycje, tworząc w ten sposób więcej liter dysków. Dotyczy to zarówno systemu MS-DOS, jak i wszystkich systemów operacyjnych Windows. System Windows oferuje inne sposoby zmiany liter dysków, za pomocą przystawki Zarządzanie dyskami lub
części dysku
. MS-DOS zazwyczaj używa parametrów w wierszu ładowania sterowników urządzeń w CONFIG.SYS .
Litery dysków zależne od przypadku:
- F: — Pierwszy dysk sieciowy w przypadku korzystania z systemu Novell NetWare .
- G: — „Transmisja plików z Dysku Google” w przypadku korzystania z Dysku Google .
- H: — Katalog „Home” na serwerze sieciowym.
- L: — Dynamicznie przypisany napęd obciążenia w Concurrent DOS, Multiuser DOS, System Manager i REAL/32.
- M: — Litera dysku dla opcjonalnego napędu pamięci MDISK w Concurrent DOS.
- N: , O: , P: — Przypisywane dyski pływające w ramach CP/M-86 4.x, Personal CP/M-86 2.x, DOS Plus 1.1-2.1 (poprzez wywołanie BDOS 0Fh), koncepcja później rozszerzona na dowolne nieużywane litery dysków w Concurrent DOS, Multiuser DOS, System Manager, REAL/32 i DR DOS do wersji 6.0.
- P: — Wirtualizacja pakietu Microsoft Office typu Szybka instalacja.
-
U: — Zunifikowany system plików typu Unix z wirtualnym katalogiem
\DEV
dla plików urządzeń w MiNT , MagiC i MultiTOS . - Z: — Pierwszy dysk sieciowy, jeśli używany jest Banyan VINES i początkowe przypisanie litery dysku dla wirtualnej sieci dyskowej w emulatorze DOSBox x86 . Jest to również pierwsza litera wybrana przez system Windows dla zasobów sieciowych, ponieważ automatycznie wybiera od Z: w dół. Domyślnie Wine mapuje Z: do katalogu głównego drzewa katalogów UNIX.
Gdy nie ma drugiego fizycznego napędu dyskietek, napęd B: może być używany jako „wirtualny” napęd dyskietek zmapowany na fizyczny napęd A:, przy czym użytkownik byłby monitowany o zmianę dyskietki za każdym razem, gdy wymagany był odczyt lub zapis, w zależności od tego, co było ostatnio używany z A: lub B: . Pozwala to na większość funkcji dwóch napędów dyskietek na komputerze, który ma tylko jeden. Ta koncepcja wielu liter napędów współużytkujących jedno urządzenie fizyczne (opcjonalnie z różnymi „widokami” tego urządzenia) nie ogranicza się do pierwszej stacji dyskietek, ale może być również wykorzystana do innych napędów, konfigurując dla nich dodatkowe urządzenia blokowe ze standardowym DOS DRIVER.SYS w CONFIG.SYS .
Dyskom sieciowym często przypisuje się litery pod koniec alfabetu. Często ma to na celu odróżnienie ich od dysków lokalnych: użycie liter na końcu zmniejsza ryzyko konfliktu przypisań. Jest to szczególnie prawdziwe, gdy przypisanie jest wykonywane automatycznie w sieci (zwykle za pomocą skryptu logowania).
W większości systemów DOS nie jest możliwe zamontowanie więcej niż 26 napędów. Atari GEMDOS obsługuje tylko 16 liter dysków od A: do P:. Stos sterowników PalmDOS PCMCIA obsługuje litery dysków 0: , 1: , 2: , ... w celu adresowania gniazd dysków PCMCIA.
Niektóre sterowniki sieciowe firmy Novell dla systemu DOS obsługują do 32 liter dysków w zgodnych wersjach systemu DOS. Ponadto Novell DOS 7, OpenDOS 7.01 i DR-DOS 7.02 rzeczywiście obsługują dyrektywę CONFIG.SYS LASTDRIVE =32
w celu przydzielenia do 32 liter dysków, nazwanych od A: do Z: , [: , \: , ]: , ^: , _: i `: . (DR-DOS 7.02-7.07 obsługuje również HILASTDRIVE
i LASTDRIVEHIGH
w celu przeniesienia struktur dysków do pamięci wyższej.) Niektóre aplikacje DOS nie oczekują liter dysków poza Z: i nie będą z nimi działać, dlatego zaleca się ich używanie do celów specjalnych lub dysków wyszukiwania.
4DOS firmy JP Software obsługuje litery dysków poza Z: ogólnie, ale ponieważ niektóre litery kolidują z rozszerzeniami składniowymi tego procesora wiersza poleceń, należy je zmienić, aby użyć ich jako liter dysków.
również obsługę LASTDRIVE=32
i LASTDRIVEHIGH=32 .
w systemie Windows NT wymagany jest dostęp do większej liczby systemów plików niż Z:, należy użyć punktów montowania woluminów . Możliwe jest jednak montowanie dysków innych niż litery, takich jak 1: , 2: lub !: za pomocą narzędzia SUBST wiersza poleceń
w systemie Windows XP lub nowszym (tj. SUBST 1: C:\TEMP
), ale oficjalnie nie jest to obsługiwane i mogą uszkodzić programy, które zakładają, że wszystkie dyski mają litery od A: do Z: .
ASSIGN, JOIN i SUBST w DOS i Windows
Litery dysków to nie jedyny sposób uzyskiwania dostępu do różnych woluminów. DOS oferuje polecenie JOIN , które umożliwia dostęp do przypisanego woluminu przez dowolny katalog, podobnie jak polecenie montowania w systemie Unix . Oferuje również SUBST , które umożliwia przypisanie litery dysku do katalogu. Jedno lub oba z tych poleceń zostały usunięte w późniejszych systemach, takich jak OS/2 lub Windows NT , ale począwszy od Windows 2000 oba są ponownie obsługiwane: Polecenie SUBST istnieje jak poprzednio, podczas gdy funkcjonalność JOIN jest zawarta w LINKD (część zasobów systemu Windows zestaw ). W systemie Windows Vista można do tego celu użyć nowego polecenia MKLINK . Ponadto system Windows 2000 i nowsze obsługują punkty montowania, dostępne z Panelu sterowania .
Wiele systemów operacyjnych pochodzących z Digital Research umożliwia niejawne przypisywanie dysków zastępczych, zwanych dyskami pływającymi w terminologii DRI, za pomocą polecenia CD/CHDIR w następującej składni:
CD N:=C:\PODKATALOG
DOS Plus obsługuje to dla liter dysków N: , O: i P: . Ta funkcja jest również obecna w Concurrent DOS , Multiuser DOS , System Manager 7 i REAL / 32 , jednak systemy te rozszerzają tę koncepcję na wszystkie nieużywane litery dysków od A: do Z:, z wyjątkiem zarezerwowanej litery dysku L:. DR DOS 3.31 - 6.0 (do aktualizacji 1992-11 tylko z BDOS 6.7) również obsługuje to, w tym literę dysku L:. Ta funkcja nie jest dostępna w systemach DR DOS 6.0 (aktualizacja z 1992 r.), PalmDOS 1.0, Novell DOS 7, OpenDOS 7.01, DR-DOS 7.02 i nowszych. Dyski pływające są zaimplementowane w jądrze BDOS, a nie w powłoce wiersza poleceń, dzięki czemu można ich używać i przypisywać również z poziomu aplikacji, gdy używają wywołania systemowego „zmień katalog”. Jednak większość aplikacji DOS nie zna tego rozszerzenia iw konsekwencji odrzuca takie ścieżki katalogów jako nieprawidłowe. Interpreter wiersza poleceń JP Software 4DOS obsługuje dyski pływające w systemach operacyjnych, które również go obsługują.
W podobnej funkcji Concurrent DOS, Multiuser DOS, System Manager i REAL/32 będą dynamicznie przypisywać literę dysku L: do ścieżki ładowania załadowanej aplikacji, umożliwiając w ten sposób aplikacjom odwoływanie się do plików znajdujących się w ich katalogu ładowania na standardowym dysku letter zamiast pod ścieżką bezwzględną. Ta napędu ładowania ułatwia przenoszenie instalacji oprogramowania na i między dyskami bez konieczności dostosowywania ścieżek do nakładek, plików konfiguracyjnych lub danych użytkownika przechowywanych w katalogu ładowania lub kolejnych katalogach. (Z podobnych powodów dodatek do bloku środowiska związanego z załadowanymi aplikacjami w systemie DOS 3.0 (i nowszym) zawiera również odniesienie do ścieżki ładowania pliku wykonywalnego, jednak zużywa to więcej pamięci rezydentnej i aby to wykorzystać, wsparcie dla niego musi być zakodowane w pliku wykonywalnym, podczas gdy rozwiązanie DRI działa z dowolnym rodzajem aplikacji i jest w pełni przejrzyste również dla użytkowników). W niektórych wersjach DR-DOS ścieżka ładowania zawarta w dodatku do środowiska przekazywana jest do sterowników można skrócić do tymczasowego dysku zastępczego (np. SUBST B: C:\DIR
) za pomocą opcji INSTALL[HIGH]
/ LOADHIGH
/D[:loaddrive]
(dla B:TSR.COM
zamiast, powiedzmy, C:\ DIR\TSR.COM
). Można to wykorzystać do zminimalizowania efektywnego zużycia pamięci przez sterownik, jeśli plik wykonywalny znajduje się w głębokim podkatalogu, a sterownik rezydentny nie potrzebuje już swojej ścieżki ładowania po instalacji.
Zobacz też
- Mapowanie dysku
- Nazwa pliku
- net (polecenie) (polecenie w systemie Microsoft Windows, którego można używać do przeglądania/kontrolowania przypisań liter dysków dla dysków sieciowych)
- Przenośna aplikacja