欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

降低嵌入式設(shè)備創(chuàng)建fat文件名時(shí)間與空間開(kāi)銷(xiāo)的方法

文檔序號(hào):6553877閱讀:191來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):降低嵌入式設(shè)備創(chuàng)建fat文件名時(shí)間與空間開(kāi)銷(xiāo)的方法
降低嵌入式設(shè)備創(chuàng)建FAT文件名時(shí)間與空間開(kāi)銷(xiāo)的方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種嵌入式技術(shù)領(lǐng)域,尤其涉及一種降低嵌入式設(shè)備創(chuàng)建FAT文件名時(shí)間與空間開(kāi)銷(xiāo)的方法。
背景技術(shù)
早期DOS的以8. 3格式文件命名方式來(lái)命名,要求文件主名不能超過(guò)8個(gè)字符、擴(kuò)展名不能超過(guò)3個(gè)字符,并且不支持漢字字符。隨著計(jì)算機(jī)技術(shù)的發(fā)展,記錄信息的文件個(gè)數(shù)以爆炸式增長(zhǎng)。8. 3短文件名格式已經(jīng)遠(yuǎn)不能滿足人們對(duì)文件命名的要求。為此,Windows 的FAT32文件系統(tǒng)實(shí)現(xiàn)了長(zhǎng)文件名機(jī)制。FAT文件系統(tǒng)的原理可以簡(jiǎn)單地描述為把存儲(chǔ)空間分塊映射到一個(gè)表中,從而實(shí)現(xiàn)對(duì)存儲(chǔ)空間的靈活支配。存儲(chǔ)空間中的每一個(gè)塊被稱(chēng)為簇,存儲(chǔ)空間的映射表被稱(chēng)作FAT表。下面介紹FAT32文件系統(tǒng)對(duì)文件的管理。除了根目錄的所有文件(子目錄也作為一種特殊的文件存在)都對(duì)應(yīng)一組數(shù)據(jù)作為文件來(lái)描述,被稱(chēng)為文件名。每個(gè)文件名由一個(gè)或者多個(gè)文件目錄項(xiàng)組成,每個(gè)文件目錄項(xiàng)由32個(gè)字節(jié)(一個(gè)字節(jié)有8位二進(jìn)制數(shù))構(gòu)成。所謂的8. 3格式短文件名就只有一個(gè)文件目錄項(xiàng),每個(gè)文件目錄項(xiàng)可以保存8個(gè)主名和3個(gè)擴(kuò)展名;而長(zhǎng)文件名是由連續(xù)的幾個(gè)文件目錄項(xiàng)組成,其中,有一個(gè)文件目錄項(xiàng),里面存放該長(zhǎng)文件名所對(duì)應(yīng)的短文件名,因此該目錄項(xiàng)常被稱(chēng)為短目錄項(xiàng);剩下的其他目錄項(xiàng)用于存放長(zhǎng)文件名字符串,因此這些文件目錄項(xiàng)又常被稱(chēng)為長(zhǎng)目錄項(xiàng)。每個(gè)文件名所對(duì)應(yīng)的文件目錄項(xiàng)里面有包含該文件的文件名、文件屬性、文件大小、文件存儲(chǔ)位置等信息。把文件名和該文件屬性所對(duì)應(yīng)的空間蔟聯(lián)系在一起就可以完全把握一個(gè)文件在硬盤(pán)的存儲(chǔ)情況,通過(guò)下面的步驟可定位出文件的所有內(nèi)容(1)通過(guò)路徑找到文件所在目錄的簇;(2)在目錄對(duì)應(yīng)的空間內(nèi)比對(duì)文件名,找到文件對(duì)應(yīng)的文件目錄項(xiàng);(3)通過(guò)文件目錄項(xiàng)確定文件的起始簇和文件大??;(4)根據(jù)FAT表內(nèi)的簇鏈確定文件的存儲(chǔ)空間。在長(zhǎng)文件名機(jī)制中,為了與8. 3格式文件名兼容,一個(gè)長(zhǎng)文件名的文件目錄項(xiàng)的組成如下表1所示表權(quán)利要求
1.一種降低嵌入式設(shè)備創(chuàng)建FAT文件名時(shí)間與空間開(kāi)銷(xiāo)的方法,其特征在于,包括以下步驟步驟10、在嵌入式設(shè)備內(nèi)存中定義一位示圖;步驟20、截取預(yù)創(chuàng)建文件名的前6個(gè)字符并將其轉(zhuǎn)換為大寫(xiě),作為預(yù)創(chuàng)建文件名對(duì)應(yīng)的短目錄項(xiàng)的前6個(gè)字符;步驟30、開(kāi)始掃描當(dāng)前目標(biāo)目錄,進(jìn)行新建預(yù)創(chuàng)建文件名的任務(wù),在一遍掃描過(guò)程中, 同步完成以下處理步驟31、掃描遍歷預(yù)創(chuàng)建文件名所在當(dāng)前目標(biāo)目錄下的所有各文件名對(duì)應(yīng)長(zhǎng)目錄項(xiàng)的項(xiàng)數(shù),逐一比較預(yù)創(chuàng)建文件名對(duì)應(yīng)長(zhǎng)目錄項(xiàng)的項(xiàng)數(shù)與所述目標(biāo)目錄下各文件名對(duì)應(yīng)長(zhǎng)目錄項(xiàng)的項(xiàng)數(shù)是否相等;所述目標(biāo)目錄下的第一文件名對(duì)應(yīng)長(zhǎng)目錄項(xiàng)的項(xiàng)數(shù);不相等,則進(jìn)行所述目標(biāo)目錄的第二個(gè)文件名對(duì)應(yīng)長(zhǎng)目錄項(xiàng)的項(xiàng)數(shù)比較;相等,則進(jìn)行第一文件名與所述預(yù)創(chuàng)建文件名的字符串比較來(lái)確定預(yù)創(chuàng)建文件名與第一文件名是否同名;是,則停止預(yù)創(chuàng)建文件的創(chuàng)建處理;否則進(jìn)行所述目標(biāo)目錄的第二個(gè)文件名對(duì)應(yīng)長(zhǎng)目錄項(xiàng)的項(xiàng)數(shù)比較;當(dāng)所述目標(biāo)目錄下所有文件名根據(jù)上述方式比較完且沒(méi)有存在同名情況下,轉(zhuǎn)入步驟32 ;步驟32、檢索與所述預(yù)創(chuàng)建文件名相似的各文件名,逐一根據(jù)與所述預(yù)創(chuàng)建文件名相似的各文件名對(duì)應(yīng)的短目錄項(xiàng)的擴(kuò)展序號(hào),對(duì)應(yīng)填寫(xiě)所述位示圖;步驟33、記錄當(dāng)前目標(biāo)目錄下第一處能存放預(yù)創(chuàng)建文件名的位置; 步驟34、查找所述位示圖第一個(gè)值為0的空閑位,假設(shè)其空閑位是位示圖中第m個(gè)字節(jié)的第η位,則預(yù)創(chuàng)建文件名對(duì)應(yīng)的短目錄項(xiàng)的擴(kuò)展序號(hào)為m*8+n+l ;步驟35、將步驟20中預(yù)創(chuàng)建文件名對(duì)應(yīng)的短目錄項(xiàng)的前6個(gè)字符與所述擴(kuò)展序號(hào)相結(jié)合,來(lái)產(chǎn)生最后的短目錄項(xiàng)名稱(chēng),并在所述步驟33的位置中寫(xiě)入預(yù)創(chuàng)建文件名的完整名字,完成該文件名的創(chuàng)建。
2.根據(jù)權(quán)利要求1所述的降低嵌入式設(shè)備創(chuàng)建FAT文件名時(shí)間與空間開(kāi)銷(xiāo)的方法,其特征在于步驟32填寫(xiě)所述位示圖具體為逐一將各文件名對(duì)應(yīng)的短目錄項(xiàng)的擴(kuò)展序號(hào)減去1,然后再除以8得到的商和余數(shù),那么商即為橫坐標(biāo),余數(shù)即為縱坐標(biāo);逐一對(duì)應(yīng)填寫(xiě)位示圖。
3.根據(jù)權(quán)利要求1所述的降低嵌入式設(shè)備創(chuàng)建FAT文件名時(shí)間與空間開(kāi)銷(xiāo)的方法,其特征在于步驟33中能存放預(yù)創(chuàng)建文件名的位置包括當(dāng)前目標(biāo)目錄下的空白位置和當(dāng)前目標(biāo)目錄下文件被刪除后留下的位置。
全文摘要
本發(fā)明提供一種降低嵌入式設(shè)備創(chuàng)建FAT文件名時(shí)間與空間開(kāi)銷(xiāo)的方法,在嵌入式設(shè)備內(nèi)存中定義一位示圖,借助位示圖,把確定預(yù)創(chuàng)建文件名對(duì)應(yīng)的短目錄的擴(kuò)展序號(hào)、確定是否存在同名文件以及確定存放文件的位置三者同步進(jìn)行操作,從而大大地節(jié)省了在嵌入式設(shè)備上創(chuàng)建FAT文件名的時(shí)間和空間。
文檔編號(hào)G06F17/30GK102184213SQ20111011391
公開(kāi)日2011年9月14日 申請(qǐng)日期2011年5月4日 優(yōu)先權(quán)日2011年5月4日
發(fā)明者謝邦旺 申請(qǐng)人:福州瑞芯微電子有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
平南县| 合肥市| 邛崃市| 南投县| 柯坪县| 横峰县| 旬阳县| 西乌珠穆沁旗| 廊坊市| 耿马| 苍南县| 夏津县| 吴川市| 黄平县| 阳曲县| 乃东县| 攀枝花市| 朔州市| 新乡县| 象山县| 长武县| 庆安县| 奇台县| 谷城县| 丹江口市| 兴和县| 许昌县| 黄大仙区| 汝州市| 当雄县| 衡东县| 乌兰察布市| 开化县| 宁明县| 杭锦旗| 淮滨县| 会泽县| 河源市| 中阳县| 黄石市| 阿拉善盟|