=================================================

版權聲明:如需轉載,請列明出處:HingAglaiaWong@博客園

支持原創,是對作者最好的的鼓勵。

http://www.cnblogs.com/HingAglaiaWong/

=================================================

首先,科普一下,usb是Universial Serial Bus的簡寫。USB之所以能存取,靠的是快閃記憶體(NAND flash),物理上就是芯片。受物理限制,所有存儲裝置都是有寫入/抹除次數的壽命限制。

市面上的USB採用了2種芯片結構,包括SLC(Single-Level Cell,單層式儲存技術)與MLC(Multi-Level Cell,多層式儲存技術)。MLC每個單元能儲存2個位元,這是他的祝福、也是他的噩夢。由於MLC每單元保存更多的位元,所以架構也更為複雜,而且出錯的機會也會比較大。

檔案完整性

在Windows 系統上用的USB採用FAT32 或 NTFS的檔案系統儲存文件,沒有針對資料完整性的校檢。就是文件如在存取之中失真,檔案系統裡面都不會自動進行檢測或是修正。如要自動維護,則可以考慮使用只在Linux上運行的ZFS檔案系統。如在隨身裝置裡面使用ZFS,他的checksum功能會對usb的性能產生一下影響:一、加快usb硬件耗損(checksum數據、還原檔案的備份);二、讀取速度慢(每次都要進行校檢)。

耗損平均技術(Wear Leveling)

由於usb芯片採用快閃記憶技術,被劃分為多個區塊(扇區,sectors),當某個扇區進行抹寫次數過多,會造成讀取速度慢、甚至是損壞的情況。所以,耗損平均技術能平均分佈抹寫次數於usb上不同存區,整體上延長usb壽命。

預防檔案壞損

1. 先在電腦上安全移除裝置,才拔下usb:這樣能確保緩衝裡面的資料已經讀寫完畢,拔下不會損壞usb。

2. 採用多個備份方法

參考資料

SLC & MLC: http://bbs.mydigit.cn/simple/?t242223.html

快閃記憶體:https://zh.wikipedia.org/wiki/%E9%97%AA%E5%AD%98

usb保固:https://www.google.com/amp/s/blog.gtwang.org/tips/usb-stick-how-to-minimize-risk-of-data-corruption-or-data-loss/amp/

有關於USB保固的更多相关文章

  1. 在laravel下關於blade模板的嘗試

    Blade模板 關於模板繼承和分區段 @section和@yield的實驗 ①關於@section...@show嘗試 測試1 {{--appV2test.blade.php--}} <html ...

  2. 開博客了, 因為搞Delphi 開發的關於Delphi學習

    開博客了, 因為搞Delphi 開發的關於Delphi學習,之前都是用本地TXT文件保存,發現在本地電腦保存非常不方面,而且只能在一台電腦上保存,不容易查看和修改內容.便於以後的記錄只用,以及經驗交流 ...

  3. [Xamarin] 關於發出Notification 的大小事 (转帖)

    關於Anroid 的使用者來說,Notification 是一個非常會看到且用到的功能 他可以提醒使用者甚麼東西需要待處理,像是郵件或是會議的提醒等.. 甚至有些APP ,直接使用Notificati ...

  4. 關於Validform 控件 值得注意的地方

    Validform控件其實用起來挺方便的,直接百度就能找到官網,有直接的demo做參考.這些我就不提了,我所要說的是關於Validform控件的ajax的提交. Validform中有個參數ajaxP ...

  5. JDK1.6历史版本的下载(關於TLSv1.2)Oracle的官方文檔

    [资源描述]:对于部分老项目 仍然采用的是JDK1.6 版本 但是打开官方 JDK 都是最新的 版本 想找 历史版本 不容易找到 [资源详情]:提供下载链接: http://www.oracle.co ...

  6. 關於imagick不得不說的一些事

    PHP建圖通常都用GD庫,因為是內置的不需要在服務器上額外安裝插件,所以用起來比較省心,但是如果你的程序主要的功能就是處理圖像,那麼就不建議用GD了,因為GD不但低效能而且能力也比較弱,佔用的系統資源 ...

  7. 關於 WebClient wc = new WebClient() 下載第三方數據不能進安安信任異常

    報錯異常:The underlying connection was closed: Could not establish trust relationship for SSL/TLS secure ...

  8. [Xamarin] 關於Internal Storage ,存取App內部使用資料 (转帖)

    最近在開發App,會使用到必須要處理一些App所使用的資料,上網路查一下Android 得作法,包含我自己也實作了一下,可能是因為對Java || Android 不是很孰悉,常常錯在 java.la ...

  9. 關於NPOI的一點補充和示例

    最近看到很多人分享NPOI的用法. 但是很多都不是完整示例或者並沒有實戰效果. 剛好最近有個VB.NET的項目有升級原有的oledb select sheet$的做法. 很明顯,NPOI有更好的穩定性 ...

随机推荐

  1. cURL的运用,文字替换

    <?php /** * 实例描述:在网络上下载一个网页并把内容中的“百度”替换为“谷歌”之后输出 */ $curl_obj = curl_init(); // 初始化 curl_setopt($ ...

  2. [leetcode-438-Find All Anagrams in a String]

    Given a string s and a non-empty string p, find all the start indices of p's anagrams in s.Strings c ...

  3. 【LeetCode】187. Repeated DNA Sequences

    题目: All DNA is composed of a series of nucleotides abbreviated as A, C, G, and T, for example: " ...

  4. 【Android Developers Training】 107. 认知用户当前的行为

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  5. 【Android Developers Training】 21. 创建一个可变动的UI

    注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...

  6. java基础(10) -线程

    线程 相当于轻量级进程,线程在程序中是独立的.并发的执行路径,每个线程有它自己的堆栈.自己的程序计数器和自己的局部变量.但是,与分隔的进程相比,进程中的线程之间的隔离程度要小.它们共享内存.文件句柄和 ...

  7. Tomcat常用配置修改

    Tomcat常用配置修改 说明 运行需要设置环境变量 JAVA_HOME 即JDK安装目录 tomcat 默认登录地址 http://localhost:8080 配置tomcat 1.端口设置 打开 ...

  8. 浅谈angular中的promise

    promise目的就是为了跳出回调地狱.老掉牙的东西,大神轻拍. 举个最简单的例子:请求数据(getData),解析数据(executeData),显示数据(showData). //获取数据 fun ...

  9. SharePoint 2013 安装

    步骤 1:打开提升的 SharePoint 2013 命令行管理程序 选择与您的服务器操作系统对应的过程. 在 Windows Server 2008 R2 中 单击“开始”>“所有程序”> ...

  10. Linux安装SVN服务器

    “svn都快淘汰了” #安装subversion yum -y install subversion #创建svn仓库基础路径 mkdir /home/svn #创建svn仓库 svnadmin cr ...