成人午夜激情影院,小视频免费在线观看,国产精品夜夜嗨,欧美日韩精品一区二区在线播放

長文件名使數據恢復變得復雜

2010-08-28 10:49:01來源:西部e網作者:

    在這個系列教程中的的前一篇,我論述了硬盤如何使用簇(cluster)來存儲文件。希望大家現在能清楚地明白如何計算一個文件要占用多少個簇,因為當我們實際上要開始討論數據恢復之前,來計算這個文件所用簇的數目是非常必要的。

  在我們開始進行數據恢復之前,我需要來討論一下另外一個概念:長文件名。在之前的文章我解釋過,當你刪除一個文件時,操作系統用sigma字符來替換文件名的第一個字符(在非常老的系統,)。如果我們仍然使用老的八點三(eight dot three)的命名習慣,那么你真的需要知道一些文件名方面的知識。然而,長文件名使事情變得復雜,而理解長文件名如何存放到磁盤里面非常重要。

  為什么長文件名是這么大一個問題呢?因為FAT和FAT32文件系統并不是原本支持長文件名。FAT文件系統從1982年開始應用,在那之前,僅僅是支持八點三(eight dot three)命名規則。當在1995年Windows 95發布之后,FAT文件系統仍然是Windows系統唯一可用的文件系統。(NTFS文件系統存在,但是并不支持Windows 95)。

  微軟想讓Windows 95支持長文件名,所以提出一項技術來更新FAT文件系統,這樣多目錄能夠用來相互聯合用來存儲長文件名。微軟Win95 OSR2,引進了FAT32文件系統,盡管FAT32解決了FAT格式的好多局限,但是這僅僅是在原來文件系統上的增補,而不是一個全新的文件系統。

  為了明白這個問題,讓我們研究一下文件名如何存放到磁盤中。當Windows存儲一個長文件名到FAT或者FAT32分區,必須允許在Windows之外仍然認可這個文件系統。這聽起來似乎有點奇怪。但是記住,不管從事軟件銷售的人怎么告訴你,所有版本的Windows(除了基于NT核心的)都運行在DOS之上。這意味著在這些Windows操作系統(3.x, 95, 98 and ME),實際的操作系統是DOS。技術上說,Windows只是一個平臺。因此,文件寫到磁盤內必須能夠被DOS認出,盡管一些版本的DOS并不是支持長文件名。

  要繼續向下兼容性,使用長文件名的文件要用DOS別名(DOS alias)——一個改變的、完全遵從DOS命名規范的文件名。這樣做很有必要,不僅因為文件名的長度,還因為長文件名通常并不被FAT或者FAT32文件系統允許。

  因為這些局限性。直接把長文件名存到FAT或者FAT32文件系統內不可能了。當你存放一個長文件名文件到這些種類的文件系統內,這個文件事實上被存放到DOS別名(DOS alias)下了。例如我存放一個名為“Briens File.txt”的文件到FAT文件系統中。這個文件事實上被做為BRIENS~1.TXT存放。

  讓我們進一步了解DOS別名是如何工作的。你可能在舉例中注意到了“~”被插入到經常出現空格的位置。這僅僅是一個偶然,“~”并不是用來替換空格的。事實上,DOS別名是創建來表達文件名的前六個字符,然后添加“~”,再接著是數字。

  采用數字的原因是因為理論上多個文件可能被分割成同一個DOS別名。例如,名為"Brien's File"和"Brien's Document"的文件可能同時被設置成同一DOS別名,因為頭六個字母都是一樣的。為了避免這種情況的發生,DOS別名采用數字來區分。如果兩個文件文件都在磁盤上,那么DOS別名將為BRIEN~1 和 BRIEN~2。

好了,長文件名的文件存放在磁盤上使用的是他們的DOS別名,而不是他們自己的長名字,那么剩下的文件名部分哪兒去了呢?如我之前提及,Windows能夠通過使用多目錄形式保存長文件名到磁盤內。任何時候一個長文件名文件存放到磁盤中,文件本身使用DOS別名做為文件名被保存。然而,同時Windows寫入另外一個文件到磁盤內,用來保存文件的長文件名。

  如果你通過磁盤編輯器(Disk Editor)來查看長文件名,你能看到它事實上是一個文件。如果你通過磁盤編輯器查看一個磁盤的文件分配表,你能看到標識欄(ID column)中的條目和目錄表項( directory entry)中的對象類型(Object Type)一樣。通常,對象類型(Object Type)被置入到文件或者清除。但是在這個長文件的例子中。標識欄被設置到LFN(長文件名),標志著這個條目是長文件名的一部分,而不是真實的文件。

  長文件名目錄表項(directory entry)本身能夠包含13個字符。一個標準的DOS文件名能夠包含12個字符。這里是3個字符,一個小數點還有一個3字符的文件擴展名。長文件名使用所有12個位置。加上一個額外用來表明它們自己特色的字符。我不知道究竟這個13字符從何而來,如果你知道,可以給我發Email。

  最后一個關于長文件名的問題是有時候兩個目錄表項(directory entry)有時候并不能充分存放長文件名。例如,我現在使用的文件名是“Data Recovery and Long File Names.doc”,如果我把這個文件存放到FAT或者FAT32卷內,文件的DOS別名將是DATA R~1.DOC(這種格式在Windows內顯得很簡潔)。然而,這個長文件名的長度比這種文件系統的13字符的限制要長。所以多目錄表項(directory entry)將被創建。下面的列表包含事實上將被寫入磁盤的文件分配表內的表項。

  DATA R~1.DOC

      Data Recovery

  and Long Fil

  e Names.doc

  當你通過此磁盤編輯器來瀏覽磁盤的文件分配表時,你能看到這些目錄表項。如果你通過DOS來查看磁盤目錄,你也能看到長文件名,或者你可能看到文件別名,取決于你使用的DOS的版本。如果你通過Windows瀏覽這些目錄。你可能看到長文件名。但是如果你使用磁盤編輯器,你可能看到像我例子中的那樣,就是目錄表項實際上在磁盤中的樣子。

  在上面的例子里面,我以這種方式來設計這個長文件名目錄來使其容易閱讀。在實際的工作中,長文件名目錄并不需要按照這種方式,事實上,它們經常按照相反的順序列出。它們看起來像下面的一樣。

  e Names.doc

  and Long Fil

  Data Recovery

  DATA R~1.DOC

  現在你知道如何在一個文件分配表中讀出目錄了。現在是時候進行基于磁盤編輯器的文件備份了。下一篇中我們將介紹給大家。

關鍵詞:數據

贊助商鏈接:

主站蜘蛛池模板: 安庆市| 二手房| 仁化县| 宝丰县| 桑日县| 泰安市| 新密市| 新闻| 延安市| 襄垣县| 清镇市| 比如县| 三门县| 喀喇沁旗| 万载县| 和静县| 遂平县| 福海县| 河津市| 桂东县| 梁河县| 临泉县| 招远市| 龙州县| 桃园市| 温宿县| 昌黎县| 山阳县| 安塞县| 长宁县| 常山县| 桦南县| 延边| 奉新县| 乌鲁木齐市| 观塘区| 徐州市| 黔西县| 托克逊县| 安溪县| 三门峡市|