[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

DE112008003256T5 - Verteilung und Speichervolumen auf Laufwerksbereiche mit intelligenter Dateiablage und/oder -umordnung - Google Patents

Verteilung und Speichervolumen auf Laufwerksbereiche mit intelligenter Dateiablage und/oder -umordnung Download PDF

Info

Publication number
DE112008003256T5
DE112008003256T5 DE112008003256T DE112008003256T DE112008003256T5 DE 112008003256 T5 DE112008003256 T5 DE 112008003256T5 DE 112008003256 T DE112008003256 T DE 112008003256T DE 112008003256 T DE112008003256 T DE 112008003256T DE 112008003256 T5 DE112008003256 T5 DE 112008003256T5
Authority
DE
Germany
Prior art keywords
drive
file
faster
slower
files
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
DE112008003256T
Other languages
English (en)
Inventor
James A. Hillsboro Boyd
Amber Banks Huffman
Knut Forest Grove Grimsrud
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel 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
Application filed by Intel Corp filed Critical Intel Corp
Publication of DE112008003256T5 publication Critical patent/DE112008003256T5/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Verfahren, das Folgendes umfasst:
Bestimmen, ob eine Datei auf einem langsameren Laufwerk eines logischen Speichervolumenbereichs oder auf einem schnelleren Laufwerk des logischen Speichervolumenbereichs abgelegt werden soll; und
Ablegen der Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk basierend auf diesem Bestimmen;
wobei ein Nutzer keine Kenntnis darüber zu haben braucht, ob die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde.

Description

  • TECHNISCHES GEBIET
  • Die Erfindungen betreffen allgemein die Verteilung von Speichervolumen auf Laufwerksbereiche mit intelligenter Dateiablage und/oder -umordnung.
  • ALLGEMEINER STAND DER TECHNIK
  • Ein Computersystem kann eine oder mehrere zentrale Verarbeitungseinheiten (CPUs) oder einen oder mehrere Prozessoren enthalten. Die CPUs können – beispielsweise über einen Bus – mit einem Chipsatz gekoppelt sein. Der Chipsatz kann einen Speicher-Controller-Hub (MCH) enthalten, der einen Speicher-Controller enthält, der mit einem Systemspeicher gekoppelt ist. Der Systemspeicher speichert Daten und reagiert auf den Speicher-Controller mit einer Abfolge von Instruktionen, die durch die CPUs oder Verarbeitungsbausteine des Computersystems ausgeführt werden. Der MCH kann außerdem beispielsweise einen Anzeige-Controller enthalten, der mit einer Anzeige gekoppelt ist. Der Chipsatz kann des Weiteren einen Eingabe/Ausgabe-Controlhub (ICH) enthalten, der zum Beispiel über eine Hub-Schnittstelle mit dem MCH gekoppelt ist. Der ICH kann beispielsweise mit einem oder mehreren Eingabe/Ausgabe (E/A)-Geräten gekoppelt sein. Der ICH kann außerdem mit einem Peripheriebus (zum Beispiel einem Peripheral Component Interconnect- oder PCI-Bus) gekoppelt sein. Eine PCI-Brücke kann mit dem PCI-Bus gekoppelt sein, um einen Datenpfad zwischen den CPUs und den Peripheriegeräten zu bilden. Der ICH ist oft gekoppelt mit einer oder mehreren Speichervorrichtungen gekoppelt, einschließlich beispielsweise einem oder mehreren Festplattenlaufwerken.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Die Erfindungen werden anhand der folgenden detaillierten Beschreibung und anhand der begleitenden Zeichnungen einiger Ausführungsformen der Erfindungen besser verstanden.
  • Die Beschreibung und die Zeichnungen dienen jedoch nicht der Beschränkung der Erfindungen auf die konkret beschriebenen Ausführungsformen, sondern lediglich der Erklärung und dem besseren Verständnis.
  • 1 veranschaulicht ein System gemäß einigen Ausführungsformen der Erfindungen.
  • 2 veranschaulicht einen Verfahrensablauf gemäß einigen Ausführungsformen der Erfindungen.
  • 3 veranschaulicht ein System gemäß einigen Ausführungsformen der Erfindungen.
  • 4 veranschaulicht ein System gemäß einigen Ausführungsformen der Erfindungen.
  • DETAILLIERTE BESCHREIBUNG
  • Einige Ausführungsformen der Erfindungen betreffen die Verteilung von Speichervolumen auf Laufwerksbereiche mit intelligenter Dateiablage und/oder -umordnung.
  • In einigen Ausführungsformen wird eine Bestimmung vorgenommen, ob eine Datei auf einem langsameren Laufwerk eines logischen Speichervolumenbereichs oder auf einem schnelleren Laufwerk des logischen Speichervolumenbereichs abgelegt werden soll. Die Datei wird anhand der Bestimmung auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt, und ein Nutzer braucht keine Kenntnis darüber zu haben, ob die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde.
  • In einigen Ausführungsformen enthält ein System einen logischen Speichervolumenbereich, der ein schnelleres Laufwerk und ein langsameres Laufwerk enthält. Ein Controller bestimmt, ob eine Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen ist, und legt die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk ab. Ein Nutzer braucht sich nicht darum zu kümmern, ob die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde.
  • In einigen Ausführungsformen enthält ein Gegenstand ein computerlesbares Medium, auf dem sich Instruktionen befinden, die, wenn sie ausgeführt werden, einen Computer veranlassen zu bestimmen, ob eine Datei auf einem langsameren Laufwerk eines logischen Speichervolumenbereichs oder auf einem schnelleren Laufwerk des logischen Speichervolumenbereichs abgelegt werden soll, und die Datei anhand der Bestimmung auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen. Ein Nutzer braucht sich nicht darum zu kümmern, ob die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde.
  • 1 veranschaulicht ein System 100 gemäß einigen Ausführungsformen. In einigen Ausführungsformen ist das System 100 ein Computersystem. In einigen Ausführungsformen ist das System 100 ein Speichersystem. In einigen Ausführungsformen enthält das System 100 eine zentrale Verarbeitungseinheit (CPU) oder einen Prozessor 102, einen Speicher-Controller-Hub (MCH) 104, einen Eingabe/Ausgabe-Controller-Hub (ICH) 106, einen Speicher 108 und eine Speichervorrichtung 110. Der MCH 104 enthält einen Speicher-Controller, der die Aktionen des Speichers 108 steuert (zum Beispiel Lesen, Schreiben usw.) Die CPU 102 ist mit dem MCH 104 gekoppelt, und der MCH 104 ist außerdem mit dem ICH 106 und dem Speicher 108 gekoppelt, wie in 1 veranschaulicht. Der ICH 106 ist mit einer Speichervorrichtung 110 gekoppelt, die zum Beispiel ein oder mehrere Festplattenlaufwerke und/oder ein oder mehrere Festkörperlaufwerke (SSDs) enthält. In einigen Ausführungsformen befinden sich alle oder einige der Elemente des Systems 100 auf einer Hauptplatine. In einigen Ausführungsformen kann eine andere Aufteilung zwischen den Blöcken vorhanden sein; zum Beispiel kann der Speicher-Controller in dem CPU-Block anstatt im MCH-Block enthalten sein.
  • In einigen Ausführungsformen enthält das System 100 mehr als eine CPU und ist nicht auf eine CPU 102 beschränkt, wie in 1 veranschaulicht. In einigen Ausführungsformen können die CPUs des Systems 100 mit einem Chipsatz gekoppelt sein (zum Beispiel über einen Bus für jede CPU und/oder über einen gemeinsamen Bus). Der Chipsatz kann einen Speicher-Controller-Hub (MCH) 104 und einen Eingabe/Ausgabe-Controller-Hub (ICH) 106 enthalten. In einigen Ausführungsformen kann der Speicher 108 Daten und/oder Abfolgen von Instruktionen speichern, die durch die CPUs oder Verarbeitungsbausteine des Computersystems ausgeführt werden. In einigen Ausführungsformen kann der MCH 104 außerdem zum Beispiel einen Anzeige-Controller enthalten, der mit einer Anzeige gekoppelt ist. In einigen Ausführungsformen kann der ICH 106 zum Beispiel über eine Hub-Schnittstelle mit dem MCH 104 gekoppelt sein. In einigen Ausführungsformen kann der ICH 106 außerdem zum Beispiel mit einer oder mehreren Eingabe/Ausgabe (E/A)-Geräten (einschließlich beispielsweise der Speichervorrichtung 110) gekoppelt sein. In einigen Ausführungsformen kann der ICH 106 außerdem mit einem Peripherie-Bus (zum Beispiel einem Peripheral Component Interconnect- oder PCI-Bus) gekoppelt sein. Eine PCI-Brücke kann mit dem PCI-Bus gekoppelt sein, um einen Datenpfad zwischen der CPU 102 und den Peripheriegeräten, wie zum Beispiel einer Speichervorrichtung 110, zu bilden.
  • Wie oben angesprochen, enthält die Speichervorrichtung 110 in einigen Ausführungsformen ein oder mehrere Festplattenlaufwerke. Jedoch hat die Leistungsentwicklung von rotierenden (das heißt mechanischen) Festplattenlaufwerken nicht mit dem Tempo Schritt gehalten, mit dem sich der Rest des Computersystem oder der Computerplattform entwickelt hat. Während sich zum Beispiel die CPU-Leistung weiterhin proportional skaliert hat, hat sich die Leistung von Festplattenlaufwerken lediglich logarithmisch verbessert. Für viele Prozesse ist der Leistungsengpass eindeutig die Festplatte. Darum enthält die Speichervorrichtung 110 in einigen Ausführungsformen ein oder mehrere Festplattenlaufwerke und außerdem ein oder mehrere Festkörperlaufwerke (SSDs). In einigen Ausführungsformen enthält die Speichervorrichtung 110 ein oder mehrere langsamere (und/oder kapazitätsstärkere) Laufwerke und ein oder mehrere schnellere (und/oder kapazitätsschwächere) Laufwerke.
  • Seit kurzem weiß man, dass neue Technologien zum Steigern der effektiven Festplattengeschwindigkeit verwendet werden können (zum Beispiel mittels nicht-flüchtiger Festkörperspeicher wie zum Beispiel Flash-Speicher, NAND-Speicher usw.) Eine Alternative ist die Verwendung von Festkörperlaufwerken (SSDs), die nicht den gleichen Leistungsbeschränkungen unterworfen sind wie mechanische Plattenlaufwerke. Jedoch sind die Kosten pro Bit eines nicht-flüchtigen Festkörperspeichers viel höher als die von herkömmlichen rotierenden Festplattenlaufwerken. Infolge dessen ist die Kapazität von nicht-flüchtigen Festkörperspeichern im Vergleich zu mechanischen Festplattenlaufwerken eher bescheiden.
  • In einigen Ausführungsformen wird eine Lösung bereitgestellt, die eine Brücke zwischen den Kapazitätsvorteilen einer kapazitätsstärkeren, aber langsameren mechanischen Festplatte und den Geschwindigkeitsvorteilen der kapazitätsschwächeren, aber schnelleren Festkörperlaufwerke (SSDs) schlägt. Das ist besonders bei Anwendungen vorteilhaft, in denen ein Nutzer eine Speicherkapazität benötigt, die höher ist als die, die eine kosteneffektive SSD bietet. In einigen Ausführungsformen wird eine Volumenaufteilung von einem oder mehreren langsameren (und/oder kapazitätsstärkeren) Laufwerken (zum Beispiel einem mechanischen Festplattenlaufwerk oder HDD, wie zum Beispiel einer rotierenden Festplatte) und einer oder mehreren schnelleren (und/oder kapazitätsschwächeren) Laufwerken (zum Beispiel einem Festkörperlaufwerk) mit intelligenter Dateiablage und/oder -umordnung ausgeführt. In einigen Ausführungsformen basiert zum Beispiel die Dateiablage in einem Volumen auf dem Dateityp und/oder der Dateigröße und/oder auf einer Art des Zugriffs auf die Datei (zum Beispiel sequenzieller Zugriff auf Dateien auf dem langsameren und/oder rotierenden Laufwerk und/oder Direktzugriff auf Dateien auf dem schnelleren und/oder Festkörperlaufwerk) und/oder auf der Grundlage einer Heuristik.
  • In einigen Ausführungsformen können Dateien anhand ihrer Dateigröße zu dem schnelleren Laufwerk und/oder dem langsameren Laufwerk verschoben werden. Dies kann relativ zur Dateigröße anstatt relativ zur Kapazität der schnelleren und/oder langsameren Laufwerke erfolgen. Zum Beispiel kann in einigen Ausführungsformen eine kleinere Dateigröße – gegenüber einer größeren Dateigröße – bevorzugt auf dem kleineren und/oder schnelleren Laufwerk abgelegt werden, selbst wenn sie heuristisch für identisch befunden werden.
  • In einigen Ausführungsformen werden zum Beispiel ein oder mehrere Faktoren wie zum Beispiel Dateityp, Dateigröße, Anzahl der Dateizugriffe, Arten der Dateizugriffe (zum Beispiel direkt und/oder sequenziell), verfügbarer Platz auf dem schnelleren Laufwerk (und/oder SSD) und/oder verfügbarer Platz auf dem langsameren Laufwerk (und/oder HDD) ganzheitlich in Betracht gezogen, um den Ort der Dateiablage zu bestimmen, anstatt zum Beispiel jede Datei isoliert zu betrachten und eine Bestimmung vorzunehmen.
  • In einigen Ausführungsformen kann die Heuristik beinhalten, zum Beispiel das Energiemanagement zu berücksichtigen und/oder neue Dateien (zum Beispiel neue temporäre Dateien) auf dem schnelleren Laufwerk (zum Beispiel Festkörperlaufwerk) abzulegen, um zum Beispiel das langsamere Laufwerk ausgeschaltet zu lassen (um zum Beispiel zu verhindern, dass sich ein viel Energie verbrauchendes Festplattenlaufwerk einschaltet). In einigen Ausführungsformen kann die Heuristik auf der Entscheidung des Nutzers und/oder des Herstellers basieren, welche Dateien auf jedem Medium abzulegen sind. In einigen Ausführungsformen können Dateien zwischen einem schnelleren Laufwerk und einem langsameren Laufwerk verschoben werden, ohne dass der Nutzer auch nur das Geringste davon merkt. Das heißt, dass zum Beispiel in einigen Ausführungsformen ein schnelleres Laufwerk und ein langsameres Laufwerk ein logisches Disk-Array bilden, wobei die Verschiebung von Dateien zwischen dem schnelleren Laufwerk und dem langsameren Laufwerk in einer für den Nutzer transparenten Weise erfolgen. In einigen Ausführungsformen wird die Priorität der Ablage von Dateien in einer Weise bestimmt, die sich nach einer Größe des schnelleren Laufwerks (zum Beispiel eines Festkörperlaufwerks) richtet. In einigen Ausführungsformen wird eine Systemkonfigurationsdatei verwendet, die den Dateien ihre Ablageorte zuweist. In einigen Ausführungsformen gibt ein Hersteller des Systems vor, wie die Priorisierung der Dateiablage zu implementieren ist (zum Beispiel eine „Pinning”-Info eines Erstausrüsters oder OEM). In einigen Ausführungsformen wird die Priorisierung der Dateiablage anhand einer Art des Zugriffs auf die Datei implementiert. Zum Beispiel werden in einigen Ausführungsformen Dateien mit sequenziellem Zugriff auf dem langsameren Laufwerk (und/oder der rotierenden Festplatte) abgelegt, und/oder Dateien mit Direktzugriff werden auf dem schnelleren Laufwerk (und/oder Festkörperlaufwerk) abgelegt.
  • Um sowohl die hohe Leistung eines schnelleren Laufwerks (zum Beispiel eines Systems mit SSD) als auch die gewaltige Speicherkapazität eines langsameren Laufwerks (zum Beispiel eines Systems mit mechanischem Laufwerk und/oder eines Systems mit rotierendem Laufwerk) zu realisieren, wird in einigen Ausführungsformen ein System bereitgestellt, das sowohl ein schnelles Laufwerk als auch ein langsameres (und/oder größeres) Laufwerk enthält. In einigen Ausführungsformen können ein schnelleres Laufwerk und ein langsameres Laufwerk implementiert werden, ohne dass einem Nutzer zwei separate Laufwerke (zum Beispiel ein Laufwerk C: und ein Laufwerk D:) angezeigt werden müssen. In einigen Ausführungsformen kann ein Nutzer auf beide Laufwerke als separate Laufwerke zugreifen, wobei Daten, die der Nutzer am häufigsten braucht, auf dem schnelleren Laufwerk verwaltet werden und weniger häufig benötigte Daten auf dem langsameren Laufwerk verwaltet werden. Jedoch würde dies ein ständiges Zutun des Nutzers und eine gewisse Fachkenntnis seitens des Nutzers erfordern, der über die Häufigkeit der Dateinutzung und andere technische Fragen Bescheid wissen muss, mit denen er sich möglicherweise gar nicht auskennt. Darum ist es in einigen Ausführungsformen vorteilhaft, einen logischen Volumenbereich mit intelligenter Dateiablage und/oder -umordnung zu verwenden, der keine Mitwirkung des Nutzers erfordert.
  • 2 veranschaulicht einen Prozessablauf 200 gemäß einigen Ausführungsformen. In einigen Ausführungsformen kann der Prozessablauf 200 in Software implementiert werden. In einigen Ausführungsformen kann der Prozessablauf 200 in Hardware, Firmware, Software und/oder Kombinationen davon implementiert werden.
  • Der Prozessablauf 200 beginnt bei 202 mit der Durchführung eines logischen Mappings des schnellen Laufwerkes. Dann wird bei 204 ein Dateizugriff überwacht. Bei 206 wird eine Bestimmung vorgenommen, ob die Datei oft benutzt wird. Wenn bei 206 festgestellt wird, dass die Datei nicht oft benutzt wird, so wird die Datei bei 208 auf einem langsameren Laufwerk abgelegt. Wenn bei 206 festgestellt wird, dass die Datei oft benutzt wird, so wird bei 210 eine Bestimmung vorgenommen, ob die Datei besser auf einem langsameren Laufwerk abgelegt werden sollte (zum Beispiel in einigen Ausführungsformen anhand des Dateityps und/oder einer Zugriffsheuristik). Wenn bei 210 festgestellt wird, dass die Datei besser auf einem langsameren Laufwerk abgelegt werden sollte, so wird die Datei bei 208 auf einem langsameren Laufwerk abgelegt. Wenn bei 210 festgestellt wird, dass die Datei besser nicht auf einem langsameren Laufwerk abgelegt werden sollte, so wird die Datei bei 212 auf einem schnelleren Laufwerk abgelegt. In einigen Ausführungsformen berücksichtigt die Heuristik eine Größe des schnelleren Laufwerks (zum Beispiel eines Festkörperlaufwerks), um zu bestimmen, wie viel auf das schnellere Laufwerk passt, und den Dateien Vorrang einzuräumen, die auf jenem Laufwerk abzulegen sind (zum Beispiel könnte in einigen Ausführungsformen 50 kleineren Dateien eine höhere Bedeutung zukommen als einer größeren Datei von der gleichen Größe wie die 50 kleineren Dateien zusammen).
  • Um sowohl die hohe Leistung eines schnelleren Laufwerks (zum Beispiel eines Systems mit SSD) als auch die gewaltige Speicherkapazität eines langsameren Laufwerks (zum Beispiel eines Systems mit mechanischem Laufwerk und/oder eines Systems mit rotierendem Laufwerk) zu realisieren, wird in einigen Ausführungsformen ein System bereitgestellt, das sowohl ein schnelles Laufwerk als auch ein langsameres (und/oder größeres) Laufwerk enthält.
  • In einigen Ausführungsformen kann ein Volumenaufteilungstreiber mit intelligenter Software verwendet werden, der dem Nutzer eine schnellere Speichervorrichtung und eine langsamere Speichervorrichtung als einen einzigen abrufbaren logischen Adressplatz darstellt. Zum Beispiel erscheint der logische Adressplatz dem Nutzer als eine einzelne Speichervorrichtung (zum Beispiel als das Laufwerk „C” oder als „C:\”). Da die beiden Speichervorrichtungen dem Betriebssystem (OS) als ein einzelner logischer Adressplatz dargestellt werden, kann Software auf höherer Ebene verwendet werden, um auf Dateien dieses Verbundvolumens zuzugreifen, ohne beachten zu müssen, dass die Laufwerke verteilt wurden. Mittels eines Software-Dienstprogramms können Dateien zwischen dem schnellen Abschnitt und dem langsameren Abschnitt des verteilten Volumens, das in dem logischen Adressplatz enthalten ist, zum Beispiel auf der Basis der Zugriffsheuristik und/oder Dateityp intelligent abgelegt und/oder verschoben werden. Auf diese Weise scheint das System in den Augen des Nutzers eine große schnelle Speichervorrichtung zu haben. Somit können die Vorteile der hohen Leistung der schnelleren Speichervorrichtung (wie zum Beispiel eines SSD) und die Vorteile der hohen Kapazität der langsameren Speichervorrichtung (wie zum Beispiel eines mechanischen Laufwerks) gleichzeitig realisiert werden. Es ist außerdem anzumerken, dass das Software-Dienstprogramm in einigen Ausführungsformen dem Nutzer die Dateiablageorte anzeigt (wenn es zum Beispiel durch den Nutzer gewünscht wird). Auf diese Weise kann das Software-Dienstprogramm vom Nutzer Feedback zur Ablage erhalten.
  • 3 veranschaulicht ein System 300 gemäß einigen Ausführungsformen. Das System 300 enthält einen logischen Volumenbereich 302. In einigen Ausführungsformen kann der logische Volumenbereich 302 in einem System wie zum Beispiel dem System 100 enthalten sein, wo das logische Volumen 302 zum Beispiel einen Datenspeicher 110 umfasst. Der logische Volumenbereich 302 enthält eine erste Speichervorrichtung 304 und eine zweite Speichervorrichtung 306. Das heißt, in einigen Ausführungsformen ist der logische Volumenbereich 302 ein zwischen zwei Laufwerken 304 und 306 verteiltes Volumen. In einigen Ausführungsformen ist die erste Speichervorrichtung 304 eine schnellere Speichervorrichtung (zum Beispiel ein SSD), und die zweite Speichervorrichtung 306 ist eine langsamere Speichervorrichtung (zum Beispiel eine mechanische Festplatte und/oder eine rotierende Festplatte). In 3 ist die erste Speichervorrichtung 304 am Anfang des logischen Volumenbereichs veranschaulicht (zum Beispiel an der logischen Adresse LBA 0 beginnend), und die zweite Speichervorrichtung 306 ist am Ende des logischen Volumenbereichs veranschaulicht (zum Beispiel am Ende der logischen Adressierung an der logischen Adresse LBA X endend). Es können jedoch auch andere Ausführungsformen implementiert werden, wo die logische Adressierung eine andere ist (zum Beispiel wo die erste Speichervorrichtung 304 eine langsamere Speichervorrichtung ist und die zweite Speichervorrichtung 306 eine schnellere Speichervorrichtung ist). In einigen Ausführungsformen ist ein schnelleres Laufwerk (zum Beispiel ein Festkörperlaufwerk) am Anfang des logischen Volumenbereichs bevorzugt, da das Betriebssystem und andere Schlüsseldateien bei einem Installationsvorgang auf dem schnelleren Laufwerk abgelegt werden.
  • 4 veranschaulicht ein System 400 gemäß einigen Ausführungsformen. Das System 400 enthält einen logischen Volumenbereich 402. In einigen Ausführungsformen kann der logische Volumenbereich 402 in einem System wie zum Beispiel dem System 100 enthalten sein, wo das logische Volumen 402 zum Beispiel einen Datenspeicher 110 umfasst. Der logische Volumenbereich 402 enthält eine erste Speichervorrichtung 404 und eine zweite Speichervorrichtung 406. Das heißt, in einigen Ausführungsformen ist der logische Volumenbereich 402 ein zwischen zwei Laufwerken 404 und 406 verteiltes Volumen. In einigen Ausführungsformen ist die erste Speichervorrichtung 404 eine schnellere Speichervorrichtung (zum Beispiel ein SSD), und die zweite Speichervorrichtung 406 ist eine langsamere Speichervorrichtung (zum Beispiel eine mechanische Festplatte und/oder eine rotierende Festplatte). In 4 ist die erste Speichervorrichtung 404 am Anfang des logischen Volumenbereichs veranschaulicht (zum Beispiel an der logischen Adresse LBA 0 beginnend), und die zweite Speichervorrichtung 406 ist am Ende des logischen Volumenbereichs veranschaulicht (zum Beispiel am Ende der logischen Adressierung an der logischen Adresse LBA X endend). Es können jedoch auch andere Ausführungsformen implementiert werden, wo die logische Adressierung eine andere ist (zum Beispiel wo die erste Speichervorrichtung 404 eine langsamere Speichervorrichtung ist und wo die zweite Speichervorrichtung 406 eine schnellere Speichervorrichtung ist).
  • Die erste Speichervorrichtung 404 enthält die Abschnitte 414, 424, 434, 444 und 454. Die zweite Speichervorrichtung 406 enthält die Abschnitte 416, 426, 436, 446 und 456. Der Pfeil 462 in 4 veranschaulicht, wie in einigen Ausführungsformen Dateien im Abschnitt 444 der ersten (schnelleren) Speichervorrichtung 404, die zum Beispiel nicht oft genutzt werden, zum Abschnitt 426 der zweiten (langsameren) Speichervorrichtung 406 verschoben werden. Gleichermaßen veranschaulicht der Pfeil 464 in 4, wie in einigen Ausführungsformen Dateien im Abschnitt 446 der zweiten (langsameren) Speichervorrichtung 406, auf die zum Beispiel oft zugegriffen wird, zum Abschnitt 424 der ersten (schnelleren) Speichervorrichtung 404 verschoben werden.
  • In einigen Ausführungsformen ist es kaum oder gar nicht von Vorteil, wenn sich Dateien, auf die selten zugegriffen wird (zum Beispiel Hilfedateien), auf der schnelleren Speichervorrichtung befinden. Sie würden auf der schnelleren Speichervorrichtung nur Speicherplatz belegen, der für nützlichere Inhalte genutzt werden könnte (zum Beispiel ausführbare Dateien von Anwendungen und/oder Arbeitsdatensätze von Nutzern usw.). In einigen Ausführungsformen können solche Dateien für eine Verschiebung auf die langsamere Speichervorrichtung (den langsameren Abschnitt des verteilten Volumens) vorgesehen werden.
  • In einigen Ausführungsformen erfolgen die Organisierung von anderen, und der Zugriff auf andere, Dateitypen, wie zum Beispiel Mediendateien, in der Regel auf/von einer Speichervorrichtung in sequenzieller Weise. Da mechanische Festplattenlaufwerke für sequenzielle Operationen (zum Beispiel mit höherem Durchsatz als NAND und/oder mit einigen SSD-Laufwerken) gut geeignet sind, sind große Mediendateien in einigen Ausführungsformen gute Kandidaten für die Verschiebung von der schnelleren Speichervorrichtung zu der langsameren Speichervorrichtung. Andere Dateien, die oft modifiziert werden (zum Beispiel Word-Dateien), werden in der Regel fragmentiert und können Teil des Arbeitsdatensatzes eines Nutzers sein und/oder werden zu Beginn nicht-sequenziell aufgerufen. Solche Dateien auf einer langsameren Speichervorrichtung (wie zum Beispiel einem rotierenden Laufwerk) verringern die Leistung noch mehr, da zusätzliche Such- und Kopfbewegungen erforderlich sind. In einigen Ausführungsformen mindert das Verschieben von Dateien zu der schnelleren Speichervorrichtung (zum Beispiel einer nicht-flüchtigen und/oder SSD-Speichervorrichtung) diese Leistungsverschlechterung und hat außerdem keine Auswirkung auf die Leistung der schnelleren Speichervorrichtung, da schnellere Speichervorrichtungen wie zum Beispiel SSDs nicht durch Fragmentierung beeinträchtigt werden.
  • In einigen Ausführungsformen wird ein Software-Dienstprogramm darüber informiert, wo sich das schnellere Laufwerk innerhalb des logischen Volumenbereichs befindet (um das Mapping des Volumens zu kennen). In einigen Ausführungsformen weiß dieses Dienstprogramm anhand der Zugriffsheuristik und/oder der Dateiattribute, wohin Dateien zu verschieben sind (zum Beispiel entweder Verschieben einer Datei zu dem schnelleren Laufwerk und/oder zu dem langsameren Laufwerk). In einigen Ausführungsformen verschiebt das Software-Dienstprogramm die ausgewählten Dateien zwischen verschiedenen Regionen des verteilten Laufwerks unter Verwendung von Operationen, die das logische Äquivalent zu Operationen sind, die verwendet werden, um Dienstprogrammdefragmentierungsoperationen (Defrag-Operationen) auszuführen. In einigen Ausführungsformen wählt und verschiebt diese verteilte intelligente Operation Dateien mit Kenntnis der Grenze des schnelleren Laufwerks (zum Beispiel des SSD-Laufwerk) in dem logischen Adressplatz. Obgleich man sich diese Operation als einer Defrag-Operation ähnelnd vorstellen kann, ist in einigen Ausführungsformen der Zweck nicht die Defragmentierung. Jedoch können in einigen Ausführungsformen Dateien als Teil der Verschiebung defragmentiert werden, so dass die Defrag-Operation des Betriebssystems nicht benötigt wird, um Dateien auf dem schnelleren Laufwerk (zum Beispiel einem Festkörperlaufwerk) zu defragmentieren.
  • In einigen Ausführungsformen würde das verteilte Anordnen eines schnelleren Laufwerks und eines langsameren Laufwerks nur bei den Dateien Vorteile mit sich bringen, die sich auf dem schnelleren Laufwerk befinden. Moderne Betriebssysteme (OSes) folgen keiner bestimmten Anordnungsweise, wenn sie Dateien auf einer Vorrichtung (das heißt, auf einem Volumen) ablegen. Infolge dessen gibt es keine Garantie, auf welcher Vorrichtung (der schnelleren oder der langsameren) die Datei abgelegt wird. Wenn Dateien, die der Nutzer oft benutzt, auf einem langsameren Laufwerk (zum Beispiel einem rotierenden Laufwerk) abgelegt werden, so wird für den Nutzer kein Vorteil erkennbar, der zeigt, dass sich der Kauf und/oder die Nutzung des schnelleren Laufwerks gelohnt hätten. In einigen Ausführungsformen hingegen wird durch intelligentes Verschieben von Dateien, mit denen der Nutzer öfter arbeitet, auf das schnellere Laufwerk, und/oder durch intelligentes Verschieben von Dateien, auf die der Nutzer seltener zugreift, auf das langsamere Laufwerk, ein Leistungsgewinn für den Nutzer erkennbar, unabhängig davon, wo die Datei zunächst abgelegt wurde, und ohne dass der Nutzer verschiedenen logische Laufwerksbuchstaben für die Dateien manuell auswählen muss (das heißt, in den Augen des Nutzers befinden sich alle Dateien auf demselben logischen Laufwerk). In einigen Ausführungsformen bleibt ein Abschnitt des schnelleren Laufwerks (zum Beispiel eines Festkörperlaufwerks) ungenutzt, so dass dieser ungenutzte Platz für das Anlegen temporärer Dateien (zum Beispiel durch das Betriebssystem) genutzt werden kann, um nicht das langsamere Laufwerk verwenden zu müssen. Dies gestattet zum Beispiel ein schnelleres Anlegen und/oder Nutzen temporärer Dateien und/oder eine Energieeinsparung, weil das langsamere Laufwerk (zum Beispiel ein rotierendes Spindel-Festplattenlaufwerk) nicht genutzt werden muss.
  • In einigen Ausführungsformen kann eine nicht-flüchtige SSD in einem System verwendet werden, um mehr Wert für einen Kunden zu schöpfen (zum Beispiel unter Verwendung von Software). Ohne Vorteile gemäß einigen Ausführungsformen würden solche Vorteile in der Regel lediglich auf den Platz der SSD-Vorrichtung beschränkt bleiben. In einigen Ausführungsformen kann ein schnelleres Laufwerk (wie zum Beispiel ein Festkörperlaufwerk) einem System hinzugefügt werden, das bereits ein langsameres Laufwerk (wie zum Beispiel ein rotierendes Festplattenlaufwerk) enthält, um das System schneller zu machen. In einigen Systemen, in denen lediglich ein schnelleres Festkörperlaufwerk verwendet wird, kann ein langsameres Festplattenlaufwerk hinzugefügt (oder dorthin verschoben) werden, wenn der Nutzer mehr Kapazität benötigt, indem – aus der Sicht des Nutzers – das Aussehen und das Empfinden eines Systems beibehalten wird, das lediglich die SSD enthält.
  • In einigen Ausführungsformen merkt ein Nutzer nichts von dem Leistungsunterschied zwischen einer langsameren größeren Speichervorrichtung und einer schnelleren kleineren Speichervorrichtung. Das heißt, der Nutzer weiß lediglich, dass eine Zusammenlegung der Kapazität der zwei Geräte stattfindet und dass die kleinere schnellere Vorrichtung einen Leistungsvorteil besitzt.
  • In einigen Ausführungsformen erfährt der Nutzer nicht, ob eine Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde. In einigen Ausführungsformen kann dem Nutzer mitgeteilt werden, ob eine Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde (zum Beispiel, wenn der Nutzer wünscht, über den Ablageort informiert zu werden, indem der Nutzer seinen Wunsch angibt). In einigen Ausführungsformen tätigt der Nutzer Eingaben für gewünschte Ablageorte und/oder gibt Präferenzen für gewünschte Ablageorte an (zum Beispiel Ablagepräferenzen auf der Grundlage bestimmter Dateitypen, bestimmter Zugriffsarten usw.).
  • In einigen Ausführungsformen wird die Dateiablage auf der Grundlage erhaltener Dateiablage-Priorisierungsinformationen (zum Beispiel von einem Nutzer und/oder von einem Hersteller des Systems) priorisiert. In einigen Ausführungsformen wird die Dateiablage auf der Grundlage einer Dateiablage-Priorisierung priorisiert, die ein Nutzer und/oder ein Hersteller des System (zum Beispiel ein Erstausrüster oder OEM) programmiert hat.
  • In einigen Ausführungsformen wird eine Bestimmung des Dateiablageortes auf der Grundlage von Dateiablage-Priorisierungsinformationen vorgenommen. In einigen Ausführungsformen sind die Dateiablage-Priorisierungsinformationen zum Beispiel mit Dateitypen und/oder der Dateigröße und/oder Arten des Zugriffs auf Dateien und/oder der Nutzungshäufigkeit von Dateien und/oder Nutzerpräferenzen und/oder Energieverwaltungseinstellungen verknüpft.
  • Obgleich einige Ausführungsformen unter Bezug auf konkrete Implementierungen beschrieben wurden, sind gemäß einigen Ausführungsformen auch andere Implementierungen möglich. Außerdem brauchen die Anordnung und/oder die Reihenfolge der Schaltkreiselemente oder anderer Merkmale, die in den Zeichnungen veranschaulicht und/oder im vorliegenden Text beschrieben sind, nicht der konkret veranschaulichten und beschriebenen Art und Weise zu entsprechen. Gemäß einigen Ausführungsformen sind viele andere Anordnungen möglich.
  • In jedem System, das in einer Figur gezeigt ist, können die Elemente in einigen Fällen jeweils die gleiche Bezugszahl oder eine andere Bezugszahl haben, um anzuzeigen, dass die dargestellten Elemente verschieden und/oder ähnlich sein könnten. Jedoch kann ein Element auch so flexibel sein, dass verschiedene Implementierungen möglich sind und dass es mit einigen oder allen der im vorliegenden Text gezeigten oder beschriebenen Systeme zusammenarbeiten kann. Die in den Figuren gezeigten verschiedenen Elemente können gleich oder voneinander verschieden sein. Welches als ein erstes Element bezeichnet wird und welches als ein zweites, ist irrelevant.
  • In der Beschreibung und in den Ansprüchen können die Begriffe „gekoppelt” und „verbunden” zusammen mit ihren Ableitungen verwendet werden. Es ist zu beachten, dass diese Begriffe nicht als Synonyme für einander gedacht sind. Vielmehr kann in bestimmten Ausführungsformen „verbunden” verwendet werden, um anzuzeigen, dass zwei oder mehr Elemente in direktem physischem oder elektrischem Kontakt miteinander stehen. „Gekoppelt” kann bedeuten, dass zwei oder mehr Elemente in direktem physischem oder elektrischem Kontakt stehen. Jedoch kann „gekoppelt” außerdem bedeuten, dass zwei oder mehr Elemente nicht in direktem Kontakt miteinander stehen, aber trotzdem zusammenwirken oder miteinander interagieren.
  • Ein Algorithmus gilt hier, und allgemein, als eine in sich geschlossene Abfolge von Aktionen oder Operationen, die zu einem gewünschten Ergebnis führen. Dazu gehören physikalische Manipulationen physikalischer Quantitäten. Gewöhnlich, wenn auch nicht notwendigerweise, nehmen diese Quantitäten die Form elektrischer oder magnetischer Signale an, die gespeichert, übertragen, kombiniert, verglichen, und auf sonstige Weise manipuliert werden können. Es hat sich gelegentlich als zweckmäßig erwiesen, besonders aus Gründen des gemeinsamen Sprachgebrauchs, diese Signale als Bits, Werte, Elemente, Symbole, Zeichen, Terme, Nummern oder dergleichen zu bezeichnen. Es ist jedoch zu beachten, dass alle diese und ähnliche Termini nicht mit den entsprechenden physikalischen Quantitäten zu assoziieren sind, sondern lediglich zweckmäßige Bezeichner sind, die diesen Quantitäten beigegeben werden.
  • Einige Ausführungsformen können in Hardware, Firmware oder Software oder in Kombinationen daraus implementiert werden. Einige Ausführungsformen können auch als Instruktionen implementiert werden, die auf einem maschinenlesbaren Medium gespeichert sind und die durch eine Computerplattform gelesen und ausgeführt werden können, um die im vorliegenden Text beschriebenen Operationen auszuführen. Ein maschinenlesbares Medium kann einen beliebigen Mechanismus zum Speichern oder Übertragen von Informationen in einer Form enthalten, die durch eine Maschine (zum Beispiel einen Computer) gelesen werden kann. Zum Beispiel kann ein maschinenlesbares Medium einen Nurlesespeicher (ROM), einen Direktzugriffsspeicher (RAM), ein Magnetdiskettenspeichermedium, ein optisches Speichermedium, Flash-Speicherbausteine, eine elektrische, optische, akustische oder sonstige Form ausgebreiteter Signale (zum Beispiel Trägerwellen, Infrarotsignale, digitale Signale, die Schnittstellen, die Signale senden und/oder empfangen usw.) und anderes enthalten.
  • Eine Ausführungsform ist eine Implementierung oder ein Beispiel der Erfindungen. Wenn in der Spezifikation von „einer Ausführungsform”, „einer bestimmten Ausführungsform”, „einigen Ausführungsformen” oder „anderen Ausführungsformen” gesprochen wird, so bedeutet das, dass ein bestimmtes Merkmal, eine bestimmte Struktur oder eine bestimmte Eigenschaft, das bzw. die in Verbindung mit den Ausführungsformen beschrieben ist, mindestens in einigen Ausführungsformen, aber nicht unbedingt in allen Ausführungsformen der Erfindungen enthalten ist. Die verschiedenen Ausdrucksweisen „eine Ausführungsform”, „eine bestimmte Ausführungsform” oder „einige Ausführungsformen” beziehen sich nicht unbedingt alle auf dieselben Ausführungsformen.
  • Nicht alle Komponenten, Merkmale, Strukturen, Eigenschaften usw., die im vorliegenden Text beschrieben und veranschaulicht sind, brauchen in einer bestimmten Ausführungsform oder in bestimmten Ausführungsformen enthalten zu sein. Wenn die Spezifikation zum Beispiel besagt, dass eine Komponente, ein Merkmal, eine Struktur oder eine Eigenschaft enthalten sein „kann” oder „könnte”, so ist es nicht erforderlich, dass die bestimmte Komponente, das bestimmte Merkmal, die bestimmte Struktur oder die bestimmte Eigenschaft auch tatsächlich enthalten ist. Wenn in der Spezifikation oder einem Anspruch von „einem” Element gesprochen wird, so bedeutet das nicht, dass es lediglich ein einziges solches Element gibt. Wenn die Spezifikation oder die Ansprüche von „einem zusätzlichen” Element sprechen, so schließt das nicht aus, dass auch mehrere der zusätzlichen Elemente vorhanden sein können.
  • Obgleich im vorliegenden Text Prozessablaufdiagramme und/oder Zustandsdiagramme verwendet worden sein können, um Ausführungsformen zu beschreiben, sind die Erfindungen nicht auf diese Diagramme oder auf entsprechende Beschreibungen im vorliegenden Text beschränkt. Zum Beispiel braucht der Prozessablauf nicht durch jedes veranschaulichte Kästchen oder jeden veranschaulichten Zustand hindurch zu verlaufen, oder braucht sich nicht in exakt der gleichen Reihenfolge zu vollziehen, wie es im vorliegenden Text veranschaulicht und beschrieben ist.
  • Die Erfindungen sind nicht auf die im vorliegenden Text genannten konkreten Details beschränkt. Der Fachmann, der in den Genuss der vorliegenden Offenbarung kommt, erkennt natürlich, dass viele weitere Variationen der vorangegangenen Beschreibung und der Zeichnungen vorgenommen werden können, ohne den Geltungsbereich der Erfindungen zu verlassen. Dementsprechend sind es die folgenden Ansprüche einschließlich ihrer Änderungen, die den Geltungsbereich der Erfindungen definieren.
  • ZUSAMMENFASSUNG
  • In einigen Ausführungsformen wird eine Bestimmung vorgenommen, ob eine Datei auf einem langsameren Laufwerk eines logischen Speichervolumenbereichs oder auf einem schnelleren Laufwerk des logischen Speichervolumenbereichs abgelegt werden soll. Die Datei wird anhand der Bestimmung auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt, und ein Nutzer braucht keine Kenntnis darüber zu haben, ob die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde. Weitere Ausführungsformen werden beschrieben und beansprucht.

Claims (26)

  1. Verfahren, das Folgendes umfasst: Bestimmen, ob eine Datei auf einem langsameren Laufwerk eines logischen Speichervolumenbereichs oder auf einem schnelleren Laufwerk des logischen Speichervolumenbereichs abgelegt werden soll; und Ablegen der Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk basierend auf diesem Bestimmen; wobei ein Nutzer keine Kenntnis darüber zu haben braucht, ob die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde.
  2. Verfahren nach Anspruch 1, wobei die Datei auf der Grundlage des Dateityps auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen ist.
  3. Verfahren nach Anspruch 1, wobei die Datei auf der Grundlage der Dateigröße auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen ist.
  4. Verfahren nach Anspruch 1, wobei die Datei auf der Grundlage einer Art des Zugriffs auf die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen ist.
  5. Verfahren nach Anspruch 1, wobei die Datei auf der Grundlage der Zugriffsheuristik auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen ist.
  6. Verfahren nach Anspruch 1, das des Weiteren ein Priorisieren des Ablageortes von Dateien auf der Grundlage der Größe des schnelleren Laufwerks umfasst.
  7. Verfahren nach Anspruch 1, wobei das schnellere Laufwerk ein Festkörperlaufwerk ist.
  8. Verfahren nach Anspruch 6, wobei das langsamere Laufwerk eine mechanische Festplatte ist.
  9. Verfahren nach Anspruch 1, wobei öfter verwendete Dateien auf dem schnelleren Laufwerk abgelegt werden und seltener verwendete Dateien auf dem langsameren Laufwerk abgelegt werden.
  10. Verfahren nach Anspruch 1, wobei das Bestimmen ein Priorisieren des Ablageortes von Dateien auf der Grundlage erhaltener Dateiablage-Priorisierungsinformationen enthält.
  11. Verfahren nach Anspruch 1, wobei das Bestimmen des Ablageortes von Dateien auf der Grundlage von Dateiablage-Priorisierungsinformationen erfolgt, die sich auf den Dateityp und/oder auf die Dateigröße und/oder auf eine Art des Zugriffs auf Dateien und/oder auf die Nutzungshäufigkeit von Dateien und/oder auf eine Nutzerpräferenz und/oder auf Energieverwaltungseinstellungen beziehen.
  12. System, das Folgendes umfasst: einen logischen Speichervolumenbereich, der ein schnelleres Laufwerk und ein langsameres Laufwerk enthält; und einen Controller, um zu bestimmen, ob eine Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen ist, und um die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen, wobei ein Nutzer keine Kenntnis darüber zu haben braucht, ob die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde.
  13. System nach Anspruch 12, wobei der Controller die Datei auf der Grundlage des Dateityps auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk ablegen soll.
  14. System nach Anspruch 12, wobei der Controller die Datei auf der Grundlage der Dateigröße auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk ablegen soll.
  15. System nach Anspruch 12, wobei der Controller die Datei auf der Grundlage der Zugriffsheuristik auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk ablegen soll.
  16. System nach Anspruch 12, wobei das schnellere Laufwerk ein Festkörperlaufwerk ist.
  17. System nach Anspruch 16, wobei das langsamere Laufwerk eine mechanische Festplatte ist.
  18. System nach Anspruch 12, wobei der Controller öfter verwendete Dateien auf dem schnelleren Laufwerk ablegen soll und seltener verwendete Dateien auf dem langsameren Laufwerk ablegen soll.
  19. System nach Anspruch 12, wobei der Controller in Software implementiert ist.
  20. Gegenstand, der Folgendes umfasst: ein computerlesbares Medium, auf dem sich Instruktionen befinden, die, wenn sie ausgeführt werden, einen Computer veranlassen: zu bestimmen, ob eine Datei auf einem langsameren Laufwerk eines logischen Speichervolumenbereichs oder auf einem schnelleren Laufwerk des logischen Speichervolumenbereichs abgelegt werden soll; und die Datei anhand der Bestimmung auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen; wobei ein Nutzer keine Kenntnis darüber zu haben braucht, ob die Datei auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abgelegt wurde.
  21. Gegenstand nach Anspruch 20, wobei die Datei auf der Grundlage des Dateityps auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen ist.
  22. Gegenstand nach Anspruch 20, wobei die Datei auf der Grundlage der Dateigröße auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen ist.
  23. Gegenstand nach Anspruch 20, wobei die Datei auf der Grundlage der Zugriffsheuristik auf dem langsameren Laufwerk oder auf dem schnelleren Laufwerk abzulegen ist.
  24. Gegenstand nach Anspruch 20, wobei das schnellere Laufwerk ein Festkörperlaufwerk ist.
  25. Gegenstand nach Anspruch 24, wobei das langsamere Laufwerk eine mechanische Festplatte ist.
  26. Gegenstand nach Anspruch 20, wobei sich auf dem computerlesbaren Medium Instruktionen befinden, die, wenn sie ausgeführt werden, einen Computer des Weiteren veranlassen, öfter verwendete Dateien auf dem schnelleren Laufwerk abzulegen und seltener verwendete Dateien auf dem langsameren Laufwerk abzulegen.
DE112008003256T 2007-11-30 2008-11-18 Verteilung und Speichervolumen auf Laufwerksbereiche mit intelligenter Dateiablage und/oder -umordnung Ceased DE112008003256T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/948,162 US20090144347A1 (en) 2007-11-30 2007-11-30 Storage volume spanning with intelligent file placement and/or rearrangement
US11/948,162 2007-11-30
PCT/US2008/083871 WO2009073353A1 (en) 2007-11-30 2008-11-18 Storage volume spanning with intelligent file placement and/or rearrangement

Publications (1)

Publication Number Publication Date
DE112008003256T5 true DE112008003256T5 (de) 2010-09-30

Family

ID=40676852

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112008003256T Ceased DE112008003256T5 (de) 2007-11-30 2008-11-18 Verteilung und Speichervolumen auf Laufwerksbereiche mit intelligenter Dateiablage und/oder -umordnung

Country Status (5)

Country Link
US (1) US20090144347A1 (de)
CN (1) CN101878474A (de)
DE (1) DE112008003256T5 (de)
GB (1) GB2467287B (de)
WO (1) WO2009073353A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018210711A1 (de) 2018-06-29 2020-01-02 Continental Automotive Gmbh Verfahren und Computersystem zum priorisierten Dateizugriff, Computerprogramm und computerlesbarer Datenträger

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8504849B2 (en) * 2004-12-21 2013-08-06 Sandisk Technologies Inc. Method for versatile content control
US20070168292A1 (en) * 2004-12-21 2007-07-19 Fabrice Jogand-Coulomb Memory system with versatile content control
US8639939B2 (en) * 2006-07-07 2014-01-28 Sandisk Technologies Inc. Control method using identity objects
US20100138652A1 (en) * 2006-07-07 2010-06-03 Rotem Sela Content control method using certificate revocation lists
US8613103B2 (en) * 2006-07-07 2013-12-17 Sandisk Technologies Inc. Content control method using versatile control structure
US20090240881A1 (en) * 2008-03-24 2009-09-24 Munif Farhan Halloush System and Method for Information Handling System Operation With Different Types of Permanent Storage Devices
US20090276647A1 (en) * 2008-04-30 2009-11-05 Intel Corporation Storage device power consumption state
US8166229B2 (en) 2008-06-30 2012-04-24 Intel Corporation Apparatus and method for multi-level cache utilization
US8095764B1 (en) * 2008-06-30 2012-01-10 Emc Corporation Dynamic application aware storage configuration
US9104618B2 (en) * 2008-12-18 2015-08-11 Sandisk Technologies Inc. Managing access to an address range in a storage device
US9881039B2 (en) * 2009-05-26 2018-01-30 International Business Machines Corporation Rebalancing operation using a solid state memory device
US20120109936A1 (en) * 2010-10-29 2012-05-03 Nec Laboratories America, Inc. Cost-effective data layout optimization over heterogeneous storage classes
KR101636816B1 (ko) 2011-09-29 2016-07-20 인텔 코포레이션 메모리 액세스 제어를 제공하는 장치, 시스템, 및 방법
US20130166614A1 (en) * 2011-12-27 2013-06-27 Hitachi, Ltd. Computer system, file management method, and storage medium
CN103678143B (zh) * 2012-09-25 2018-10-12 联想(北京)有限公司 文件存储方法、装置及电子设备
US20150089132A1 (en) * 2013-09-23 2015-03-26 Lsi Corporation Dynamic storage volume configuration based on input/output requests
TWI507975B (zh) * 2014-02-27 2015-11-11 Nat Univ Chung Cheng Storage device with multiple threshold and its method
US10162523B2 (en) * 2016-10-04 2018-12-25 Pure Storage, Inc. Migrating data between volumes using virtual copy operation
US11283685B1 (en) * 2017-09-11 2022-03-22 LumaForge Inc. Shared storage systems and methods for collaborative workflows
US11054993B2 (en) 2019-05-28 2021-07-06 Intel Corporation Mass storage system having peer-to-peer data movements between a cache and a backend store

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2504394B2 (ja) * 1995-04-26 1996-06-05 株式会社日立製作所 記憶階層制御方法
US7155634B1 (en) * 2002-10-25 2006-12-26 Storage Technology Corporation Process for generating and reconstructing variable number of parity for byte streams independent of host block size
US7310715B2 (en) * 2005-01-12 2007-12-18 International Business Machines Corporation Method, apparatus, and computer program product for using an array of high performance storage drives included in a storage array to reduce accessing of an array of lower performance storage drives included in the storage array

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018210711A1 (de) 2018-06-29 2020-01-02 Continental Automotive Gmbh Verfahren und Computersystem zum priorisierten Dateizugriff, Computerprogramm und computerlesbarer Datenträger

Also Published As

Publication number Publication date
WO2009073353A1 (en) 2009-06-11
GB2467287B (en) 2013-02-13
GB201009706D0 (en) 2010-07-21
US20090144347A1 (en) 2009-06-04
CN101878474A (zh) 2010-11-03
GB2467287A (en) 2010-07-28

Similar Documents

Publication Publication Date Title
DE112008003256T5 (de) Verteilung und Speichervolumen auf Laufwerksbereiche mit intelligenter Dateiablage und/oder -umordnung
DE112014005521B4 (de) Speichermodul und Verfahren zum Verwalten des Abbildens logischer Adressen auf physikalische Adressen
DE112011104419B4 (de) Bereichsmigration für gepaarte Speicherung
DE112010003788B4 (de) Datenspeicherung
DE112017002941B4 (de) Arbeitslastoptimierte Datendeduplizierung mittels Phantomfingerabdrücken
DE102013016871B4 (de) Technik zur Steigerung der Effizienz in mehrsträngigen Verarbeitungseinrichtungen
DE60033994T2 (de) Verfahren und System zur Ausgabe an und zum Ordnen von Befehlen in einem Festplattenlaufwerk
KR101791901B1 (ko) 빅데이터의 효율적인 저장·실시간 분석형 스마트 스토리지 플랫폼장치 및 방법
DE112012002452T5 (de) Anpassungsfähiges Zwischenspeichern von Datensätzen für Halbleiterplatten
DE102019130450A1 (de) Bypass-Speicherklasse Lese Cache auf der Grundlage eines Schwellwertes der Warteschlange
DE102012218269B4 (de) Schnittstelle zur Verwaltung von Datenverschiebung in einem Speichersystem mit thin provisioning
DE112018002951T5 (de) Verwenden eines spurformatcodes in einem cache-steuerblock für eine spur in einem cache, um lese- und schreibanforderungen in bezug auf die spur im cache zu verarbeiten
DE202010017665U1 (de) Datenverteilung bei einer Datenspeichervorrichtung mit Flash-Speicherchips
DE112012001162T5 (de) Defragmentierung von Datenspeicherpools
DE102018105943A1 (de) Kontextbewusste dynamische Befehlsplanung für ein Datenspeichersystem
DE202010017613U1 (de) Datenspeichervorrichtung mit host-gesteuerter Speicherbereinigung
DE112012005222T5 (de) Halbleiter-Datenspeicherverwaltung
DE102017120787A1 (de) Verfahren und Vorrichtung zum Entladen von Datenverarbeitung in Hybrid-Speichervorrichtungen
DE202012013432U1 (de) Speichern von Daten auf Speicherknoten
DE112011100618T5 (de) Verwalten von Schreiboperationen auf einen Speicherbereich von Spuren, der zwischen Speichereinheiten verlagert wird
DE102018123669A1 (de) Host-Computer-Anordnung, Remote-Server-Anordnung, Speicherungssystem und Verfahren davon
DE102005006176A1 (de) Transaktionsverarbeitungs-Systeme und -Verfahren, die einen Nicht-Platten-Dauerspeicher verwenden
DE102010053282A1 (de) Modifizierter B+ Baum zum Speichern von Nand-Speicher Umleitungszuordnungen
DE10062063A1 (de) Verfahren, System, Programm und Datenstruktur zur Steuerung einer Warteschlange von Anforderungen unterschiedlicher Priorität
DE112018003524T5 (de) Dynamische datenverlagerung unter verwendung von speicherbänken auf cloud-grundlage

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R002 Refusal decision in examination/registration proceedings
R082 Change of representative

Representative=s name: BOEHMERT & BOEHMERT ANWALTSPARTNERSCHAFT MBB -, DE

Representative=s name: BOEHMERT & BOEHMERT, DE

R003 Refusal decision now final

Effective date: 20131205