[ Pobierz całość w formacie PDF ]
.Nie jest czymś szczególnie trudnym zastosowanie długich nazw plikóww momencie tworzenia całkiem nowego systemu operacyjnego, na przykład tak jakw przypadku tworzenia nowego systemu plików NTFS dla Windows NT.ProjektanciWindows 95 musieli jednak dodać obsługę długich nazw plików do już istniejącegosystemu FAT, przy zachowaniu możliwości przechowywania tych nazw naistniejących wolumenach DOS-u oraz przy zapewnieniu poprzednim wersjom DOS-ui Windows możliwości dostępu do plików.VFAT zapewnia możliwość zastosowania nazwy pliku lub katalogu (folderu) odługości do 255 znaków (łącznie ze znakami ścieżki dostępu).Trzyznakowerozszerzenie nazwy pliku zostało zachowane, ponieważ, tak jak w poprzednichwersjach Windows, Windows 95 wykorzystuje to rozszerzenie do powiązania typówplików z konkretnymi aplikacjami.Długie nazwy plików w systemie VFAT mogązawierać spacje, a także inne znaki, które nie mogły występować w standardowychnazwach 8.3: +,;=[].Najważniejszym problemem podczas opracowywania obsługi długich nazw plikówbyło zagadnienie udostępnienia plików także poprzednim wersjom DOS-u i 16-bitowym aplikacjom Windows, które znały jedynie nazwy plików zapisane wschemacie 8.3.Rozwiązaniem tego problemu okazało się zastosowanie dla każdego zplików dwóch nazw: długiej nazwy pliku oraz tzw.nazwy alias, używającejtradycyjnej konwencji 8.3.Gdy w Windows 9x tworzysz plik z długą nazwą, VFATtworzy odpowiadający jej alias 8.3, postępując zgodnie z poniższą procedurą:1.Pierwsze trzy znaki po ostatniej kropce w długiej nazwie pliku stają się rozsze-rzeniem nazwy alias.2.Pierwsze sześć znaków długiej nazwy pliku (z wyłączeniem spacji, które sąignorowane) zostaje zamienione na wielkie litery i staje się pierwszymisześcioma znakami nazwy alias.Jeśli któryś z tych sześciu znaków nie możewystąpić w standardowej nazwie 8.3 (tj.+,;=[ lub ]), VFAT konwertuje go naznak podkreślenia.3.VFAT dodaje dwa znaki ~l jako siódmy i ósmy znak nazwy alias, chyba żepowstaje konflikt z już istniejącą nazwą; w takim wypadku stosowana jestkońcówka ~2, ~3 itd.Możesz zmienić zachowanie mechanizmu VFAT obcinającego nazwy i dodającegoprzyrostek.Możesz sprawić, że nazwa alias będzie składała się z pierwszych ośmiuznaków długiej nazwy, a nie z sześciu znaków i przyrostka ~1.W tym celu dodajnową wartość binarną do klucza RejestruKEY_LOCAL_MACHINE\System\CurrentControlSet\ control\FileSy-stem.Wartośćpowinna mieć nazwę NameNumericTail i powinna mieć wartość 0.Zmiana wartościna l spowoduje przywrócenie standardowego mechanizmu obcinania długich nazwplików.VFAT przechowuje nazwy alias w standardowych polach nazw pozycji tablicyplików.Dzięki temu dowolna wersja DOS-u lub 16-bitowego Windows może bezproblemu odwołać się do pliku, używając nazwy alias.Pozostaje jednak ważnepytanie: gdzie umieścić długą nazwę pliku? Oczywiście nie można 255-znakowejnazwy zapisać w 32-bitowej pozycji kartoteki plików (ponieważ każdy znak zajmujejeden bajt).Z drugiej strony, modyfikacja struktur)' pozycji kartoteki plikówuniemożliwiłaby skorzystanie z niej poprzednim wersjom DOS-u.Projektanci VFAT rozwiązali ten problem, używając dodatkowych pozycji kartotekiplików do przechowania długich nazw plików.Każda z pozycji kartoteki w dalszymciągu ma 32 bajty długości, dlatego do przechowania pojedynczej długiej nazwymoże być wymaganych osiem takich pozycji.Aby zapewnić, że te dodatkowepozycje kartoteki nie zostaną błędnie zinterpretowane przez starsze wersje DOS-u,VFAT nadaje im kombinację atrybutów, która jest niemożliwa w przypadkunormalnego pliku: Tylko do odczytu, Ukryty, Systemowy oraz etykieta wolumenu.Takie ustawienie atrybutów powoduje, że DOS ignoruje pozycje kartotekizawierające długie nazwy plików, zabezpieczając je równocześnie przedprzypadkowym zapisaniem innymi danymi.Używając długich nazw plików w standardowych partycjach FAT, dobrze jest unikaćprzechowywania ich w głównym katalogu dysku.Pliki z długimi nazwami,zajmujące wielokrotnie więcej pozycji kartoteki plików niż pliki z nazwą zgodną zkonwencją 8.3, mogą łatwo doprowadzić do przekroczenia limitu pozycji kartotekiplików.W przypadku partycji FAT32 ten problem już nie występuje, gdyż na takichpartycjach nie ma ograniczenia ilości pozycji głównej kartoteki dysku.To rozwiązanie, zapewniające w Windows 9x zarówno możliwość stosowaniadługich nazw plików, jak i zgodność ze starszymi systemami, choć można uważać zagenialne, nie jest pozbawione pewnych wad.Większość tych problemów wynika zużycia aplikacji, które mogą korzystać jedynie z przypisanych do plików nazw alias8.3.W pewnych przypadkach, jeśli w takim programie otworzysz plik posiadającydługą nazwę, po czym zapiszesz go ponownie, następuje zerwanie połączenia z długąnazwą pliku, która zostaje utracona.Jest to szczególnie istotne w przypadku starszych wersji narzędzi dyskowych, takichjak Norton Disk Doctor, które nie zostały stworzone do obsługi VFAT.Większośćstarszych aplikacji ignoruje dodatkowe pozycje kartoteki (z powodu kombinacjiprzypisanych im znaczników), ale narzędzia do naprawy dysku są szczególnie wyczulone" na takie nieprawidłowości i z dziką radością zabierają się do poprawiania" tego, co uznają za błędne.W związku z tym uruchomienie starszejwersji programu Norton Disk Doctor na partycji zawierającej długie nazwy plikówpowoduje w rezultacie utratę wszystkich długich nazw plików.W podobny sposóbdziałają także starsze programy do tworzenia kopii zapasowych nie zaprojektowanedo korzystania z VFAT; one także powodują utratę wszystkich długich nazw plikówna dysku.Jeśli posiadasz dysk z systemem plików VFAT, zdecydowanie zalecane jestkorzystanie wyłącznie z narzędzi dyskowych i programów do tworzenia kopiizapasowych przeznaczonych do pracy z tym systemem.Windows 9x posiadanarzędzia do naprawy, defragmentacji i tworzenia kopii zapasowych zgodne zsystemem VFAT.Jeśli jednak z jakichś powodów jesteś zmuszony do użyciastarszych programów, nie obsługujących VFAT, Windows 9x oferuje pewnerozwiązanie, które, choć niewygodne, spełnia swoją funkcję.Na instalacyjnej płytce Windows 9x znajduje się program LFNBK.EXE.Nie jestinstalowany razem z systemem operacyjnym, ale możesz użyć go do wydzielenia zwolumenu VFAT długich nazw plików i zapisania ich w pliku tekstowym o nazwieLFNBK.DAT
[ Pobierz całość w formacie PDF ]