[請益] NAND flash的寫入次數是如何測出來的?

看板Storage_Zone (儲存裝置)作者 (nknu)時間15年前 (2010/09/02 22:33), 編輯推噓2(2011)
留言13則, 5人參與, 最新討論串1/1
如題,我們常看到很多人問隨身碟或固態硬碟壽命如何如何,回答者常回答slc可以寫入 100000次,mlc可以寫入10000次,但這數字是怎麼出來的,難道是廠商真的請工讀生寫入 10000次嗎?還是用程式去跑的?如果是用程式跑的話,我曾寫過一個程式對隨身碟單一磁 區寫入10000000次(它沒有wear leaving,而且有用檔案回覆軟體證實沒有蓋到其他磁區 ),結果隨身碟也沒壞,容量也沒變小,為什麼? 我寫的程式如下: include<stdio.h> int main(void) { register long double i; FILE *output; i=1; while(1) { output=fopen("w.txt","w"); fprintf(output,"%d", (int)i); printf("%d", (int)i);//程式會在寫入的檔案內顯示次數,也會在螢幕顯示 fclose(output); } return(0); } 程式概念大致上是如此,文句上可能略有打錯,請多包涵 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.227.190.187

09/02 22:35, , 1F
要直接用windows api函式 應該才能抓到實體磁區
09/02 22:35, 1F

09/02 22:36, , 2F
你用fopen 他又不一定再硬碟同實體位置產生檔案
09/02 22:36, 2F

09/02 22:37, , 3F
不然你用diskmon 或者xperf去看寫入讀取狀況
09/02 22:37, 3F

09/02 22:37, , 4F
即使在一般硬碟 你同樣fopen也不一定在同實體位址
09/02 22:37, 4F

09/02 22:38, , 5F
產生檔案
09/02 22:38, 5F

09/02 22:38, , 6F
另外你想這問題前也可以想 傳統硬碟MTTF怎麼求出的
09/02 22:38, 6F

09/02 23:10, , 7F
推樓上 XD
09/02 23:10, 7F

09/03 01:15, , 8F
為什麼i不變呢
09/03 01:15, 8F

09/03 02:52, , 9F
寫入一萬次"failure的機率大於某門檻"的大約值吧
09/03 02:52, 9F

09/03 02:53, , 10F
^是
09/03 02:53, 10F

09/03 03:09, , 11F
另外壞掉幾個的時候通常有映射可以用 還有一樓講的
09/03 03:09, 11F

09/03 13:30, , 12F
這還跟SSD控制器的寫入演算法有關
09/03 13:30, 12F

09/03 13:35, , 13F
文章代碼(AID): #1CVxNA77 (Storage_Zone)
文章代碼(AID): #1CVxNA77 (Storage_Zone)