]本文中描述的機制使得能夠利用固態存儲介質,而不考慮閾值能力水平。因此,所購買的供與本文中描述的機制一起利用的固態存儲介質可隨后在價格方面被降低,使得這樣的固態存儲介質的定價可與傳統的基于磁的存儲介質的定價相匹敵。更具體地,所購買的供與本文中描述的機制一起利用的固態存儲介質的價格不再需要覆蓋制造因不滿足閾值能力水平而被丟棄的固態存儲介質的成本,因為如所指示的,本文中描述的機制使得固態存儲介質能夠被購買而根本不需要首先確定這樣的固態存儲介質是否需要任何閾值能力水平。盡管缺少閾值能力水平可導致購買可能不合適的某個固態存儲介質,但本文中描述的機制通過利用其性能至少與相當的基于磁性介質的存儲設備一樣好的任何固態存儲介質來允許對足夠比例的這樣的未設閾值的固態存儲介質的利用。結果,本文中描述的機制允許基于固態的存儲設備,其成本可大致等同于相當的基于磁性介質的存儲設備,其性能可至少與相當的基于磁性介質的存儲設備一樣好(如果不是更好的話),并且其功率消耗、耐久性和可靠性相比于相當的基于磁性介質的存儲設備有意義地更好。
[0026]雖然未作要求,但以下描述將處在諸如程序模塊等正由一個或多個計算設備執行的計算機可執行指令的一般上下文中。更具體而言,除非另外指明,否則描述將參考一個或多個計算設備或外圍設備所執行的動作以及其所執行的操作的符號表示。由此,應當理解,有時被稱作計算機可執行的這種動作和操作包括處理單元對以結構化形式表示數據的電信號的操縱。這種操縱轉換了數據或將其維持在存儲器的位置中,這就以本領域技術人員所熟知的方式來重新配置或更改計算設備或外設的操作。數據被維護在其中的數據結構是具有由數據形式所定義的特定屬性的物理位置。
[0027]—般而言,程序模塊包括執行特定任務或實現特定抽象數據類型的例程、程序、對象、組件、數據結構等。此外,本領域技術人員將會認識到這些計算設備不必限于常規個人計算機,并且包括其他計算配置,包括手持式設備、多處理器系統、基于微處理器的或可編程消費電子設備、網絡PC、小型計算機、大型計算機等等。類似地,這些計算設備不必限于獨立計算設備,因為各機制也可以在其中任務由通過通信網絡鏈接的遠程處理設備執行的分布式計算環境中實現。在分布式計算環境中,程序模塊可位于本地和遠程的存儲器存儲設備兩者中。
[0028]參考圖1,示出了示例性計算設備100,它可包括但不限于,一個或多個中央處理單元(CPU)120、系統存儲器130和將包括該系統存儲器在內的各種系統組件耦合至處理單元120的系統總線121。系統總線121可以是若干類型的總線結構中的任一種,包括存儲器總線或存儲器控制器、外圍總線和使用各種總線或點對點架構中的任一種的局部總線。
[0029]計算設備100通常還包括能夠包括可由計算設備100訪問的任何可用介質的計算機可讀介質(通過從這樣的計算機可讀介質獲得數據或將數據提供給這樣的計算機可讀介質),并且包括易失性和非易失性介質以及可移動和不可移動介質兩者。作為示例而非限制,計算機可讀介質可包括計算機存儲介質和通信介質。計算機存儲介質包括以用于存儲如計算機可讀指令、數據結構、程序模塊或其他數據等信息的任何方法或技術實現的介質。計算機存儲介質包括但不限于,RAM、R0M、EEPR0M、閃存或其它存儲器技術、CD-ROM、數字多功能盤(DVD)或其它光盤存儲、磁帶盒、磁帶、磁盤存儲或其它磁性存儲設備、或能用于存儲所需信息且可以由計算設備100訪問的任何其它介質。然而,計算機存儲介質不包括通信介質。通信介質通常以諸如載波或其他傳輸機制等已調制數據信號來體現計算機可讀指令、數據結構、程序模塊或其他數據,并包括任意信息傳送介質。作為示例而非限制,通信介質包括諸如有線網絡或直接線連接之類的有線介質,以及諸如聲學、RF、紅外及其他無線介質之類的無線介質。上述中任一組合也應包括在計算機可讀介質的范圍之內。
[0030]系統存儲器130包括易失性和/或非易失性存儲器形式的計算機存儲介質,如只讀存儲器(R0M)131和隨機存取存儲器(RAM)132。基本輸入/輸出系統133(B10S)包含有助于諸如啟動時在計算設備100中元件之間傳遞信息的基本例程,它通常存儲在ROM 131中。RAM132通常包含處理單元120可立即訪問和/或當前正在操作的數據和/或程序模塊。作為示例而非限制,圖1示出了操作系統134、其它程序模塊135和程序數據136。如以下將進一步討論的,操作系統134可包括可提供來利用以上引用的未設閾值的固態存儲介質的寫扼制引擎139。
[0031]計算機系統100還可包括其它可移動/不可移動、易失性/非易失性計算機存儲介質。作為示例,圖1示出了基于固態的存儲設備149以及任選地硬盤驅動器148,其兩者都經由存儲設備接口 140通信地耦合到計算設備100,該存儲設備接口 140進而連接到系統總線121。基于固態的存儲設備149可包括固態存儲介質142,諸如以上引用的未設閾值的固態存儲介質。僅作為示例,固態存儲介質142可根據基于單層單元(SLC)或多層單元(MLC)的固態技術。可使用的其他可移動/不可移動、易失性/非易失性固態存儲介質包括但不限于閃存卡、RAM盤等。此外,基于固態的存儲設備149可進一步包括固件141,該固件141可單獨或結合寫扼制引擎139來提供對固態存儲介質142的利用。作為另一選項,固件141的功能可全部地或部分地被結合到寫扼制引擎139中,如以下將進一步描述的。
[0032]硬盤驅動器148可以是基于磁的存儲設備或其他順序存儲設備、基于固態的存儲設備(包括傳統的基于固態的存儲設備)及其他類似的存儲設備。作為示例而非限制,硬盤驅動器148可以是RAM、R0M、EEPR0M、閃存或其它存儲器技術,⑶-R0M、數字多功能盤(DVD)或其它光盤存儲,磁帶盒、磁帶、磁盤存儲或其它磁性存儲設備,或能用于存儲所需信息且可以由計算設備100訪問的任何其它介質。出于說明的目的,硬盤驅動器148可提供對計算機可讀指令、數據結構、程序模塊、和計算設備100的其它數據的存儲。例如,在圖1中,硬盤驅動器148被示為存儲了操作系統144、其他程序模塊145,以及程序數據146。注意,這些組件可以與操作系統134、其它程序模塊135和程序數據136相同,也可以與它們不同。操作系統144、其它程序模塊145和程序數據146在這里被標注了不同的標號是為了說明至少它們是不同的副本。
[0033]計算設100備可以使用對一個或多個遠程計算機的邏輯連接在聯網環境中工作。為了說明簡便起見,計算設備100在圖1中被示為連接到不限于任何特定網絡或聯網協議的網絡190。圖1所描繪的邏輯連接是一般網絡連接171,其可以是局域網(LAN)、廣域網(WAN)或其他網絡。計算設備100通過網絡接口或適配器170連接到一般網絡連接171,該網絡接口或適配器進而連接到系統總線121。在聯網環境中,相對于計算設備100或其部分或外圍設備所描繪的程序模塊可被存儲在通過一般網絡連接171通信地耦合到計算設備100的一個或多個其他計算設備的存儲器中。應當理解,所示的網絡連接是示例性的,并且可使用在計算設備之間建立通信鏈路的其它手段。
[0034]在一個實施例中,硬盤驅動器148可提供對計算機可執行指令的存儲,這些計算機可執行指令在被中央處理單元120執行時使得基于固態的存儲設備149能夠根據以下詳細描述的機制被初始化。在替換實施例中,對基于固態的存儲設備149的初始化可由駐留在其他存儲介質上或可通過其他方式由計算設備100從其他介質訪問的計算機可執行指令執行。在這樣的替換實施例中,硬盤驅動器148可以是任選的,并且根據以下詳細描述的機制,一旦基于固態的存儲設備149被初始化以供操作,被示為存儲在該硬盤驅動器上的操作系統144、程序模塊145和程序數據146可改為被存儲在基于固態的存儲設備149上。
[0035]轉至圖2,本文中示出的系統200示出了對基于固態的存儲設備(諸如在圖1中示出的示例性基于固態的存儲設備149)的示例性初始化的一部分。更具體地并且如先前所指示的,在一個實施例中,基于固態的存儲設備可包括未設閾值的固態存儲介質。如本文中所利用的,術語“未設閾值”意指先前未被測試的介質,并且由此包括會超過定義的閾值能力水平的介質以及將無法達到那些相同的定義的閾值能力水平的介質兩者。因此,在這樣的實施例中,利用基于固態的存儲設備(包括這樣的未設閾值的固態存儲介質)可包括出于標識這樣的未設閾值的固態存儲介質的能力的目的以及出于基于所標識的這樣的能力來定義這樣的未設閾值的固態存儲介質的各部分的目的來測試這樣的未設閾值的固態存儲介質。
[0036]由此,在一個實施例中,如圖2的系統200所示,基于固態的存儲設備的固態存儲介質可被測試以標識其能力。更具體地,所定義的固態存儲介質的部分可被單獨測試以標識其能力。如先前所指示的,這樣的部分可與各個體固態存儲單元一樣分立,其可各自單獨存儲一定量的數據。同樣如先前所指示的,這樣的個體部分可被更寬泛地定義,使得包括單元群組、各完整的管芯、或固態存儲介質中的其他類似的可描述部分。為了方便呈現,以下描述旨在基于各個體固態存儲單元來描述固態存儲介質。然而,所描述的機制同等地適用于固態存儲介質的不同大小的部分。
[0037]在圖2的示例性系統200中,各個體固態存儲單元(諸如示例性固態存儲單元241、
242、243、244