開啟主選單

求真百科

嵌入式FAT32文件系統設計與實現

來自 孔夫子網 的圖片

嵌入式FAT32文件系統設計與實現》,副標題:基于振南znFAT(下),于振南 編,出版社: 北京航空航天大學出版社。

書籍對於人類原有很重大的意義,但,書籍不僅對那些不會讀書的人是毫無用處,就是對那些機械地讀完了書還不會從死的文字中引申活的思想[1]的人也是無用的。 —— 烏申斯基[2]

目錄

內容簡介

本書是此套書的下冊,是上冊的延續與拓展。本書詳細講解了FAT32中長文件名的相關技術及其在znFAT中的具體實現。最後,着重介紹了SD卡等存儲設備的驅動原理與調試方法。應該說,下冊比上冊更有技術含量、更有思想,會引發讀者更多的思考和靈感。

如果說上冊是專注於基礎和常規內容的話,那麼下冊則更加側重於提高與創新。振南將把一些絕對獨特的思想和算法,以及它們在znFAT中表現出來的優異性能呈現在讀者面前。

此書謹獻給對FAT32、SD卡等嵌入式存儲技術感興趣,以及在這方面有項目應用需求的廣大人群。希望此書能夠成為此領域內的參考書,對大家的研究與開發工作產生積極意義。

目錄

第1章數據記錄,偷梁換柱:使用變通方法實現文件數據存儲1

1.1把SD卡用作一個大容量的ROM1

1.1.1大ROM思想的提出1

1.1.2思想的驗證:數據採集與記錄實驗2

1.2數據「偷梁換柱」——數據替換5

第2章更及核心,文件創建:修改FAT表實現文件創建功能10

2.1文件的創建10

2.1.1文件目錄項的構造10

2.1.2文件目錄項的「落定」:寫入目錄簇12

2.2為自己開路:簇鏈的構造15

2.2.1目錄簇的拓展15

2.2.2尋找「路石」:空簇的查找16

2.2.3形同虛設的FSINFO扇區19

2.2.4簇鏈構造的實現22

2.3目錄的創建24

2.3.1目錄項的構造24

2.3.2兩個特殊的目錄項25

第3章

數據寫入,細微可見:數據寫入的實現28

3.1初步實現28

3.1.1回顧數據讀取28

3.1.2從開頭寫數據29

3.1.3從整簇寫數據32

3.2數據寫入的實現33

3.3數據寫入的典型應用38

3.3.1實例1:數據採集與存儲38

3.3.2實例2:簡易數碼相機41

第4章

巧策良方,數據狂飆:獨特算法實現數據高速寫入45

4.1迫出硬件性能45

4.1.1連續多扇區驅動45

4.1.2多扇區抽象驅動接口47

4.2為數據作「巢」48

4.2.1預建簇鏈思想的提出48

4.2.2簇鏈預建的實現50

4.2.3將多扇區用到極致55

4.3CCCB(壓縮簇鏈緩衝)57

4.3.1CCCB的提出57

4.3.2CCCB的實現60

4.3.3CCCB的爭搶與獨立63

4.4EXB(扇區交換緩衝)64

4.4.1EXB的提出64

4.4.2EXB的實現65

第5章

模式變換,百花爭艷:znFAT與其他FAT的全面PK67

5.1登頂效率之峰67

5.2與強者競速68

5.2.1國內外優秀FAT方案簡介69

5.2.2速度的「較量」71

5.3znFAT的工作模式74

5.3.1緩衝工作模式74

5.3.2自身模式較量75

5.4 znFAT的功能裁減78

5.4.1功能裁減宏78

5.4.2裁減宏的嵌套79

第6章

創新功能,思維拓展:多元化功能特性與數據重定向的實現81

6.1多元化文件操作81

6.1.1多文件81

6.1.2多設備82

6.2數據重定向87

6.2.1數據重定向的提出87

6.2.2數據重定向的實現88

6.2.3數據重定向實現MP3播放89

第7章

層遞刪截,通盤格空:文件、目錄的刪除及磁盤格式化91

7.1文件數據的傾倒91

7.1.1何為數據傾倒91

7.1.2數據傾倒的實現92

7.2文件的刪除95

7.2.1文件刪除的實質95

7.2.2文件刪除的實現97

7.3目錄的刪除99

7.3.1目錄刪除的難處99

7.3.2目錄刪除的實現100

7.4格式化101

7.4.1格式化的內涵101

7.4.2格式化的核心工作101

7.4.3格式化的實現105

第8章突破短名,搞定長名:突破8·3短名限制,全面地實現長文件名110

8.1FAT32的長文件名110

8.1.1何為長文件名110

8.1.2長文件名的存儲機理111

8.2UNICODE編碼113

8.2.1「各自為戰」的DBCS113

8.2.2UNICODE帶來的問題115

8.2.3編碼轉換的實現116

8.2.4長名的提取與匹配120

8.3長名的核心是短名121

8.3.1微軟長名專利風波121

8.3.2長短名的綁定122

8.3.3用長名打開文件123

8.3.4創建長名文件125

第9章

青澀果實,繽紛再現:套書的第二個實驗專題131

9.1數據採集導入EXCEL131

振南點睛131

9.2串口文件「竊取器」134

9.3錄音筆136

9.4簡易數碼相機(51)139

9.5簡易數碼錄像機(AVR)141

9.6簡易數碼錄像機升級版(STM32直接錄製AVI視頻)144

9.7文件無線傳輸實驗147

9.8嵌入式腳本程序解釋器150

振南點睛151

9.9AVI視頻播放器152

9.10繪圖板實驗——基於STM32F4154

9.11MEMS聲音傳感器錄音實驗158

9.12各種CPU上的實例匯總(基於第三方實驗平台)161

振南點睛164

振南點睛171

第10章

存儲設備,閃存解惑:主流存儲設備及閃存技術詳解173

10.1當前主流存儲設備173

10.1.1主流存儲設備簡介174

10.1.2嵌入式存儲設備177

10.2FlashROM上的文件系統179

10.2.1FTL180

10.2.2NFTL180

第11章

物理驅動,深入剖析:SD卡物理驅動183

11.1SD卡的接口與電路183

11.1.1SD卡的接口183

11.1.2SD卡的電路184

11.2振南SD卡驅動移植與測試185

11.2.1振南SD卡驅動簡介185

11.2.2振南SD卡驅動移植185

11.2.3SD卡驅動測試187

11.3SD卡驅動原理188

11.3.1通信與命令188

11.3.2SD卡的初始化191

11.3.3SD卡的單扇區讀/寫194

11.3.4SD卡的多扇區讀/寫擦除195

第12章

性能提升,底層限制:高性能SD卡物理驅動197

12.1現有SD卡驅動的性能評估197

12.2用DMA為數據傳輸提速202

12.3高性能SD卡驅動的實現206

附錄A

完整工程實例之SD卡MP3播放器211

附錄B

完整工程實例之數碼錄像機(相機)218

附錄C主流CPU內核及其典型芯片簡介(znFAT移植平台)227

附錄D

答網友問233

附錄E我的大學系列238

參考文獻246

參考文獻

  1. 思想指導人生,豆丁網,2013-01-15
  2. 烏申斯基的教育思想,中公教育,2021-09-19