TWI432958B - 用於選擇性使用複數個異類固態儲存位置之方法、電腦可讀取儲存媒體及計算裝置 - Google Patents

用於選擇性使用複數個異類固態儲存位置之方法、電腦可讀取儲存媒體及計算裝置 Download PDF

Info

Publication number
TWI432958B
TWI432958B TW097107542A TW97107542A TWI432958B TW I432958 B TWI432958 B TW I432958B TW 097107542 A TW097107542 A TW 097107542A TW 97107542 A TW97107542 A TW 97107542A TW I432958 B TWI432958 B TW I432958B
Authority
TW
Taiwan
Prior art keywords
solid state
input
state storage
data
storage locations
Prior art date
Application number
TW097107542A
Other languages
English (en)
Other versions
TW200844739A (en
Inventor
Bohdan Raciborski
Dilesh Dhokia
Bhrighu Sareen
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=39738794&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=TWI432958(B) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of TW200844739A publication Critical patent/TW200844739A/zh
Application granted granted Critical
Publication of TWI432958B publication Critical patent/TWI432958B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Description

用於選擇性使用複數個異類固態儲存位置之方法、電腦可讀取儲存媒體及計算裝置
本發明係關於選擇性使用複數個異類固態儲存位置。
固態驅動器(SSD, "Solid state drive")為一種資料儲存裝置,其使用非揮發性記憶體來儲存資料,且未包含在習用硬碟機中所使用的旋轉盤。因為SSD並無可移動零件,並可承受很大的撞擊、振動及溫度變化,SSD可減少搜尋時間、遲滯,以及其它關於習用硬碟機之電子機械式延遲及失效。因為這些屬性,SSD在市場上更加普遍,例如筆記型電腦及企業用次筆記型電腦,超行動PC及平板PC,其用於健康照護及消費性電子產品領域。
但是,對於使用SSD而言,目前的科技水準存在有許多限制。例如,SSD的成本對儲存量比例仍比平盤式硬碟機的明顯要高。
另外,僅有一些公司提供超過64Gb的大型SSD,其寫入速率足以取代傳統的硬碟機。但是,實際上這些驅動器數量有限,非常昂貴,且僅能由特殊要求而取得。因此,SSD的價格已超出主流的消費性市場,並且數量非常有限。
此發明內容說明係用來介紹在一簡化型式中多種觀念,其在以下的實施方式中會進一步說明。此發明內容並 非要提出所主張之標的的關鍵特徵或基本特徵,也並非要做為輔助決定所主張之標的的範圍。
本發明揭示一種方法來選擇性使用複數異類固態儲存位置。該技術初始時接收複數個異類固態儲存位置之類別。決定所接收資料的特性。然後該接收的資料即基於所決定的特性來配置到該等複數個異類固態儲存位置之一。
本技術可以集成異類的固態位置來接收對應於該固態位置記憶體型式之資料,藉此最後可以降低記憶體之成本對儲存比例。此外,加入異類的固態位置可使得SSD支援一作業系統。同時,本技術可使得在一電腦上的既有檔案可以如此重新配置,使其提供對於已使用的記憶體空間之較低的成本對儲存比例。因此,本技術允許記憶體可降低成本對儲存比例,以及利用SSD取代硬碟機。
現在將詳細參照用於選擇性使用複數個異類固態儲存位置之本技術的具體實施例,其範例係例示於附屬圖式中。用於選擇性使用複數個異類固態儲存位置之技術將配合多種具體實施例來說明,其將可瞭解到它們並非將選擇性使用複數個異類固態儲存位置的本技術限制於這些具體實施例。相反地,選擇性使用複數個異類固態儲存位置的本技術係要涵蓋其它選擇、修正及同等者,其包含在由附屬申請專利範圍所定義之多種具體實施例的精神及範疇之內。
另外,在以下的實施方式中,提出許多特定細節,其係要提供對於選擇性使用複數個異類固態儲存位置的本技術之完整瞭解。但是,用於選擇性使用複數個異類固態儲存位置的本技術在不使用這些特定細節下亦可實現。在其它實例中,並未詳細說明熟知的方法、程序、組件及電路,藉以避免不必要地混淆本具體實施例的態樣。
除了在以下的討論中另特別指明,否則可以瞭解到在整個實施方式當中,討論中所使用的術語,像是“接收”、“決定”、“配置”、“仿真”、“支援”、“分類”、“存取”、“移動”、“使用”、“路由”、“重新配置”等等,皆代表一電腦系統或類似電子運算裝置之動作及處理。該電腦系統或類似電子運算裝置可將表示成在該電腦系統之暫存器及記憶體內實體(電子)數量的資料操作及轉換成為類似地表示成在該電腦系統記憶體或暫存器或其它這些資訊儲存元、傳輸或顯示裝置內的實體數量的其它資料。用於選擇性使用複數個異類固態儲存位置之本技術亦可適用於其它電腦系統,例如像是光學及機械式電腦。
範例性電腦系統環境
現在請參照第1圖,用於選擇性使用複數個異類固態儲存位置之技術的部份係由電腦可讀取及電腦可執行指令構成,其存在於例如一電腦系統的電腦可使用媒體中。也就是說,第1圖所示為可用於實施選擇性使用複數個異類固態儲存位置之本技術之具體實施例的一種電腦的範例, 其如下所述。
第1圖所示為根據本技術之具體實施例所使用的一範例性電腦系統100,其用於選擇性使用複數個異類固態儲存位置。其可瞭解到第1圖之系統100僅為一範例,且用於選擇性使用複數個固態儲存位置之本技術可在一些不同的電腦系統上或當中來運作,該電腦系統包括通用網路化電腦系統、嵌入式電腦系統、路由器、交換器、伺服器裝置、消費性裝置、多種中介裝置/加工品、單獨運作電腦系統等等。如第1圖所示,第1圖的電腦系統100可良好地調整為具有周邊電腦可讀取媒體102,例如像是與其耦合的一軟碟片、一光碟等等。
第1圖的系統100包括用於傳遞資訊的一位址/資料匯流排104,及耦合於匯流排104之一處理器106A,其用於處理資訊及指令。如第1圖所述,系統100亦可適用於多處理器環境,其中具有複數處理器106A、106B及106C。相反地,系統100亦可適合具有一單一處理器,例如像是處理器106A。處理器106A、106B及106C可為多種微處理器中的任一種。系統100亦包括耦合於匯流排104之資料儲存特徵,例如一電腦可使用的揮發性記憶體108,例如隨機存取記憶體(RAM, "Random access memory"),該資料儲存特徵用於儲存處理器106A、106B及106C之資訊及指令。
系統100亦包括耦合於匯流排104之電腦可使用非揮發性記憶體110,例如唯讀記憶體(ROM, "Read only memory”),該電腦可使用非揮發性記憶體110用於儲存處理器106A、106B及106C之靜態資訊及指令。同時存在於系統100中的為一耦合於匯流排104之資料儲存單元112(例如一磁性或光碟及磁碟機),其用於儲存資訊及指令。系統100亦包括一選擇性的字母數字輸入裝置114,其包括字母數字及功能鍵,其耦合於匯流排104,用於傳遞資訊及指令選擇到處理器106A或處理器106A、106B及106C。系統100亦包括一選擇性的游標控制裝置116,其耦合於匯流排104,用於傳遞使用者輸入資訊及指令選擇到處理器106A或處理器106A、106B及106C。本具體實施例之系統100亦包括一耦合於匯流排104之選擇性的顯示裝置118,其用於顯示資訊。
仍請參照第1圖,第1圖之選擇性的顯示裝置118可為一液晶裝置、陰極射線管,電漿顯示裝置或其它顯示裝置,其可適於產生可由一使用者辨識的圖形影像及字母數字字元。選擇性的游標控制裝置116允許該電腦使用者動態地發信一可見符號(游標)在顯示裝置118之顯示螢幕上的移動。游標控制裝置116之許多種實施為本技藝中所熟知,其包括一軌跡球、滑鼠、觸控板、搖桿或在字母數字輸入裝置114上的特殊鍵,其能夠發信一位移的給定方向或方式之移動。另外,其將可瞭解到一游標可以使用特殊鍵或鍵序指令經由字母數字輸入裝置114輸入來導向及/或啟動。
系統100亦可良好地適用於具有一游標,其可由其它 手段導引,例如像是語音指令。系統100亦包括一輸入/輸出裝置120,用於耦合系統100於外部個體。例如在一具體實施例中,輸入/輸出裝置120為一數據機,用於構成系統100與一外部網路之間的有線或無線式通訊,例如(但不限於)網際網路。用於選擇性使用複數個異類固態儲存位置之本技術的更為詳細之說明可見於下述。
仍請參照第1圖,系統100中揭示有多種其它組件。特別是當呈現時,一作業系統122、應用124、模組126及資料128,皆顯示成基本上存在於電腦可使用揮發性記憶體108之一種或某些組合當中,例如隨機存取記憶體(RAM)及資料儲存單元112。但是,其可瞭解到在一些具體實施例中,作業系統122可儲存在其它位置中,例如在一網路上或在一快閃驟動器上;及另外,作業系統122可經由例如耦合到網際網路而由一遠端位置來存取。在一具體實施例中,用於選擇性使用複數個異類固態儲存位置之本技術例如可儲存成在RAM108內的記憶體位置及資料儲存單元112的記憶體區域內之一應用124或模組126。
系統100亦包括一固態配置模組130,其耦合於作業系統122。在一具體實施例中,固態配置模組130可整合在作業系統122內,而在其它具體實施例中,固態配置模組130可通訊式地耦合於該作業系統,並在其之外。而在另一具體實施例中,固態配置模組130為一快閃記憶體裝置。
運算系統100僅為一適當連算環境的範例,其並非提 出本技術之用途與功能之範疇的任何限制。運算環境100也不應視為具有任何關聯性或需要關連於範例性運算系統100中所例示之任何組件或組件的組合。
本技術可在由一電腦執行之電腦可執行指令(像是程式模組)的一般性架構下描述。概言之,程式模組包括例式、程式、物件、組件、資料結構等,其可執行特殊工作或實施特定的摘要資料型態。本技術亦可實施在分散式運算環境中,其中工作係由透過一通信網路鏈結的遠端處理裝置執行。在一分散式運算環境中,程式模組可以同時位於本地及遠端運算儲存媒體中,其包括記憶體儲存裝置。
概述
做為概述,在一具體實施例中,本技術提供一種用於選擇性使用複數個異類固態儲存位置之方法,致使該固態配置模組可達成一較低的成本對儲存比例。例如,一作業系統將傳送一類別到該固態配置模組之一類別接收器,該類別係描述每個異類固態儲存位置較想要保持的是那一種資料。該作業系統亦將關聯輸入/輸出作業的資料傳送到該固態配置模組之接收資料特性決定器。
然後該接收資料特性決定器將可決定該接收資料所屬的是那一個固態儲存位置。然後該接收資料特性決定器傳遞此決定到該固態配置模組之異類固態儲存位置配置器。然後該異類固態位置配置器即根據該接收資料特性決定器之指令來配置該接收資料到該等異類固態儲存位置。
當該作業系統在一具體實施例中為通訊式地耦合於該固態配置模組,另一具體實施例允許該固態配置模組可完全整合於該作業系統之內。此外,在另一具體實施例中,該固態配置模組係通訊式地耦合於該異類固態儲存位置,其亦可整合於一單一單元內,例如一可移除式智慧卡。在另一具體實施例中,該固態配置模組係在外部,且通訊式耦合於該異類固態儲存位置。此外,如果沒有具有嵌入式異類固態儲存位置配置器之固態配置模組,在一具體實施例中該作業系統可實施類似的功能。
在一具體實施例中,該固態儲存位置可模擬一硬碟機。在另一具體實施例中,該固態儲存位置包含至少一快閃記憶體儲存位置。
簡言之,本技術之具體實施例可提供一種電腦可實施的方法,用於選擇性使用複數個異類固態儲存位置,包含:一類別接收器,其接收複數個異類固態儲存位置之每一位置的類別,一接收資料特性決定器,其決定該接收資料的特性,及一異類固態儲存位置配置器,其基於該接收資料的特性來配置該接收資料到該等複數異類固態儲存位置之一。藉由使用耦合於一固態配置模組之複數個異類固態儲存位置,本技術可以達到資料的低成本對儲存比例。
架構
現在請參照第2A圖,所示為根據本技術一具體實施例中用於配置關於一作業系統之記憶體的一範例性固態配 置模組的區塊圖。概言之,用於配置相關於一作業系統200之記憶體的固態配置模組包括一類別接收器210、一接收資料特性決定器220、及一異類固態儲存位置配置器230,其皆通訊式耦合於固態儲存位置A 240,固態儲存位置B 245,固態儲存位置C 250及固態儲存位置n…255。
此外,線205代表由作業系統200傳送到類別接收器210之資料路徑。線225代表描述了由作業系統200傳送到接收資料特性決定器220之描述資料特性的資訊路徑。線235代表由固態儲存位置配置器230到異類固態儲存位置A 240、B 245、C 250及n…255之資料路徑。再者,路徑205、225及235可用多種方式連接多種組件,其包括有線式或無線式。
在一具體實施例中,一類別接收器210沿著路徑205接收複數個異類固態儲存位置A 240、B 245、C 250及n…255之類別。類別接收器210接收類別資料,其描述每個固態儲存位置A 240、B 245、C 250及n…255所保持的是那一種資料。固態儲存位置n…255代表在預定數目的該固態儲存位置A 240、B 245及C 250之外的預定數目的異類固態儲存位置。
例如,固態儲存位置A 240可係持一次寫入及不常讀取之資料,固態儲存位置B 245保持不常寫入及常讀取之資料,而固態儲存位置C 250保持經常寫入及經常讀取之資料。此外,固態儲存位置n…255代表多兩個的固態儲存裝置,即為D及E。固態儲存裝置D保持了不常寫入及不 常讀取之資料,且固態儲存裝置E係持相當經常寫入及相當經常讀取之資料。固態儲存位置A 240、B 245、C 250及n…255所保持的資料種類係表示成一類別。
在另一範例中,一類別接收器210係用於僅接收兩個異類固態儲存位置A 240及B 245之類別。固態儲存位置A 240保持一次寫入及不常讀取的資料,而固態儲存位置B 245保持不常寫入及不常讀取之資料。固態儲存位置A 240及B 245所保持的資料種類即表示成一類別。
而在另一範例中,一類別接收器210係用於只有接收三個異類固態儲存位置A 240、245及C 250之類別。固態儲存位置A 240保持一次寫入及不常讀取的資料,固態儲存位置B 245保持不常寫入及常讀取之資料,而固態儲存位置C 250係持經常寫入及經常讀取之資料。固態儲存位置A 240、B 245及C 250所保持的資料種類即表示成一類別。
在一具體實施例中,接收資料特性決定器220用於決定自作業系統200接收之資料特性。由接收資料特性決定器220自作業系統200接收的資料即相關於輸入/輸出作業的種類。例如,資料基於輸入/輸出作業的種類來分類成以下的類別:(1)一次寫入及寫入之後唯讀;(2)不常寫入且經常讀取;及(3)經常寫入及經常讀取。
在寫入之後一次寫入及唯讀的資料範例包括作業系統檔案及應用二元化檔案。不常寫入而經常讀取的資料範例包括使用者資料、設定、文字檔案、資料試算表及通訊錄。 經常寫入及經常讀取之資料範例包括作業系統頁面檔案、作業系統檔案、登錄表、歷史記錄及快取。
接收資料特性決定器220可接收相關於來自沿著路徑225之輸入/輸出作業的資料多種組合。例如,在一具體實施例中,接收資料特性決定器220接收相關於輸入/輸出作業之資料,其在寫入之後需要一次寫入及唯讀,及經常寫入及經常讀取。在另一具體實施例中,接收資料特性決定器220接收相關於該輸入/輸出作業之資料,其需要不常寫入及經常讀取,及經常寫入及經常讀取。
例如,在接收到以下固態儲存位置A 240、B 245、C 250及n...255中至少兩項的類別及來自作業系統200相關於該輸入/輸出作業的資料之後,接收資料特性決定器220即決定在那一個固態儲存位置A 240、B 245、C 250及n...255中要放置相關於輸入/輸出作業的接收資料。此決定係基於來自作業系統200之接收資料,其係關連於每一個固態儲存位置之類別。然後接收資料特性決定器220即傳遞此決定到異類固態儲存位置配置器230。
在一具體實施例中,異類固態儲存位置配置器230係用於基於該接收資料的特性配置來自作業系統200接收的資料到複數個異類固態儲存位置之一。異類固態儲存位置配置器230沿著路徑235傳送該接收資料到以下的固態儲存位置A 240、B 245、C 250及n...255中至少兩項。
在本技術中,其有可能具有類別接收器210、接收資料特性決定器220、及異類固態儲存位置配置器230,成為 組合在一模組內,但通訊式耦合於包含固態儲存位置A 240、B 245、C 250及n…255之一個別模組。此外,本技術的另一範例可具有類別接收器210、接收資料特性決定器220、及異類固態儲存位置配置器230,其彼此通訊式耦合,但存在於個別模組中,而仍通訊式耦合於固態儲存位置A 240、B 245、C 250及n…255。
在一具體實施例中,異類固態儲存位置配置器230配置該接收資料到除了其它固態儲存位置A 240、B 245、C 250及n…255之外的一快閃記憶體儲存模組。而在另一具體實施例中,異類固態儲存位置配置器230配置該接收資料到做為一硬碟機模擬器之快閃記憶體儲存模組。
在本技術的一範例中,固態配置模組215係通訊式耦合於固態儲存位置A 240、B 245、C 250及n…255,以此種方式組合在一單一儲存位置260上。此單一儲存位置可為一可移除卡。一電腦晶片係整合在該可移除卡之內。此電腦晶片包含固態配置模組215及異類固態儲存位置配置器230之組合。插入此可移除卡可允許使用者將通訊式耦合至固態儲存位置A 240、B 245、C 250及n…255之固態配置模組215到一電腦裝置中。一旦插入該可移除卡時,固態配置模組215成為通訊式耦合於該電腦裝置的作業系統200。
現在請參照第2B圖,所示為根據本技術一具體實施例中用於配置關於一作業系統200之記憶體的一範例性固態配置模組的區塊圖。概言之,用於配置關於一作業系統 200之記憶體的固態配置模組包括一類別接收器210、接收資料特性決定器220、異類固態儲存位置配置器230、固態儲存位置A 240、固態儲存位置B 245,固態儲存位置C 250及固態儲存位置n…255。
此外,線235代表由固態儲存位置配置器230傳送到異類固態儲存位置A 240、B 245、C 250及n…255之資料路徑。再者,路徑235可用多種方式連接異類固態儲存位置配置器230到固態儲存位置A 240、B 245、C 250及n…255,其中包括有線式或無線式。
在一具體實施例中,固態配置模組215整合在作業系統200內,但係在外部通訊式耦合至固態儲存位置A 240、B 245、C 250及n…255。此外,異類固態儲存位置配置器230可以實施及嵌入在固態配置模組220中,或實施為軟體成為作業系統200的一部份。此外,固態儲存位置A 240、B 245、C 250及n…255為在外部耦合至作業系統200。
作業
現在請參照第3圖,所示為根據本發明一具體實施例中一種實施選擇性使用複數個異類固態儲存位置之範例性方法的電腦之流程圖300。
現在參照第3圖之305及第2A圖,一具體實施例接收該等複數個異類固態儲存位置之每一位置的類別。如此處所述,在本技術的另一具體實施例中,沿著路徑205傳 送的類別即由類別接收器210接收。概言之,該類別描述了每個固態儲存位置A 240、B 245、C 250及n…255所保持的是那一種資料。固態儲存位置n…255代表在該固態儲存位置A 240、B 245及C 250之外的預定數目的異類固態儲存位置。
本技術一具體實施例藉由使用作業系統200接收該等複數個異類固態儲存位置305之類別來決定類別。作業系統200可通訊式耦合至及在固態配置模組215之外,或固態配置模組215可整合在作業系統200之內。然後類別接收器210傳遞該等複數個異類固態儲存位置A 240、B 245、C 250及n…255之每一位置的類別到接收資料特性決定器220。
現在請參照第3圖之310及第2A圖,一具體實施例決定接收資料310的特性。如此處所述,在本技術的另一具體實施例中,決定接收資料310的特性包括分類相關於輸入/輸出作業之接收資料到對應於複數個異類固態儲存位置A 240、B 245、C 250及n…255之每一位置的類別之至少一分類。此相關於輸入/輸出作業的接收資料沿著路徑225自作業系統200傳送到接收資料特性決定器220。此外,在接收資料特性決定器220決定將該接收資料配置到固態儲存位置A 240、B 245、C 250及n…255之後,接收資料特性決定器220傳遞此決定到異類固態儲存位置配置器230。
在本技術的另一具體實施例中,決定接收資料310的 特性包括利用一資料重要性特性。一資料重要性特性包括相關於輸入/輸出作業的該資料態樣,其用於描述需要那一種記憶體來保持此資料。例如,作業系統200將沿著路徑225傳送相關於輸入/輸出作業的資料到接收特性決定器220。然後接收特性決定器220將根據以下特性區分該資料成為群組:(1)一次寫入及寫入之後唯讀的資料;(2)不常寫入且經常讀取的資料;及(3)經常寫入及經常讀取的資料。然後接收資料特性決定器220將基於自類別接收器210接收的該固態儲存位置之類別,決定該每一個群組化的接收資料要傳送到那一個固態儲存位置A 240、B 245、C 250及n…255。
例如,作業系統200傳送到類別接收器210關於固態儲存位置A 240為不常寫入及經常讀取之資料的一儲存位置的資訊。作業系統200經由路徑225傳送到接收資料特性決定器220,相關於輸入/輸出作業的資料,其係要儲存在固態儲存位置A 240、B 245、C 250及n…255之一當中。接收資料特性決定器220決定相關於這些輸入/輸出作業的資料種類。接著接收資料特性決定器220決定該接收資料的某個百分比為不常寫入及經常讀取的資料。然後資料特性決定器220決定此不常寫入及經常讀取之接收資料必須配置到固態儲存位置A 240,因為此儲存位置係用於保持不常寫入且經常讀取之資料。
現在請參照第3圖之315及第2A圖,一具體實施例基於由接收資料特性決定器220所決定的特性,配置該接 收資料到該等複數個異類固態儲存位置A 240、B 245、C 250及n…255之一。接收資料係傳送到異類固態儲存位置A 240、B 245、C 250及n…255中至少兩項。
基於該接收資料315的特性配置該接收資料到該等複數異類固態儲存位置之一係包括移動一檔案自該等複數個異類固態儲存位置A 240、B 245、C 250及n…255之一到該等複數個異類固態儲存位置A 240、B 245、C 250及n…255中另一個,其係在接收資料特性決定器220已經存取到一檔案的屬性之後,其中該檔案係基於該檔案的該等屬性係儲存在該等複數個異類固態儲存位置中之一。一檔案的屬性包括資料,例如一擋案在該電腦的使用期間存取的頻率,該檔案對於今天的作業有多重要,該檔案的大小,以及相關於輸入/輸出作業的資料。
概言之,接收資料特性決定器220有能力監視儲存在該等複數個異類固態儲存位置A 240、B 245、C 250及n…255內該資料之屬性。如果且當接收資料特性決定器220存取儲存在該等固態儲存位置A 240、B 245、C 250及n…255之一上的一檔案,並決定該檔案的屬性使得該檔案被移動到該固態儲存位置A 240、B 245、C 250及n…255中一不同的位置,則接收資料特性決定器220傳遞此決定到異類固態儲存位置配置器230。
再者,於異類固態儲存位置配置器230接收來自接收資料特性決定器220之該訊息之後(該訊息係一檔案需要被移動到該固態儲存位置A 240、B 245、C 250及n…255 中一不同位置),異類固態儲存位置配置器230即依照這些指令。異類固態儲存位置配置器230到達固態儲存位置A 240、B 245、C 250及n…255,並根據接收資料特性決定器220之指令來重新配置該等檔案。
例如,假設一資料檔案已經六個月的時間未被讀取。接收資料特性決定器220亦辨識出此資料檔案已經六個月的時間未被讀取。該檔案亦碰巧目前存在於一固態儲存位置中,其容納了不常寫入及經常讀取的資料。因為此資料檔案於某段時間當中不再經常被讀取,接收資料特性決定器220指示異類固態儲存位置配置器230藉由放置該資料檔案到容納了不常寫入且不常讀取之固態儲存位置n…255中來重新配置該資料檔案。
再者,如果不存在具有一嵌入式決定器之固態配置模組215,在一具體實施例中,作業系統200可實施類似於固態配置模組215之功能。例如,假設作業系統200附加有兩個以上的非揮發性固態儲存位置n…255。然後作業系統200可決定由那一個固態儲存位置n…255來儲存資料區塊,其方式相同於硬體式異類固態儲存位置配置器230所做的決定。
請再次參照第3圖及第2A圖,一種用於選擇性使用複數個異類固態儲存位置300之電腦實施的方法之另一具體實施例,該等複數個異類固態儲存位置A 240、B 245、C 250及n…255模擬一硬碟機。在一具體實施例中,該等複數個異類固態儲存位置A 240、B 245、C 250及n…255 模擬且基本上取代一硬碟機。在另一具體實施例中,該等複數個異類固態儲存位置A 240, B 245, C 250及n…255模擬一硬碟機的一部份。
在本技術的另一範例中,該等複數個異類固態儲存位置A 240、B 245、C 250及n…255支援作業系統200。固態配置模組215係通訊式耦合至作業系統200。在另一具體實施例中,固態配置模組215整合在作業系統200內。固態配置模組215亦通訊式耦合至固態儲存位置A 240、B 245、C 250及n…255。固態儲存位置A 240、B 245、C 250及n…255做為作業系統200之記憶體儲存空間。
在另一具體實施例中,用於支援作業系統200的該等複數個異類固態儲存位置A 240、B 245、C 250及n…255,其包含至少一快閃記憶體儲存位置。例如,在該等複數個異類固態儲存位置A 240, B 245, C 250及n…255中,固態儲存位置A 240為一快閃記憶體儲存位置,藉此固態儲存位置B 245、C 250及n…255為一些其它種類的固態儲存位置。
在另一範例性方法中,所有該等複數個異類固態儲存位置A 240、B 245、C 250及n…255為快閃記憶體儲存位置。再者,在另一範例中,該等複數個異類固態儲存位置A 240、B 245、C 250及n…255中,固態儲存位置A 240及B 245為快閃記憶體儲存位置,藉此儲存位置C 250及n…255為一些其它種類的固態儲存位置。
現在請參照第4圖,所示為根據本發明一具體實施例 中,在一電腦可使用媒體上指令的流程圖400,其中該等指令在當被執行時使得一電腦系統可實施選擇性使用複數個異類固態儲存位置之方法。
現在請參照第4圖的405及第2A圖,一具體實施例接收該等複數個異類固態儲存位置405之類別。接收該等複數個異類固態儲存位置405之類別係類似於接收該等複數個異類固態儲存位置305之類別。因為此處對於接收該等複數個異類固態儲存位置305之解釋可應用於接收該等複數個異類固態儲存位置405之類別,為了清楚及簡短的目的,這些解釋將不再重複。
現在請參照第4圖的410及第2A圖,一具體實施例使用該等複數個異類固態儲存位置之類別及一輸入/輸出作業的接收特性來選擇一儲存位置410。使用該等複數個異類固態儲存位置之類別及一輸入/輸出作業的接收特性來選擇一儲存位置410係類似於決定接收資料310的特性。因為此處對於決定接收資料310之特性的解釋可應用於使用該等複數個異類固態儲存位置之類別及一輸入/輸出作業的接收特性來選擇一儲存位置410,為了清楚及簡短的目的,這些解釋將不再重複。
此外,請參照第4圖之410及第2A圖,在一具體實施例中,使用該等複數個異類固態儲存位置之類別及一輸入/輸出作業的接收特性來選擇一儲存位置410另包含使用一存取頻率的特性。此存取頻率的特性參照到資料,其描述該等複數個異類固態儲存位置A 240、B 245、C 250 及n…255之一被寫入及/或讀取之頻率。
例如,假設異類固態儲存位置A 240包含記憶體位置,用於不常寫入而經常讀取之檔案。同時,假設儲存在異類固態儲存位置A 240上的一檔案在去年僅被讀取一次。接收資料特性決定器220根據預定的指令可決定移動此檔案到異類固態儲存位置B 245,因為異類固態儲存位置B 245包含有記憶體空間,用於不常寫入及不常讀取之檔案。
現在請參照第4圖的415及第2A圖,一具體實施例導引相關於該輸入/輸出作業的資料到一選擇的儲存位置415。在另一具體實施例中,導引相關於該輸入/輸出作業的資料到一選擇的儲存位置415另包含使用一單一可定址儲存名稱空間,其代表該等複數個異類固態儲存位置n…255之聚集。例如,異類固態儲存位置配置器230對於該等複數個固態儲存位置n…255暴露僅一單一儲存名稱空間。因此,類似備份或作業系統200之應用僅可看到一單一可定址儲存名稱空間,其代表所有固態儲存位置n…255,而非每一個個別的固態儲存位置A 240、B 245、C 250及/或n…255。
導引關聯該輸入/輸出作業的資料到一選擇的儲存位置415係類似於基於接收資料315的特性配置接收資料到該等複數個異類固態儲存位置之一。因為此處對於基於接收資料315的特性配置接收資料到該等複數個異類固態儲存位置之一的解釋可應用到導引相關於該輸入/輸出作業 的資料到一選擇的儲存位置415,為了清楚及簡短的目的,這些解釋將不再重複。
因此,本技術提供一種選擇性使用複數異類固態儲存位置A 240、B 245、C 250及n…255之電腦實施的方法。再者,本技術達到適用相關於輸入/輸出作業之多種資料的複數個異類固態儲存位置可允許降低儲存資料在記憶體空間中的成本對儲存比例。此外,本技術可使得該等複數個異類固態儲存位置A 240、B 245、C 250及n…255或其一些組合可模擬一硬碟機。再者,本技術可以使用快閃記憶體儲存空間來用於任何數目的該等複數個異類固態儲存位置A 240、B 245、C 250及n…255。
雖然該標的已經以特定於結構化特徵及/或方法性步驟的語言來描述,其應瞭解到在後附申請專利範圍中所定義的標的並不必要限制於上述之特定特徵或步驟。確切的說,上述的特定特徵及步驟係揭示為實施該申請專利範圍之範例型式。
100‧‧‧範例性電腦系統
102‧‧‧周邊電腦可讀取媒體
104‧‧‧匯流排
106‧‧‧處理器
106A‧‧‧處理器
106B‧‧‧處理器
106C‧‧‧處理器
108‧‧‧電腦可使用揮發性記憶體
110‧‧‧電腦可使用非揮發性記憶體
112‧‧‧資料儲存單元
114‧‧‧選擇性的字母數字輸入裝置
116‧‧‧選擇性的游標控制裝置
118‧‧‧選擇性的顯示裝置
120‧‧‧輸入/輸出裝置
122‧‧‧作業系統
124‧‧‧應用
126‧‧‧模組
128‧‧‧資料
130‧‧‧固態配置模組
200‧‧‧作業系統
205‧‧‧路徑
205‧‧‧線
210‧‧‧類別接收器
215‧‧‧固態配置模組
220‧‧‧接收資料特性決定器
225‧‧‧路徑
225‧‧‧線
230‧‧‧異類固態儲存位置配置器
235‧‧‧路徑
235‧‧‧線
240‧‧‧異類固態儲存位置A
245‧‧‧異類固態儲存位置B
250‧‧‧異類固態儲存位置C
255‧‧‧異類固態儲存位置n...
260‧‧‧單一儲存位置
附屬圖式係納入並形成本說明書的一部份,其例示了選擇性使用複數個異類固態儲存位置之技術的具體實施例,並配合說明,用於解釋以下所討論的原理:第1圖為根據本技術之具體實施例所使用的一範例性電腦系統,其用於選擇性使用複數個異類固態儲存位置。
第2A圖為根據本技術一具體實施例中用於配置相關 於一作業系統之記憶體的一範例性固態配置模組的區塊圖。
第2B圖為根據本技術一具體實施例中用於配置相關於一作業系統之記憶體的一範例性固態配置模組的區塊圖。
第3圖為根據本技術一具體實施例中用於選擇性使用複數個異類固態儲存位置之範例性方法的流程圖。
第4圖為根據本技術一具體實施例中用於選擇性使用複數個異類固態儲存位置之範例的流程圖。
在本說明中所參照的圖式應可瞭解到並未依比例繪製,除非有特別註明。

Claims (20)

  1. 一種選擇性使用第一及第二異類固態儲存位置之方法,該方法係藉由在一電腦上之一處理器執行,該電腦包含儲存電腦可執行指令之一記憶體,該等電腦可執行指令包含該方法,該方法包含以下步驟:接收一第一類別及一第二類別,該第一類別係定義一第一異類固態儲存位置之一第一輸入/輸出存取頻率特性,該第二類別係定義一第二異類固態儲存位置之一第二輸入/輸出存取頻率特性;基於與已接收資料相關之輸入/輸出作業,判定該已接收資料之特性,該已接收資料之特性指示對於該資料之輸入/輸出作業之預期事件;及基於該等特性,判定部分或全部之該已接收資料是否對應於該第一輸入/輸出存取頻率特性、該第二輸入/輸出存取頻率特性或該第一輸入/輸出存取頻率特性及該第二輸入/輸出存取頻率特性兩者;基於該已接收資料之該已判定特性及該第一與第二輸入/輸出存取頻率特性,在該第一及第二異類固態儲存位置間配置該已接收資料;及基於該已配置資料之一或多個監控屬性,該已配置資料之一或更多個監控屬性係鑒於該第一及第二輸入/輸出存取頻率特性,在該第一及第二異類固態儲存位置間重新配置資料;該資料包含一檔案及該一或多個監控屬性,該一或更多個監控屬性包含藉 由該電腦對該檔案之一存取頻率。
  2. 如申請專利範圍第1項所述之方法,其中接收該第一及第二異類固態儲存位置之類別之該步驟包含以下步驟:使用一作業系統以判定該第一及第二類別。
  3. 如申請專利範圍第1項所述之方法,其中判定特性之步驟包含以下步驟:使用一資料重要性特性。
  4. 如申請專利範圍第1項所述之方法包含以下步驟:使用一單一可定址儲存名稱空間,該單一可定址儲存名稱空間代表該第一及第二異類固態儲存位置之一聚集。
  5. 如申請專利範圍第1項所述之方法,其中判定特性之步驟包含以下步驟:存取一檔案之屬性,其中儲存該檔案於該第一及第二異類固態儲存位置中的其中一個。
  6. 如申請專利範圍第1項所述之方法包含以下步驟:經由該第一及第二異類固態儲存位置支援一作業系統。
  7. 如申請專利範圍第1項所述之方法包含以下步驟:經由利用該第一及第二異類固態儲存位置模擬一硬碟機。
  8. 如申請專利範圍第1項所述之方法,其中該一或更多個監控屬性進一步包含以下的至少一個:該檔案對於今日作業之重要性、該檔案之檔案大小及與輸入/輸出作業相關之資料,該輸入/輸出作業係與該檔案相關。
  9. 一種包含電腦可執行指令之電腦可讀取儲存媒體,當藉由一電腦系統之一處理器執行該等電腦可執行指令時,該等電腦可執行指令可執行一方法,該方法包含:接收一第一類別及一第二類別,該第一類別係定義一第一異類固態儲存位置之一第一輸入/輸出存取頻率特性,該第二類別係定義一第二異類固態儲存位置之一第二輸入/輸出存取頻率特性;基於與已接收資料相關之輸入/輸出作業,判定該已接收資料之特性,該已接收資料之特性指示對於該資料之輸入/輸出作業之預期事件;及基於該等特性,判定部分或全部之該已接收資料是否對應於該第一輸入/輸出存取頻率特性、該第二輸入/輸出存取頻率特性或該第一輸入/輸出存取頻率特性及該第二輸入/輸出存取頻率特性兩者;基於該已接收資料之該已判定特性及該第一與第二 輸入/輸出存取頻率特性,在該第一及第二異類固態儲存位置間配置該已接收資料;及基於該已配置資料之一或更多個監控屬性,該已配置資料之一或更多個監控屬性係鑒於該第一及第二輸入/輸出存取頻率特性,在該第一及第二異類固態儲存位置間重新配置資料;該資料包含一檔案及該一或更多個監控屬性,該一或更多個監控屬性包含藉由該電腦對該檔案之一存取頻率。
  10. 如申請專利範圍第9項所述之電腦可讀取儲存媒體,其中該接收該第一及第二異類固態儲存位置之類別之步驟包含:使用一作業系統以判定該第一及第二類別。
  11. 如申請專利範圍第9項所述之電腦可讀取儲存媒體,其中判定特性之步驟包含:使用一資料重要性特性。
  12. 如申請專利範圍第9項所述之電腦可讀取儲存媒體包含:使用一單一可定址儲存名稱空間,該單一可定址儲存名稱空間代表該第一及第二異類固態儲存位置之一聚集。
  13. 如申請專利範圍第9項所述之電腦可讀取儲存媒體,其中判定特性之步驟包含:存取一檔案之屬性,其中儲存該檔案於該第一及第二異類固態儲存位置中的其中一個。
  14. 如申請專利範圍第9項所述之電腦可讀取儲存媒體包含:經由該第一及第二異類固態儲存位置支援一作業系統。
  15. 如申請專利範圍第9項所述之電腦可讀取儲存媒體包含:經由利用該第一及第二異類固態儲存位置模擬一硬碟機。
  16. 如申請專利範圍第9項所述之電腦可讀取儲存媒體,其中該一或更多個監控屬性進一步包含以下的至少一個:該檔案對於今日作業之重要性、該檔案之檔案大小及與輸入/輸出作業相關之資料,該輸入/輸出作業係與該檔案相關。
  17. 一種計算裝置,包含:一或更多個處理器;及一電腦可讀取儲存媒體,該電腦可讀取儲存媒體包含電 腦可執行指令,當藉由該一或更多個處理器執行該等電腦可執行指令時,該等電腦可執行指令執行操作,該等操作包含:接收一第一類別及一第二類別,該第一類別係定義一第一異類固態儲存位置之一第一輸入/輸出存取頻率特性,該第二類別係定義一第二異類固態儲存位置之一第二輸入/輸出存取頻率特性;基於與已接收資料相關之輸入/輸出作業,判定該已接收資料之特性,該已接收資料之特性指示對於該資料之輸入/輸出作業之預期事件;及基於該等特性,判定部分或全部之該已接收資料是否對應於該第一輸入/輸出存取頻率特性、該第二輸入/輸出存取頻率特性或該第一輸入/輸出存取頻率特性及該第二輸入/輸出存取頻率特性兩者;基於該已接收資料之該已判定特性及該第一與第二輸入/輸出存取頻率特性,在該第一及第二異類固態儲存位置間配置該已接收資料;及基於該已配置資料之一或更多個監控屬性,該已配置資料之一或更多個監控屬性係鑒於該第一及第二輸入/輸出存取頻率特性,在該第一及第二異類固態儲存位置間重新配置資料;該資料包含一檔案及該一或更多個監控屬性,該一或更多個監控屬性包含藉由該電腦對該檔案之一存取頻率。
  18. 如申請專利範圍第17項所述之裝置,該等操作包含使用一作業系統以判定該第一及第二類別。
  19. 如申請專利範圍第17項所述之裝置,該等操作包含使用一資料重要性特性。
  20. 如申請專利範圍第17項所述之裝置,該等操作包含使用一單一可定址儲存名稱空間,該單一可定址儲存名稱空間代表該第一及第二異類固態儲存位置之一聚集。
TW097107542A 2007-03-06 2008-03-04 用於選擇性使用複數個異類固態儲存位置之方法、電腦可讀取儲存媒體及計算裝置 TWI432958B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/714,585 US7657572B2 (en) 2007-03-06 2007-03-06 Selectively utilizing a plurality of disparate solid state storage locations

Publications (2)

Publication Number Publication Date
TW200844739A TW200844739A (en) 2008-11-16
TWI432958B true TWI432958B (zh) 2014-04-01

Family

ID=39738794

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097107542A TWI432958B (zh) 2007-03-06 2008-03-04 用於選擇性使用複數個異類固態儲存位置之方法、電腦可讀取儲存媒體及計算裝置

Country Status (9)

Country Link
US (3) US7657572B2 (zh)
EP (1) EP2118751A4 (zh)
JP (2) JP5149912B2 (zh)
KR (1) KR101482285B1 (zh)
CN (1) CN101627372B (zh)
BR (1) BRPI0807899A8 (zh)
RU (1) RU2463648C2 (zh)
TW (1) TWI432958B (zh)
WO (1) WO2008109736A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003284329A1 (en) 2002-10-22 2004-05-13 Isys Technologies Robust customizable computer processing system
AU2003285949A1 (en) 2002-10-22 2004-05-13 Isys Technologies Non-peripherals processing control module having improved heat dissipating properties
US7075784B2 (en) * 2002-10-22 2006-07-11 Sullivan Jason A Systems and methods for providing a dynamically modular processing unit
US20100250826A1 (en) * 2009-03-24 2010-09-30 Micron Technology, Inc. Memory systems with a plurality of structures and methods for operating the same
US8560639B2 (en) 2009-04-24 2013-10-15 Microsoft Corporation Dynamic placement of replica data
US8935366B2 (en) * 2009-04-24 2015-01-13 Microsoft Corporation Hybrid distributed and cloud backup architecture
US8769055B2 (en) 2009-04-24 2014-07-01 Microsoft Corporation Distributed backup and versioning
US8769049B2 (en) 2009-04-24 2014-07-01 Microsoft Corporation Intelligent tiers of backup data
TWI494766B (zh) * 2009-07-07 2015-08-01 Apacer Technology Inc 可提升作業速度之儲存模組及其作業方法
US8700841B2 (en) 2010-04-19 2014-04-15 International Business Machines Corporation Sub-LUN input/output profiling for SSD devices
US9285991B2 (en) 2011-04-29 2016-03-15 International Business Machines Corporation System, method and program product to schedule transfer of data
US8341312B2 (en) 2011-04-29 2012-12-25 International Business Machines Corporation System, method and program product to manage transfer of data to resolve overload of a storage system
US8923045B2 (en) 2012-05-31 2014-12-30 Seagate Technology Llc Multi-level cell (MLC) update with protected mode capability
CN103902226B (zh) * 2012-12-27 2017-08-04 宏碁股份有限公司 数据写入方法与系统
WO2014138448A1 (en) * 2013-03-06 2014-09-12 Sullivan Jason A Systems and methods for providing dynamic hybrid storage
US8924824B1 (en) 2013-03-12 2014-12-30 Western Digital Technologies, Inc. Soft-decision input generation for data storage systems
US9576039B2 (en) 2014-02-19 2017-02-21 Snowflake Computing Inc. Resource provisioning systems and methods
JP6394698B2 (ja) * 2014-06-20 2018-09-26 株式会社ニコン 情報記憶装置、情報記憶システム、及び情報記憶制御プログラム
KR102397582B1 (ko) 2015-06-22 2022-05-13 삼성전자주식회사 데이터 저장 장치, 이를 포함하는 데이터 처리 시스템, 및 이의 작동 방법
US10866912B2 (en) 2017-03-10 2020-12-15 Toshiba Memory Corporation Integrated heterogeneous solid state storage drive
US10521143B2 (en) 2017-03-23 2019-12-31 Netapp Inc. Composite aggregate architecture
US11205229B1 (en) * 2017-08-04 2021-12-21 EMC IP Holding Company LLC Content storage management based on multidimensional valuation models
KR102611566B1 (ko) 2018-07-06 2023-12-07 삼성전자주식회사 솔리드 스테이트 드라이브 및 그의 메모리 할당 방법

Family Cites Families (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5490260A (en) 1990-12-14 1996-02-06 Ceram, Inc. Solid-state RAM data storage for virtual memory computer using fixed-sized swap pages with selective compressed/uncompressed data store according to each data size
US5491810A (en) * 1994-03-01 1996-02-13 International Business Machines Corporation Method and system for automated data storage system space allocation utilizing prioritized data set parameters
DE19540915A1 (de) * 1994-11-10 1996-05-15 Raymond Engineering Redundante Anordnung von Festkörper-Speicherbausteinen
US5568423A (en) 1995-04-14 1996-10-22 Unisys Corporation Flash memory wear leveling system providing immediate direct access to microprocessor
JPH0944381A (ja) * 1995-07-31 1997-02-14 Toshiba Corp データ格納方法およびデータ格納装置
US5835935A (en) 1995-09-13 1998-11-10 Lexar Media, Inc. Method of and architecture for controlling system data with automatic wear leveling in a semiconductor non-volatile mass storage memory
US6711666B1 (en) * 1995-11-29 2004-03-23 Zf Micro Solutions, Inc. IBM PC compatible multi-chip module
JP2856152B2 (ja) * 1996-05-30 1999-02-10 日本電気株式会社 カーネルデバッガにおけるソフトウェアブレークポイント管理方式
US5787484A (en) 1996-08-08 1998-07-28 Micron Technology, Inc. System and method which compares data preread from memory cells to data to be written to the cells
US5905757A (en) 1996-10-04 1999-05-18 Motorola, Inc. Filter co-processor
US6418506B1 (en) 1996-12-31 2002-07-09 Intel Corporation Integrated circuit memory and method for transferring data using a volatile memory to buffer data for a nonvolatile memory array
EP0968468B1 (en) 1997-03-21 2003-02-26 Canal+ Technologies Computer memory organization and method therefor
US6154788A (en) * 1997-04-25 2000-11-28 Simple Technology, Inc. Multi-function module incorporating flash memory having additional controller adapted to configure the data from the memory that is to be provided to the external source
KR100564664B1 (ko) * 1997-10-08 2006-03-29 시게이트 테크놀로지 엘엘씨 데이터 저장 장치용 하이브리드 데이터 저장과 재구성시스템 및 방법
US6189069B1 (en) 1998-02-17 2001-02-13 Microsoft Corporation Optimized logging of data elements to a data storage device
JP2000036947A (ja) 1998-07-17 2000-02-02 Mitsubishi Electric Corp 映像蓄積配信表示装置
JP4085478B2 (ja) * 1998-07-28 2008-05-14 ソニー株式会社 記憶媒体及び電子機器システム
JP2000201333A (ja) 1999-01-05 2000-07-18 Matsushita Electric Ind Co Ltd 多重化通信装置
US6145069A (en) 1999-01-29 2000-11-07 Interactive Silicon, Inc. Parallel decompression and compression system and method for improving storage density and access speed for non-volatile memory and embedded memory devices
US8078794B2 (en) 2000-01-06 2011-12-13 Super Talent Electronics, Inc. Hybrid SSD using a combination of SLC and MLC flash memory arrays
US20050160218A1 (en) * 2004-01-20 2005-07-21 Sun-Teck See Highly integrated mass storage device with an intelligent flash controller
US7509420B2 (en) * 2000-02-18 2009-03-24 Emc Corporation System and method for intelligent, globally distributed network storage
US20030046396A1 (en) * 2000-03-03 2003-03-06 Richter Roger K. Systems and methods for managing resource utilization in information management environments
US20020174227A1 (en) * 2000-03-03 2002-11-21 Hartsell Neal D. Systems and methods for prioritization in information management environments
US6883044B1 (en) 2000-07-28 2005-04-19 Micron Technology, Inc. Synchronous flash memory with simultaneous access to one or more banks
US7689510B2 (en) * 2000-09-07 2010-03-30 Sonic Solutions Methods and system for use in network management of content
JP2002132454A (ja) 2000-10-19 2002-05-10 Xaxon R & D Corp 圧縮伸張装置を備えた半導体ディスク装置
US6681506B2 (en) 2000-10-27 2004-01-27 The Procter & Gamble Company Process for the ironing of fabrics, and refill cartridge for irons
JP2002149456A (ja) 2000-11-07 2002-05-24 Matsushita Electric Ind Co Ltd 可搬性記憶媒体、可搬性記憶媒体におけるファイル管理方法及び携帯端末
EP1205838A3 (en) * 2000-11-07 2007-10-10 Matsushita Electric Industrial Co., Ltd. Carryable memory media, portable information terminal using the same and method for managing files therein
KR100389867B1 (ko) 2001-06-04 2003-07-04 삼성전자주식회사 플래시 메모리 관리방법
US7454446B2 (en) * 2001-08-31 2008-11-18 Rocket Software, Inc. Techniques for storing data based upon storage policies
KR100393619B1 (ko) * 2001-09-07 2003-08-02 삼성전자주식회사 휴대 단말기의 메모리 장치 및 그 제어방법
KR100454119B1 (ko) 2001-10-24 2004-10-26 삼성전자주식회사 캐쉬 기능을 갖는 불 휘발성 반도체 메모리 장치 및 그것의 프로그램, 읽기, 그리고 페이지 카피백 방법들
US7127550B1 (en) * 2001-10-31 2006-10-24 Sandisk Corporation Multi-module simultaneous program, erase test, and performance method for flash memory
JP4162184B2 (ja) * 2001-11-14 2008-10-08 株式会社日立製作所 データベース管理システムの実行情報を取得する手段を有する記憶装置
RU2189630C1 (ru) 2001-11-21 2002-09-20 Бабаян Борис Арташесович Способ фильтрации межпроцессорных запросов в многопроцессорных вычислительных системах и устройство для его осуществления
US6681309B2 (en) * 2002-01-25 2004-01-20 Hewlett-Packard Development Company, L.P. Method and apparatus for measuring and optimizing spatial segmentation of electronic storage workloads
US20050036387A1 (en) 2002-04-24 2005-02-17 Seal Brian K. Method of using flash memory for storing metering data
US20040025162A1 (en) * 2002-07-31 2004-02-05 Fisk David C. Data storage management system and method
JP4063615B2 (ja) 2002-08-30 2008-03-19 Necエレクトロニクス株式会社 不揮発性メモリおよびその書き込み処理方法
US7020758B2 (en) 2002-09-18 2006-03-28 Ortera Inc. Context sensitive storage management
JP4199519B2 (ja) * 2002-11-05 2008-12-17 パナソニック株式会社 メモリ管理装置及びメモリ管理方法
US6993603B2 (en) 2002-12-09 2006-01-31 Microsoft Corporation Managed file system filter model and architecture
US7814128B2 (en) 2003-05-30 2010-10-12 Symantec Operating Corporation Multi-volume file support
TWI220959B (en) 2003-06-05 2004-09-11 Carry Computer Eng Co Ltd Storage device with optimized compression management mechanism
ITVA20030025A1 (it) 2003-07-17 2005-01-18 Lamberti Spa Depolimerizzazione enzimatica di carbossimetilcellulosa e relativi prodotti.
KR100546348B1 (ko) 2003-07-23 2006-01-26 삼성전자주식회사 플래시 메모리 시스템 및 그 데이터 저장 방법
US6917542B2 (en) * 2003-07-29 2005-07-12 Sandisk Corporation Detecting over programmed memory
US6876579B2 (en) 2003-08-04 2005-04-05 Phison Electronics Corp. Method writing data to a large block of a flash memory cell
WO2005050453A1 (ja) 2003-11-18 2005-06-02 Matsushita Electric Industrial Co., Ltd. ファイル記録装置
US20090193184A1 (en) 2003-12-02 2009-07-30 Super Talent Electronics Inc. Hybrid 2-Level Mapping Tables for Hybrid Block- and Page-Mode Flash-Memory System
US7477812B2 (en) 2003-12-30 2009-01-13 Massachusetts Institute Of Technology System and method for providing fast, low voltage integrated optical elements
JP4568502B2 (ja) * 2004-01-09 2010-10-27 株式会社日立製作所 情報処理システムおよび管理装置
EP1720119A4 (en) 2004-03-31 2008-01-23 Matsushita Electric Ind Co Ltd MEMORY CARD AND MEMORY CARD SYSTEM
US8352697B2 (en) * 2004-05-17 2013-01-08 Sandisk Il Ltd. Method of managing files for optimal performance
US7702848B2 (en) * 2004-06-10 2010-04-20 Marvell World Trade Ltd. Adaptive storage system including hard disk drive with flash interface
US20060069896A1 (en) * 2004-09-27 2006-03-30 Sigmatel, Inc. System and method for storing data
JP4956922B2 (ja) * 2004-10-27 2012-06-20 ソニー株式会社 記憶装置
US7631023B1 (en) * 2004-11-24 2009-12-08 Symantec Operating Corporation Performance-adjusted data allocation in a multi-device file system
US20060117018A1 (en) 2004-11-30 2006-06-01 Microsoft Corporation Method and system for caching remote files locally
US7087953B2 (en) * 2004-12-03 2006-08-08 Aplus Flash Technology, Inc. Unified non-volatile memory device and method for integrating NOR and NAND-type flash memory and EEPROM device on a single substrate
KR100684942B1 (ko) * 2005-02-07 2007-02-20 삼성전자주식회사 복수의 사상 기법들을 채용한 적응형 플래시 메모리 제어장치 및 그것을 포함한 플래시 메모리 시스템
KR100590388B1 (ko) 2005-03-10 2006-06-19 주식회사 하이닉스반도체 멀티-플레인 타입 플래쉬 메모리 장치와, 그 프로그램 동작및 리드 동작 제어 방법
KR100626392B1 (ko) 2005-04-01 2006-09-20 삼성전자주식회사 읽기 속도를 향상시킬 수 있는 플래시 메모리 장치
KR100704037B1 (ko) 2005-04-15 2007-04-04 삼성전자주식회사 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법
JP2007004710A (ja) * 2005-06-27 2007-01-11 Nec Corp ストレージアクセス方式、データ転送装置、ストレージアクセス方法、及びプログラム
JP2006059374A (ja) * 2005-09-16 2006-03-02 Hitachi Ltd 記憶制御装置
JP4933861B2 (ja) * 2005-09-22 2012-05-16 株式会社日立製作所 ストレージ制御装置、データ管理システムおよびデータ管理方法
US20070078914A1 (en) * 2005-09-30 2007-04-05 International Business Machines Corporation Method, apparatus and program storage device for providing a centralized policy based preallocation in a distributed file system
US8286159B2 (en) * 2005-12-22 2012-10-09 Alan Joshua Shapiro Method and apparatus for gryphing a data storage medium
US7555575B2 (en) * 2006-07-27 2009-06-30 Hitachi, Ltd. Method and apparatus for migrating data between storage volumes of different data pattern
US20080228998A1 (en) 2007-03-16 2008-09-18 Spansion Llc Memory storage via an internal compression algorithm

Also Published As

Publication number Publication date
RU2463648C2 (ru) 2012-10-10
JP2012014706A (ja) 2012-01-19
US7657572B2 (en) 2010-02-02
JP2010520568A (ja) 2010-06-10
BRPI0807899A8 (pt) 2017-01-17
EP2118751A1 (en) 2009-11-18
KR20100014884A (ko) 2010-02-11
JP5384576B2 (ja) 2014-01-08
US8126939B2 (en) 2012-02-28
EP2118751A4 (en) 2010-09-29
US9535625B2 (en) 2017-01-03
US20120110264A1 (en) 2012-05-03
CN101627372A (zh) 2010-01-13
RU2009133317A (ru) 2011-03-10
BRPI0807899A2 (pt) 2014-06-17
US20100095083A1 (en) 2010-04-15
JP5149912B2 (ja) 2013-02-20
CN101627372B (zh) 2012-08-29
US20080222346A1 (en) 2008-09-11
TW200844739A (en) 2008-11-16
KR101482285B1 (ko) 2015-01-13
WO2008109736A1 (en) 2008-09-12

Similar Documents

Publication Publication Date Title
TWI432958B (zh) 用於選擇性使用複數個異類固態儲存位置之方法、電腦可讀取儲存媒體及計算裝置
US9037720B2 (en) Template for optimizing IT infrastructure configuration
US9723080B2 (en) Storage management computer and method for avoiding conflict by adjusting the task starting time and switching the order of task execution
US20100175021A1 (en) Overflow Viewing Window
US11880610B2 (en) Storage location assignment at a cluster compute server
JP4644740B2 (ja) シミュレーションシステム、およびシミュレーションプログラム
JP4967266B2 (ja) デバイス制御システム、及びデバイス制御処理方法
CN102393838B (zh) 数据处理方法及装置、pci-e总线系统、服务器
JP5627506B2 (ja) データ処理装置
US20240004823A1 (en) Dynamic topology discovery and management
JP7473767B1 (ja) 印刷物および情報処理システム
JP2019133222A (ja) 情報処理システム、情報処理方法及びプログラム
JP7103804B2 (ja) ユーザインタフェース制御装置、ユーザインタフェース制御方法、及び、ユーザインタフェース制御プログラム
KR102605522B1 (ko) 펑션 보드를 이용한 고객 협동 개발 시스템 및 이에 포함되는 서버
CN117724714A (zh) 工作流创建方法、装置、电子设备和计算机可读存储介质
Syrewicze et al. Connecting Hyper-V Hosts to Storage Infrastructure
WO2024005774A1 (en) Embedded milestone status
CN118170352A (zh) 用于开发控制器的云端系统、控制器开发方法与控制器
JP5729768B2 (ja) 計算機のデバイス設定方法及び計算機
JP2006079215A (ja) 情報処理装置、移行プログラム、及び移行制御方法
JP2011039722A (ja) Gpibファイルアクセス装置
Gupta All-in-one panels vs. PACs: Which is right for your application?
JP2006146354A (ja) 性能評価方法、性能評価装置、性能評価プログラム
JP2012191477A (ja) パケット生成装置及びパケット生成方法及びプログラム
JP2015125579A (ja) 論理回路設計方法及び方法

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees