RU2463648C2 - Выборочное использование множества различающихся ячеек твердотельного запоминающего устройства - Google Patents

Выборочное использование множества различающихся ячеек твердотельного запоминающего устройства Download PDF

Info

Publication number
RU2463648C2
RU2463648C2 RU2009133317/08A RU2009133317A RU2463648C2 RU 2463648 C2 RU2463648 C2 RU 2463648C2 RU 2009133317/08 A RU2009133317/08 A RU 2009133317/08A RU 2009133317 A RU2009133317 A RU 2009133317A RU 2463648 C2 RU2463648 C2 RU 2463648C2
Authority
RU
Russia
Prior art keywords
storage device
state storage
solid
data
different cells
Prior art date
Application number
RU2009133317/08A
Other languages
English (en)
Other versions
RU2009133317A (ru
Inventor
Богдан РАЦИБОРСКИ (US)
Богдан РАЦИБОРСКИ
Дилеш ДХОКИА (US)
Дилеш ДХОКИА
Бхригху САРИН (US)
Бхригху САРИН
Original Assignee
Майкрософт Корпорейшн
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=RU2463648(C2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Майкрософт Корпорейшн filed Critical Майкрософт Корпорейшн
Publication of RU2009133317A publication Critical patent/RU2009133317A/ru
Application granted granted Critical
Publication of RU2463648C2 publication Critical patent/RU2463648C2/ru

Links

Images

Classifications

    • 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
    • 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
    • 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)

Abstract

Изобретение относится к области распределения данных среди различных ячеек запоминающего устройства. Техническим результатом является повышение эффективности использования ячеек твердотельного запоминающего устройства. Раскрывается способ выборочного использования множества различающихся ячеек твердотельного запоминающего устройства. Технология первоначально принимает типы классов для множества различающихся ячеек твердотельного запоминающего устройства. Определяются характеристики принятых данных. Принятые данные затем распределяются в одну из множества различающихся ячеек твердотельного запоминающего устройства на основе определенных характеристик принятых данных. 3 н. и 17 з.п. ф-лы, 5 ил.

Description

Область техники, к которой относится изобретение
Настоящее изобретение относится к области ячеек запоминающего устройства для компьютерных систем и, более конкретно, к распределению данных среди различных ячеек запоминающего устройства.
Уровень техники
Твердотельные накопители (SSD) являются устройствами хранения данных, которые используют энергонезависимую память, чтобы хранить данные, и не содержат вращающихся жестких дисков, встречающихся в традиционных накопителях на жестких дисках. Так как SSD не имеют движущихся частей и могут выдерживать экстремальные сотрясения, вибрацию и изменения температуры, SSD исключают время позиционирования головки, время ожидания и другие электромеханические задержки и неисправности, ассоциированные с традиционным накопителем на жестком диске. Как результат этих признаков, SSD становятся все более и более популярными на рынках, таких как ноутбуки и субноутбуки для предприятий, сверхмобильные ПК и планшетные ПК для секторов здравоохранения и потребительской электроники.
Однако существует множество ограничений в текущем состоянии технологии относительно использования SSD. Например, соотношение цена/емкость SSD остается значительно выше, чем у накопителей на жестких дисках.
Более того, существует только небольшое число компаний, предлагающих большие SSD, более чем на 64 гигабайт, со скоростями, адекватными для замены традиционных накопителей на жестких дисках. Однако даже эти накопители ограничены в количестве, очень дороги и доступны только по специальному запросу. В результате стоимость накопителей SSD находится вне массового потребительского рынка и они очень ограничены в количестве.
Сущность изобретения
Данная сущность предусмотрена для того, чтобы в упрощенной форме представить набор идей, которые дополнительно описываются ниже в подробном описании. Эта сущность не предназначена для того, чтобы идентифицировать ключевые признаки или важнейшие признаки заявляемого предмета изобретения, а также не предназначена для того, чтобы быть использованной в качестве помощи при определении области применения заявляемого предмета изобретения.
Раскрывается способ выборочного использования множества различающихся ячеек твердотельного запоминающего устройства. Технология первоначально принимает тип класса для множества различающихся ячеек твердотельного запоминающего устройства. Определяются характеристики принятых данных. Принятые данные затем назначаются одной из множества различающихся ячеек твердотельного запоминающего устройства на основе определенных характеристик.
Настоящая технология предоставляет возможность объединения различающихся типов ячеек твердотельной памяти, чтобы принимать данные, соответствующие типу ячейки твердотельной памяти, таким образом, в конечном счете, снижая соотношение цена/емкость памяти. Дополнительно, объединение различающихся типов ячеек твердотельного запоминающего устройства позволяет SSD поддерживать операционную систему. Также настоящая технология позволяет существующим файлам на компьютере перегруппировываться таким образом, чтобы предоставлять более низкое соотношение цена/емкость используемого пространства памяти. Следовательно, настоящая технология дает возможность снижения соотношения цена/емкость памяти, так же, как и замены накопителя на жестком диске на накопитель SSD.
Описание чертежей
Сопровождающие чертежи, которые включены в и формируют часть этой спецификации, иллюстрируют варианты осуществления технологии для выборочного использования множества различающихся ячеек твердотельного запоминающего устройства и вместе с описанием служат, чтобы объяснить принципы, обсуждаемые ниже:
Фиг.1 является схемой примерной компьютерной системы, используемой в соответствии с вариантами осуществления настоящей технологии для выборочного использования множества различающихся ячеек твердотельного запоминающего устройства.
Фиг.2A является блок-схемой примерного модуля распределения твердотельной памяти для распределения памяти, ассоциированной с операционной системой, в соответствии с одним вариантом осуществления настоящей технологии.
Фиг.2B является блок-схемой примерного модуля распределения твердотельной памяти для распределения памяти, ассоциированной с операционной системой, в соответствии с одним вариантом осуществления настоящей технологии.
Фиг.3 является блок-схемой последовательности операций примерного способа выборочного использования множества различающихся ячеек твердотельного запоминающего устройства в соответствии с одним вариантом осуществления настоящей технологии.
Фиг.4 является блок-схемой последовательности операций примера выборочного использования множества различающихся ячеек твердотельного запоминающего устройства в соответствии с одним вариантом осуществления настоящей технологии.
Чертежи, на которые ссылаются в этом описании, не должны пониматься как начерченные по масштабу, если это конкретно не упомянуто.
Подробное описание
Теперь будет сделана ссылка в деталях на варианты осуществления настоящей технологии выборочного использования множества различающихся ячеек твердотельного запоминающего устройства, примеры которых иллюстрированы на сопровождающих чертежах. Тогда как технология выборочного использования множества различающихся ячеек твердотельного запоминающего устройства будет описана совместно с различными вариантами осуществления, будет понятно, что они не предназначены, чтобы ограничивать настоящую технологию выборочного использования множества различающихся ячеек твердотельного запоминающего устройства этими вариантами осуществления. Наоборот, настоящая технология выборочного использования множества ячеек твердотельного запоминающего устройства предназначена, чтобы охватывать альтернативы, модификации и эквиваленты, которые могут быть включены в дух и рамки различных вариантов осуществления, которые определены приложенной формулой изобретения.
Кроме того, в последующем подробном описании многочисленные конкретные детали изложены для того, чтобы предоставлять полное понимание настоящей технологии выборочного использования множества различающихся ячеек твердотельного запоминающего устройства. Однако настоящая технология выборочного использования различающихся ячеек твердотельного запоминающего устройства может быть применена на практике без этих конкретных деталей. В других случаях хорошо известные способы, процедуры, компоненты и схемы не были описаны в деталях, чтобы чрезмерно не запутывать аспекты настоящих вариантов осуществления.
Пока прямо не установлено иное, как очевидно из последующих обсуждений, понятно, что повсюду в настоящем подробном описании обсуждения, использующие термины, такие как "прием", "определение", "назначение", "эмулирование", "поддержка", "категоризация", "доступ", "перемещение", "использование", "маршрутизация", "перегруппировка" или т.п., ссылаются на действия и процессы компьютерной системы или похожего электронного вычислительного устройства. Компьютерная система или подобное электронное вычислительное устройство манипулирует и преобразует данные, представленные как физические (электронные) величины в регистрах и запоминающих устройствах компьютерной системы, в другие данные, представленные похожим образом как физические величины в запоминающих устройствах или регистрах компьютерной системы или других устройствах хранения, передачи или отображения такой информации. Настоящая технология выборочного использования множества различающихся ячеек твердотельного запоминающего устройства также хорошо подходит для использования в других компьютерных системах, таких как, например, оптические и механические компьютеры.
Примерное окружение компьютерной системы
Обращаясь теперь к фиг.1, части технологии выборочного использования множества ячеек твердотельного запоминающего устройства состоят из машиночитаемых и машиноисполняемых инструкций, которые находятся, например, на машиноиспользуемых носителях компьютерной системы. Т.е. фиг.1 иллюстрирует один пример типа компьютера, который может быть использован, чтобы реализовать варианты осуществления, которые обсуждаются ниже, настоящей технологии выборочного использования множества ячеек твердотельного запоминающего устройства.
Фиг.1 иллюстрирует примерную компьютерную систему 100, используемую в соответствии с вариантами осуществления настоящей технологии для выборочного использования множества различающихся ячеек твердотельного запоминающего устройства. Понятно, что система 100 на фиг.1 является только примером, и что настоящая технология выборочного использования множества различающихся ячеек твердотельного запоминающего устройства может работать на или в ряде других компьютерных систем, включающих в себя объединенные в сеть компьютерные системы общего назначения, встроенные компьютерные системы, маршрутизаторы, коммутаторы, серверные устройства, бытовые устройства, различные промежуточные устройства/изделия, автономные компьютерные системы и т.п. Как показано на фиг.1, компьютерная система 100 на фиг.1 хорошо приспособлена, чтобы иметь периферийные компьютерные читаемые носители 102, такие как, например, гибкий диск, компакт-диск и т.п., связанные с ней.
Система 100 на фиг.1 включает в себя адресную шину/шину 104 данных для передачи информации и процессор 106A, соединенный с шиной 104 для обработки информации и инструкций. Как изображено на фиг.1, система 100 также хорошо подходит для многопроцессорного окружения, в котором присутствует множество процессоров 106A, 106B и 106C. И наоборот, система 100 также хорошо подходит, чтобы иметь один процессор, такой как, например, процессор 106A. Процессоры 106A, 106B и 106C могут быть любыми различными типами микропроцессоров. Система 100 также включает в себя признаки хранилища данных, такие как используемая компьютером энергозависимая память 108, например, оперативное запоминающее устройство (RAM), соединенное с шиной 104 для хранения информации и инструкций для процессоров 106A, 106B и 106C.
Система 100 также включает в себя используемую компьютером энергонезависимую память 110, например, постоянное запоминающее устройство (ROM), соединенное с шиной 104 для хранения статической информации и инструкций для процессоров 106A, 106B и 106C. Также в системе 100 представлено устройство 112 хранения данных (например, магнитный или оптический диск и накопитель на диске), соединенное с шиной 104 для хранения информации и инструкций. Система 100 также включает в себя необязательное устройство 114 буквенно-цифрового ввода, включающее в себя буквенно-цифровые и функциональные клавиши, соединенное с шиной 104 для передачи информации и выборок команд процессору 106A или процессорам 106A, 106B и 106C. Система 100 также включает в себя необязательное устройство 116 управления курсором, соединенное с шиной 104 для передачи пользовательской входной информации и выборок команд процессору 106A или процессорам 106A, 106B и 106C. Система 100 настоящего варианта осуществления также включает в себя необязательное устройство 118 отображения, соединенное с шиной 104 для отображения информации.
По-прежнему обращаясь к фиг.1, необязательное устройство 118 отображения на фиг.1 может быть жидкокристаллическим устройством, электронно-лучевой трубкой, устройством с плазменным дисплеем или другим устройством отображения, подходящим для создания графических изображений и буквенно-цифровых символов, опознаваемых пользователем. Необязательное устройство 116 управления курсором позволяет пользователю компьютера динамически сигнализировать о перемещении видимого символа (курсора) на экране дисплея устройства 118 отображения. В области техники известно множество реализаций устройства 116 управления курсором, включающие в себя трекбол, мышь, сенсорную панель, джойстик или специальные клавиши на устройстве 114 буквенно-цифрового ввода, способные передавать сигнал движения данного направления или способа перемещения. Альтернативно, следует понимать, что курсор может направляться и/или активироваться через ввод с устройства 114 буквенно-цифрового ввода с помощью специальных клавиш и команд последовательности клавиш.
Система 100 также хорошо подходит, чтобы иметь курсор, управляемый другим средством, таким как, например, голосовые команды. Система 100 также включает в себя устройство 120 ввода/вывода (I/O) для связывания системы 100 с внешними объектами. Например, в одном варианте осуществления I/O-устройство 120 является модемом, чтобы предоставлять возможность проводных или беспроводных связей между системой 100 и внешней сетью, такой как, но не только, Интернет. Более подробное обсуждение настоящей технологии выборочного использования множества различающихся ячеек твердотельного запоминающего устройства находится ниже.
Все еще обращаясь к фиг.1, различные другие компоненты изображены для системы 100. Конкретно, когда присутствуют, операционная система 122, приложения 124, модули 126 и данные 128 показаны как типично находящиеся в одной или в некоторой комбинации используемой компьютером энергозависимой памяти 108, например, оперативного запоминающего устройства (RAM) и устройства 112 хранения данных. Однако, понятно, что в некоторых вариантах осуществления операционная система 122 может храниться в других местоположениях, например, в сети или на флэш-накопителе; и, что дополнительно, доступ к операционной системе 122 может осуществляться из удаленного местоположения, например, через соединение с Интернетом. В одном варианте осуществления настоящая технология выборочного использования множества различающихся ячеек твердотельного запоминающего устройства, например, сохранена как приложение 124 или модуль 126 в ячейках памяти в RAM 108 и областях памяти в устройстве 112 хранения данных.
Система 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 типа класса выполнен с возможностью принимать типы классов для множества различающихся ячеек A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства по маршруту 205. Приемник 210 типа класса принимает данные о типе класса, которые описывают, какой вид данных хранит каждая ячейка A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства. Ячейка n… 255 твердотельного запоминающего устройства, представляет предварительно определенное число различающихся ячеек твердотельного запоминающего устройства кроме ячеек A 240, B 245 и C 250 твердотельного запоминающего устройства.
Например, ячейка 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, B 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, B245, C 250 и n… 255 твердотельного запоминающего устройства и данных, ассоциированных с операциями ввода/вывода, от операционной системы 200 определитель 220 характеристик принятых данных затем определяет, в какую ячейку A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства поместить принятые данные, ассоциированные с операциями ввода/вывода. Это определение основано на принятых данных из операционной системы 200, находящихся в соответствии с типом класса каждой ячейки твердотельного запоминающего устройства. Определитель 220 характеристик принятых данных затем передает это решение распределителю 230 различающихся ячеек твердотельного запоминающего устройства.
В одном варианте осуществления распределитель 230 различающихся ячеек твердотельного запоминающего устройства выполнен с возможностью распределять данные, принятые из операционной системы 200, в одну из множества различающихся ячеек твердотельного запоминающего устройства на основе характеристик принятых данных. Распределитель 230 различающихся ячеек твердотельной памяти отправляет принятые данные по маршруту 225, по меньшей мере, двум следующим ячейкам 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 различающихся ячеек твердотельного запоминающего устройства. Вставка этой съемной карты позволяет пользователю вставить модуль 215 распределения твердотельной памяти, соединенный с возможностью связи с ячейками A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства, в компьютерное устройство. После того как съемная карта вставлена, модуль 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 последовательности операций машинореализованного примерного способа выборочного использования множества различающихся ячеек твердотельного запоминающего устройства показана в соответствии с одним вариантом осуществления настоящей технологии.
Обращаясь теперь к блоку 305 на фиг.3 и к фиг.2A, один вариант осуществления принимает тип класса для каждой из множества различающихся ячеек твердотельной памяти. Как описано в данном документе, в другом варианте осуществления настоящей технологии тип класса, который отправлен по маршруту 205, принимается приемником 210 типа класса. В целом, тип класса описывает, какой вид данных хранит каждая ячейка A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства. Ячейка n… 255 твердотельного запоминающего устройства представляет предварительно определенное число различающихся ячеек твердотельного запоминающего устройства, кроме ячеек A 240, B 245 и C 250 твердотельного запоминающего устройства.
Один вариант осуществления настоящей технологии принимает 305 типы класса для множества различающихся ячеек твердотельного запоминающего устройства, используя операционную систему 200, чтобы определять типы классов. Операционная система 200 может быть соединена с возможностью связи с и быть внешней по отношению к модулю 215 распределения твердотельной памяти, или модуль 215 распределения твердотельной памяти может быть интегрирован в операционную систему 200. Приемник 210 типа класса затем сообщает тип класса каждой из множества различающихся ячеек A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства определителю 220 характеристик принятых данных.
Обращаясь теперь к блоку 310 на фиг.3 и к фиг.2A, один вариант осуществления определяет 310 характеристики принятых данных. Как описано в данном документе, в другом варианте осуществления настоящей технологии определение 310 характеристик принятых данных включает в себя категоризацию принятых данных, ассоциированных с операциями ввода/вывода, по меньшей мере, в один класс, соответствующий типу класса для каждой из множества различающихся ячеек A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства. Эти принятые данные, ассоциированные с операциями ввода/вывода, были отправлены из операционной системы 200 по маршруту 225 определителю 220 характеристик принятых данных. Дополнительно, после того, как определитель 220 характеристик принятых данных определяет распределение принятых данных в ячейки A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства, определитель 220 характеристик принятых данных сообщает это определение распределителю 230 различающихся ячеек твердотельного запоминающего устройства.
В другом варианте осуществления настоящей технологии определение 310 характеристик принятых данных включает в себя использование характеристики важности данных. Характеристика важности данных включает в себя аспекты данных, ассоциированных с операциями ввода/вывода, которые служат, чтобы описать, какой тип памяти требуется, чтобы хранить эти данные. Например, операционная система 200 отправит по маршруту 225 данные, ассоциированные с операциями ввода/вывода, определителю 220 характеристик принятых данных. Определитель 220 характеристик принятых данных затем поделит данные на группы согласно следующим характеристикам: (1) данные, которые записываются один раз и считываются только после записи; (2) данные, которые записываются редко, а считываются часто; и (3) данные, которые записываются часто и считываются часто. Определитель 220 характеристик принятых данных затем определит, в какие ячейки A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства каждые из сгруппированных принятых данных будут отправлены, на основе типов классов ячеек твердотельного запоминающего устройства, принятых от приемника 210 типа класса.
Например, операционная система 200 отправляет приемнику 210 типа класса информацию о том, что ячейка A 240 твердотельного запоминающего устройства является местом хранения данных, которые записываются редко, а считываются часто. Операционная система 200 отправляет определителю 220 характеристик принятых данных через маршрут 225 данные, ассоциированные с операциями ввода/вывода, которые предназначены для хранения в одной из ячеек A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства. Определитель 220 характеристик принятых данных определяет тип данных, ассоциированных с операциями ввода/вывода. Определитель 220 характеристик принятых данных далее определяет, что определенный процент принятых данных является данными, которые записываются редко, а считываются часто. Определитель 220 характеристик данных затем определяет, что эти записываемые редко и считываемые часто принятые данные должны быть распределены в ячейку A 240 твердотельного запоминающего устройства, так как эта ячейка памяти сконфигурирована, чтобы хранить данные, которые записываются редко, а считываются часто.
Обращаясь теперь к блоку 315 на фиг.3 и к фиг.2A, один вариант осуществления распределяет принятые данные в одну из множества различающихся ячеек A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства на основе характеристик, определенных определителем 220 характеристик принятых данных. Принятые данные отправляются, по меньшей мере, двум из различающихся ячеек 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.
В другом примере множество различающихся ячеек A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства, поддерживающих операционную систему 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 твердотельного запоминающего устройства являются некоторыми другими типами ячейки твердотельной памяти.
Обращаясь теперь к фиг.4, блок-схема 400 последовательности инструкций на машиноиспользуемом носителе, при этом инструкции, когда выполняются, заставляют компьютерную систему выполнять способ выборочного использования множества различающихся ячеек твердотельного запоминающего устройства, показана в соответствии с одним вариантом осуществления настоящей технологии.
Обращаясь теперь к блоку 405 на фиг.4 и к фиг.2A, один вариант осуществления принимает 405 типы классов для множества различающихся ячеек твердотельной памяти. Прием 405 типов классов для множества различающихся ячеек твердотельного запоминающего устройства похож на прием 305 типов классов для множества различающихся ячеек твердотельного запоминающего устройства. Так как объяснения в данном документе приема 305 типов классов для множества различающихся ячеек твердотельного запоминающего устройства применимы к приему 405 типов классов для множества различающихся ячеек твердотельного запоминающего устройства, в целях ясности и краткости эти объяснения не будут повторяться.
Обращаясь теперь к блоку 410 на фиг.4 и к фиг.2A, один вариант осуществления использует 410 типы классов множества различающихся ячеек твердотельного запоминающего устройства и принятые характеристики операции ввода/вывода, чтобы выбрать ячейку памяти. Использование 410 типов классов множества различающихся ячеек твердотельного запоминающего устройства и принятых характеристик операции ввода/вывода, чтобы выбрать ячейку памяти, похоже на определение 310 характеристик принятых данных. Так как объяснения в данном документе определения 310 характеристик принятых данных применимы к использованию 410 типов классов множества различающихся ячеек твердотельного запоминающего устройства и принятых характеристик операции ввода/вывода, чтобы выбрать ячейку памяти, в целях ясности и краткости эти объяснения не будут повторяться.
Дополнительно, обращаясь к блоку 410 на фиг.4 и к фиг.2A, в одном варианте осуществления использование 410 типов классов множества различающихся ячеек твердотельного запоминающего устройства и принятых характеристик операции ввода/вывода, чтобы выбрать ячейку памяти, дополнительно содержит использование характеристики частоты доступа. Эта характеристика частоты доступа ссылается на данные, описывающие, как часто одна из множества различающихся ячеек A 240, B 245, C 250 и n… 255 твердотельного запоминающего устройства записывается и/или считывается.
В качестве примера, предположим, что отличающаяся ячейка A 240 твердотельного запоминающего устройства содержит пространство памяти, предназначенное для файлов, которые должны записываться редко, а считываться часто. Также предположим, что файл, который сохранен в отличающейся ячейке A 240 твердотельного запоминающего устройства, был считан только один раз за последний год. Определитель 220 характеристик принятых данных может решить, в зависимости от предварительно определенных инструкций, переместить этот файл в отличающуюся ячейку B 245 твердотельного запоминающего устройства, так как отличающаяся ячейка B 245 твердотельного запоминающего устройства содержит пространство памяти, предназначенное для файлов, которые должны записываться редко и считываться редко.
Обращаясь теперь к блоку 415 на фиг.4 и к фиг.2A, один вариант осуществления маршрутизирует 415 данные, ассоциированные с операцией ввода/вывода, в выбранную ячейку памяти. В другом варианте осуществления маршрутизация 415 данных, ассоциированных с операцией ввода/вывода, в выбранную ячейку дополнительно содержит использование единого пространства имен адресного запоминающего устройства, которое представляет совокупность множества различающихся ячеек n… 255 твердотельного запоминающего устройства. Например, распределитель 230 различающихся ячеек твердотельного запоминающего устройства представляет только одно пространство имен запоминающего устройства для множества ячеек n… 255 твердотельного запоминающего устройства. В результате, приложения типа резервного копирования или операционной системы 200 могут видеть только единое пространство имен адресного запоминающего устройства, представляющее все ячейки n… 255 твердотельного запоминающего устройства вместо каждой отдельной ячейки A240, B245, C250 и/или 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 твердотельного запоминающего устройства.
Хотя предмет изобретения описан на языке, характерном для структурных признаков и/или методологических действий, следует понимать, что предмет изобретения, заданный в прилагаемой формуле изобретения, не обязательно ограничен характерными признаками или действиями, описанными выше. Скорее, характерные признаки и действия, описанные выше, раскрываются как примерные формы реализации формулы изобретения.

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, в котором упомянутые операции содержат использование единого пространства имен адресуемого запоминающего устройства, которое представляет совокупность первой и второй различающихся ячеек твердотельного запоминающего устройства.
RU2009133317/08A 2007-03-06 2008-03-06 Выборочное использование множества различающихся ячеек твердотельного запоминающего устройства RU2463648C2 (ru)

Applications Claiming Priority (2)

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
US11/714,585 2007-03-06

Publications (2)

Publication Number Publication Date
RU2009133317A RU2009133317A (ru) 2011-03-10
RU2463648C2 true RU2463648C2 (ru) 2012-10-10

Family

ID=39738794

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2009133317/08A RU2463648C2 (ru) 2007-03-06 2008-03-06 Выборочное использование множества различающихся ячеек твердотельного запоминающего устройства

Country Status (9)

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

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 삼성전자주식회사 솔리드 스테이트 드라이브 및 그의 메모리 할당 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2243588C2 (ru) * 1998-07-28 2004-12-27 Сони Корпорейшн Энергонезависимое устройство памяти, устройство записи и способ записи

Family Cites Families (72)

* 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 映像蓄積配信表示装置
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2243588C2 (ru) * 1998-07-28 2004-12-27 Сони Корпорейшн Энергонезависимое устройство памяти, устройство записи и способ записи

Also Published As

Publication number Publication date
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
TWI432958B (zh) 2014-04-01
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
RU2463648C2 (ru) Выборочное использование множества различающихся ячеек твердотельного запоминающего устройства
JP5347061B2 (ja) フラッシュメモリデータストレージデバイスにデータを格納するための方法及び装置
CN101930449B (zh) 客户机、代理服务器和用于提供云存储器的方法
US20080229046A1 (en) Unified support for solid state storage
EP3647932A1 (en) Storage device processing stream data, system including the same, and operation method thereof
CN104583979A (zh) 动态物理存储器分区技术
US8583890B2 (en) Disposition instructions for extended access commands
US8688946B2 (en) Selecting an auxiliary storage medium for writing data of real storage pages
US9558112B1 (en) Data management in a data storage device
US7979601B2 (en) External direct memory access of embedded controller memory
US8656133B2 (en) Managing storage extents and the obtaining of storage blocks within the extents
JP5659054B2 (ja) システム管理装置、システム管理方法及びシステム管理プログラム
US20110035557A1 (en) Fragmentation reduction using virtual sectors for static data
JP2011070464A (ja) 計算機システム及び計算機システムの性能管理方法
US8966133B2 (en) Determining a mapping mode for a DMA data transfer
WO2015052823A1 (ja) クラウド管理装置、その管理方法、およびそのシステム
US9251100B2 (en) Bitmap locking using a nodal lock
CN101996141A (zh) 计算机系统、盘存储装置和控制所述计算机系统的方法
KR101371324B1 (ko) 하이브리드방식의 디스크 용량 확장 방법
US20200387319A1 (en) Block input/output (i/o) accesses in the presence of a storage class memory

Legal Events

Date Code Title Description
PC41 Official registration of the transfer of exclusive right

Effective date: 20150306

MM4A The patent is invalid due to non-payment of fees

Effective date: 20200307