Re: [問題] FAT32與fseek()

看板Programming作者時間16年前 (2007/11/18 02:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
※ 引述《LPH66.bbs@ptt.cc (IWH68S0XZ8M89)》之銘言: > ※ 引述《bobhsiao (㊣小臃腫㊣)》之銘言: > : 當: > : AP執行:fseek(fp, 0, SEEK_END); //移到檔案尾端(可得檔案長度) > : 底層:要找到該檔的最後一個CLUSTER,並記錄, > : 以便 fread(), fwrite()...等函數可以順利執行 > : 問題說明: > : FAT的資料都是以CHAIN連接, 要找最後一個CLUSTER, > : 也要 "從頭" 開始找, 當檔案很大時, 找越後面的 > : CLUSTER也會越久. > : 我的問題是: > : 有什麼聰明的方法可以加快嗎? > : 是不是在初始化時將整個FAT表讀完? > 這已經是很底層的動作了... > 我沒搞錯的話這一部份是BIOS在管的 挑個小毛病, BIOS只是boot loader, 到OS後跟它都沒關係喔 > 除非你是自己去讀FAT (但一般PC應該不會有這種需求吧...?) > 不然其實你就放心fseek下去就好了 其他的事情BIOS會幫你管的 > (現在磁區規劃都做得讓cluster數不要太多 這樣找起來也方便 也不會停太久) -- 夫兵者不祥之器物或惡之故有道者不處君子居則貴左用兵則貴右兵者不祥之器非君子 之器不得已而用之恬淡為上勝而不美而美之者是樂殺人夫樂殺人者則不可得志於天下 矣吉事尚左凶事尚右偏將軍居左上將軍居右言以喪禮處之殺人之眾以哀悲泣之戰勝以 喪禮處之道常無名樸雖小天下莫能臣侯王若能守之萬物將自賓天地相合以降甘露民莫 之令而自均始制有名名亦既有夫亦將知止知止可以不殆譬道之在天 122.121.229.6
文章代碼(AID): #17FonU00 (Programming)
文章代碼(AID): #17FonU00 (Programming)