JP2012503806A5 - - Google Patents

Download PDF

Info

Publication number
JP2012503806A5
JP2012503806A5 JP2011528097A JP2011528097A JP2012503806A5 JP 2012503806 A5 JP2012503806 A5 JP 2012503806A5 JP 2011528097 A JP2011528097 A JP 2011528097A JP 2011528097 A JP2011528097 A JP 2011528097A JP 2012503806 A5 JP2012503806 A5 JP 2012503806A5
Authority
JP
Japan
Prior art keywords
data
semiconductor memory
nonvolatile semiconductor
access request
computer system
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.)
Granted
Application number
JP2011528097A
Other languages
English (en)
Other versions
JP2012503806A (ja
JP5234473B2 (ja
Filing date
Publication date
Priority claimed from US12/563,239 external-priority patent/US8417928B2/en
Application filed filed Critical
Publication of JP2012503806A publication Critical patent/JP2012503806A/ja
Publication of JP2012503806A5 publication Critical patent/JP2012503806A5/ja
Application granted granted Critical
Publication of JP5234473B2 publication Critical patent/JP5234473B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

ステップ420において、ターボブートドライバ及び/又は学習モジュールは、起動データを収集して、HDDからの第1アドレス又はロケーションIDを記録し、NVSMの第2の対応するアドレス又はロケーションIDに起動データを格納する。起動データは、例えば、システム及び自動スタートドライバデータ、OSデータ、OSカーネルローダデータ、サービス及びアプリケーションデータ、又は別の起動データを含んでもよい。格納されるデータの長さは、記録され、格納された起動データにアクセスする際に使用されてもよい。

Claims (18)

  1. 第1起動データを含むデータの第1セットを格納するハードディスクドライブと、
    前記ハードディスクドライブの半導体メモリ、及びコンピュータシステムのホストの半導体メモリとは異なる、不揮発性半導体メモリと、
    前記ホストの起動モードの間に、前記第1起動データを前記不揮発性半導体メモリに格納し、前記第1起動データを前記不揮発性半導体メモリから前記ホストのファイルシステムへと転送するターボブートドライバモジュールと
    を備え、
    前記ターボブートドライバモジュールは、所定の起動期間を有する起動タイマと、
    前記ホストからデータアクセス要求を受信するように構成されたディスクストレージドライバと
    を含み、
    前記データアクセス要求は、前記ハードディスクドライブに格納された第2起動データを要求し、
    ターボブートドライバモジュールは、前記第2起動データが前記データアクセス要求に対応した前記不揮発性半導体メモリに格納されているかを判定し、
    前記不揮発性半導体メモリに格納されていない前記第2起動データに応じて、前記起動モードの間に、前記第2起動データが前記ハードディスクドライブから前記ファイルシステムにロードされている間、前記第2起動データを前記不揮発性半導体メモリに収集すべく学習モードで動作し、
    前記起動モードの間に、前記ハードディスクドライブから収集された前記第2起動データの全て又は一部を、前記所定の起動期間が終了するまで、前記不揮発性半導体メモリに格納するよう構成されているコンピュータシステム。
  2. 前記ターボブートドライバモジュールは、データの第2セットを、前記第1起動データを含む前記不揮発性半導体メモリに格納する請求項1に記載のコンピュータシステム。
  3. 前記ターボブートドライバモジュールは、前記ホストの第1起動の間に、前記第1起動データを収集し、前記不揮発性半導体メモリに格納する学習モジュールを有し、
    前記ターボブートドライバモジュールは、前記ホストの第2起動の間に、前記不揮発性半導体メモリに格納された前記第1起動データを、前記ファイルシステムへと転送する請求項1または2に記載のコンピュータシステム。
  4. 前記ハードディスクドライブに格納されているデータにアクセスする第2データアクセス要求を生成する前記ファイルシステム及び前記ディスクストレージドライバのうちの少なくとも一つをさらに備え、
    前記ターボブートドライバモジュールは、前記第2データアクセス要求を満たすべく、前記不揮発性半導体メモリに格納されているデータにアクセスする請求項1から3の何れか1項に記載のコンピュータシステム。
  5. 前記ターボブートドライバモジュールは、前記第2データアクセス要求を満たすのに、前記ハードディスクドライブにアクセスしない請求項4に記載のコンピュータシステム。
  6. 前記ハードディスクドライブに格納されているデータを更新する第2データアクセス要求を生成する前記ファイルシステム及び前記ディスクストレージドライバのうちの少なくとも一つをさらに備え、
    前記ターボブートドライバモジュールは、前記データアクセス要求に基づいて、前記不揮発性半導体メモリに格納されているデータを更新する請求項1から3の何れか1項に記載のコンピュータシステム。
  7. 前記ターボブートドライバモジュールは、前記第2データアクセス要求に基づいて、前記ハードディスクドライブに格納されている前記データを更新する請求項6に記載のコンピュータシステム。
  8. 前記ターボブートドライバモジュールは、前記ハードディスクドライブから前記第1起動データにアクセスし、前記不揮発性半導体メモリから前記第2起動データにアクセスする請求項1から7の何れか1項に記載のコンピュータシステム。
  9. 前記ターボブートドライバモジュールは、前記第1起動データ及び前記第2起動データに同時にアクセスし、同じ期間に、前記ハードディスクドライブと前記不揮発性半導体メモリの両方へのアクセスを制御するよう構成されたバイストレージアクセスモジュールを有する請求項8に記載のコンピュータシステム。
  10. 前記ターボブートドライバ及び/又は前記バイストレージアクセスモジュールは、負荷バランシングアルゴリズムを使用して、前記ハードディスクドライブ及び前記不揮発性半導体メモリからのデータアクセスのバランスをとる請求項9に記載のコンピュータシステム。
  11. 前記ターボブートドライバモジュールは、前記ファイルシステム及び前記ディスクストレージドライバのうちの少なくとも1つからの前記データアクセス要求に基づいて、前記第1起動データ及び前記第2起動データにアクセスする請求項8に記載のコンピュータシステム。
  12. 前記ターボブートドライバモジュールは、前記ハードディスクドライブから前記第1起動データを受信すると、前記第1起動データを収集し、前記ハードディスクドライブからの第1アドレス又は第1ロケーションIDを記録し、前記不揮発性半導体メモリの第2アドレス又は第2ロケーションIDに第1起動データを格納し、
    第1アドレス又は第1ロケーションIDと、第2アドレス又は第2ロケーションIDとに基づいて、前記不揮発性半導体メモリに格納されるデータに対して前記ハードディスクドライブに格納されるデータをマップするストレージマッピングモジュールを有する請求項1から11の何れか1項に記載のコンピュータシステム。
  13. 第2データアクセス要求に基づいて、半導体制御ドライバ及び半導体メモリインターフェースを介して、前記不揮発性半導体メモリにアクセスするよう構成された半導体メモリドライバをさらに備え、
    前記第2データアクセス要求は、前記不揮発性半導体メモリ内のデータを要求し、
    前記ディスクストレージドライバは、前記ファイルシステムから、ハードディスクドライブ内のデータを要求する第3データアクセス要求を受信
    前記ターボブートドライバモジュールは、前記第3アクセス要求に基づいて、前記第2データアクセス要求を生成する請求項1から12の何れか1項に記載のコンピュータシステム。
  14. 第2データアクセス要求に基づいて、半導体メモリインターフェースを介して、前記不揮発性半導体メモリにアクセスするよう構成されたストレージ制御モジュールをさらに備え、
    前記第2データアクセス要求は、前記不揮発性半導体メモリ内のデータを要求し、
    前記ディスクストレージドライバは、ハードディスクドライバ内のデータを要求する第3データアクセス要求を前記ファイルシステムから受信
    前記ターボブートドライバモジュールは、前記第3データアクセス要求に基づいて、前記第2データアクセス要求を生成する請求項1から12の何れか1項に記載のコンピュータシステム。
  15. 前記ターボブートドライバモジュールは、前記不揮発性半導体メモリに格納する前に、前記第1起動データを圧縮し、前記不揮発性半導体メモリからアクセスされた時に、格納された前記第1起動データを解凍する、圧縮解凍モジュールを有する請求項1から14の何れか1項に記載のコンピュータシステム。
  16. 前記ターボブートドライバモジュールは、前記不揮発性半導体メモリに対するアクセスにおいて、キャッシュヒットに対するキャッシュミスの割合が閾値よりも大きい場合に、前記第2起動データを前記不揮発性半導体メモリに格納することを含む学習モードで動作する請求項1から15の何れか1項に記載のコンピュータシステム。
  17. 前記ターボブートドライバモジュールは、前記不揮発性半導体メモリに対するアクセスにおいて、全キャッシュアクセスに対するキャッシュミスの割合が閾値よりも大きい場合に、前記第2起動データを前記不揮発性半導体メモリに格納することを含む学習モードで動作する請求項1から15の何れか1項に記載のコンピュータシステム。
  18. 前記起動データは、自動スタートドライバ、オペレーションシステムデータ及びアプリケーションプログラムを含む請求項1から17の何れか1項に記載のコンピュータシステム。
JP2011528097A 2008-09-24 2009-09-24 ターボブートシステム及び方法 Active JP5234473B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US9974308P 2008-09-24 2008-09-24
US61/099,743 2008-09-24
US12/563,239 2009-09-21
US12/563,239 US8417928B2 (en) 2008-09-24 2009-09-21 Turbo boot systems and methods for subsequent booting from a captured data stored in a non-volatile semiconductor memory
PCT/US2009/058152 WO2010036757A1 (en) 2008-09-24 2009-09-24 Turbo boot systems and methods

Publications (3)

Publication Number Publication Date
JP2012503806A JP2012503806A (ja) 2012-02-09
JP2012503806A5 true JP2012503806A5 (ja) 2013-03-14
JP5234473B2 JP5234473B2 (ja) 2013-07-10

Family

ID=42038809

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011528097A Active JP5234473B2 (ja) 2008-09-24 2009-09-24 ターボブートシステム及び方法

Country Status (5)

Country Link
US (2) US8417928B2 (ja)
EP (1) EP2329365B1 (ja)
JP (1) JP5234473B2 (ja)
CN (1) CN102165418B (ja)
WO (1) WO2010036757A1 (ja)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9104599B2 (en) 2007-12-06 2015-08-11 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for destaging cached data
US8489817B2 (en) 2007-12-06 2013-07-16 Fusion-Io, Inc. Apparatus, system, and method for caching data
WO2008070173A1 (en) 2006-12-06 2008-06-12 Fusion Multisystems, Inc. (Dba Fusion-Io) Apparatus, system, and method for solid-state storage as cache for high-capacity, non-volatile storage
US8443134B2 (en) 2006-12-06 2013-05-14 Fusion-Io, Inc. Apparatus, system, and method for graceful cache device degradation
US8706968B2 (en) 2007-12-06 2014-04-22 Fusion-Io, Inc. Apparatus, system, and method for redundant write caching
US9519540B2 (en) 2007-12-06 2016-12-13 Sandisk Technologies Llc Apparatus, system, and method for destaging cached data
US7836226B2 (en) 2007-12-06 2010-11-16 Fusion-Io, Inc. Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment
US8417928B2 (en) 2008-09-24 2013-04-09 Marvell International Ltd. Turbo boot systems and methods for subsequent booting from a captured data stored in a non-volatile semiconductor memory
WO2011031796A2 (en) * 2009-09-08 2011-03-17 Fusion-Io, Inc. Apparatus, system, and method for caching data on a solid-state storage device
CN102207875B (zh) * 2010-03-30 2014-11-12 鸿富锦精密工业(深圳)有限公司 媒体数据播放装置及其重新启动方法
US20120060023A1 (en) * 2010-09-06 2012-03-08 Samsung Electronics Co., Ltd. Methods for booting an operating system using non-volatile memory
US9092337B2 (en) 2011-01-31 2015-07-28 Intelligent Intellectual Property Holdings 2 Llc Apparatus, system, and method for managing eviction of data
US8874823B2 (en) 2011-02-15 2014-10-28 Intellectual Property Holdings 2 Llc Systems and methods for managing data input/output operations
US9003104B2 (en) 2011-02-15 2015-04-07 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a file-level cache
US9201677B2 (en) 2011-05-23 2015-12-01 Intelligent Intellectual Property Holdings 2 Llc Managing data input/output operations
US8996807B2 (en) 2011-02-15 2015-03-31 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a multi-level cache
WO2012116369A2 (en) 2011-02-25 2012-08-30 Fusion-Io, Inc. Apparatus, system, and method for managing contents of a cache
US20120303942A1 (en) * 2011-05-25 2012-11-29 Eric Peacock Caching of boot data in a storage device
US9286079B1 (en) * 2011-06-30 2016-03-15 Western Digital Technologies, Inc. Cache optimization of a data storage device based on progress of boot commands
US9858086B2 (en) 2011-10-26 2018-01-02 Hewlett-Packard Development Company, L.P. Load boot data
US9251052B2 (en) 2012-01-12 2016-02-02 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for profiling a non-volatile cache having a logical-to-physical translation layer
US8782344B2 (en) 2012-01-12 2014-07-15 Fusion-Io, Inc. Systems and methods for managing cache admission
US10102117B2 (en) 2012-01-12 2018-10-16 Sandisk Technologies Llc Systems and methods for cache and storage device coordination
US9767032B2 (en) 2012-01-12 2017-09-19 Sandisk Technologies Llc Systems and methods for cache endurance
US9251086B2 (en) 2012-01-24 2016-02-02 SanDisk Technologies, Inc. Apparatus, system, and method for managing a cache
US9116812B2 (en) 2012-01-27 2015-08-25 Intelligent Intellectual Property Holdings 2 Llc Systems and methods for a de-duplication cache
US10019353B2 (en) 2012-03-02 2018-07-10 Longitude Enterprise Flash S.A.R.L. Systems and methods for referencing data on a storage medium
US10339056B2 (en) 2012-07-03 2019-07-02 Sandisk Technologies Llc Systems, methods and apparatus for cache transfers
US9612966B2 (en) 2012-07-03 2017-04-04 Sandisk Technologies Llc Systems, methods and apparatus for a virtual machine cache
KR101997079B1 (ko) * 2012-07-26 2019-07-08 삼성전자주식회사 가변 저항 메모리를 포함하는 저장 장치 및 그것의 동작 방법
CN102917057B (zh) * 2012-10-19 2016-01-06 北京奇虎科技有限公司 个性化应用推送系统及方法
US9842053B2 (en) 2013-03-15 2017-12-12 Sandisk Technologies Llc Systems and methods for persistent cache logging
TW201502782A (zh) * 2013-05-07 2015-01-16 Insyde Software Corp 非依電性記憶體中之作業系統啟動加載器之快取技術
US20150089102A1 (en) * 2013-09-23 2015-03-26 Lsi Corporation Solid state drives that cache boot data
US9804785B2 (en) 2014-09-22 2017-10-31 Sandisk Technologies Llc Nonvolatile memory adaptive to host boot up routine
US9864605B2 (en) * 2015-11-03 2018-01-09 Xilinx, Inc. Multistage boot image loading by configuration of a bus interface
TWI569129B (zh) 2015-12-01 2017-02-01 財團法人工業技術研究院 系統暫停方法、系統回復方法及應用其之電腦系統
KR20210016227A (ko) 2019-08-02 2021-02-15 삼성전자주식회사 빠른 쓰기 및 빠른 읽기를 지원하기 위한 복수의 버퍼 영역들을 포함하는 메모리 장치 및 이를 포함하는 스토리지 장치

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231084A (ja) * 1996-02-22 1997-09-05 Nec Eng Ltd ファームウェアロード方式
DE19839680B4 (de) * 1998-09-01 2005-04-14 Robert Bosch Gmbh Verfahren und Vorrichtung zur Veränderung des Speicherinhalts von Steuergeräten
US6539456B2 (en) * 1999-10-13 2003-03-25 Intel Corporation Hardware acceleration of boot-up utilizing a non-volatile disk cache
US6920533B2 (en) * 2001-06-27 2005-07-19 Intel Corporation System boot time reduction method
KR100597733B1 (ko) * 2002-01-03 2006-07-07 삼성전자주식회사 컴퓨터 시스템 및 그 부팅방법
US7234052B2 (en) * 2002-03-08 2007-06-19 Samsung Electronics Co., Ltd System boot using NAND flash memory and method thereof
US7036040B2 (en) * 2002-11-26 2006-04-25 Microsoft Corporation Reliability of diskless network-bootable computers using non-volatile memory cache
TW200410140A (en) * 2002-12-03 2004-06-16 Via Tech Inc An initialization process in a device driver
US20040225874A1 (en) * 2003-05-09 2004-11-11 Jeremy Burr Method for reduced BIOS boot time
JP2006526831A (ja) * 2003-06-03 2006-11-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 不揮発性メモリからのブート
JP3906825B2 (ja) * 2003-06-17 2007-04-18 日本電気株式会社 計算機システム、計算機システム起動方法およびプログラム
JP2005018418A (ja) * 2003-06-26 2005-01-20 Konica Minolta Business Technologies Inc 画像形成装置
US7219257B1 (en) * 2003-06-27 2007-05-15 Adaptec, Inc. Method for boot recovery
US7296143B2 (en) * 2004-06-22 2007-11-13 Lenovo (Singapore) Pte. Ltd. Method and system for loading processor boot code from serial flash memory
JP2006163714A (ja) * 2004-12-06 2006-06-22 Fuji Photo Film Co Ltd 撮影装置
US7529921B2 (en) * 2004-12-17 2009-05-05 Cardiac Pacemakers, Inc. Fast initialization of medical device system having multiple operating systems
US7281127B2 (en) * 2004-12-27 2007-10-09 Intel Corporation Concurrent processing of operations in a boot sequence to initialize a storage device including an operating system loader to load
US20080005462A1 (en) * 2006-06-30 2008-01-03 Mosaid Technologies Incorporated Method of configuring non-volatile memory for a hybrid disk drive
US7669044B2 (en) * 2006-09-29 2010-02-23 Microsoft Corporation Accelerated system boot
US7711941B2 (en) * 2006-12-19 2010-05-04 Lsi Corporation Method and apparatus for booting independent operating systems in a multi-processor core integrated circuit
KR101211503B1 (ko) * 2007-10-02 2012-12-12 삼성전자주식회사 부팅 시스템, 그 시스템을 구비한 화상형성장치 및 그제어방법
US9152432B2 (en) * 2008-06-30 2015-10-06 Intel Corporation System and method to accelerate access to network data using a networking unit accessible non-volatile storage
US8713241B2 (en) * 2008-08-27 2014-04-29 Wireless Silicon Group, Llc Method and apparatus for an active low power mode of a portable computing device
US8417928B2 (en) 2008-09-24 2013-04-09 Marvell International Ltd. Turbo boot systems and methods for subsequent booting from a captured data stored in a non-volatile semiconductor memory

Similar Documents

Publication Publication Date Title
JP2012503806A5 (ja)
US8949512B2 (en) Trim token journaling
TWI388983B (zh) 用於促進快閃記憶體系統之快速喚起的方法及系統
JP5234473B2 (ja) ターボブートシステム及び方法
US9367451B2 (en) Storage device management device and method for managing storage device
US20160054936A1 (en) Information processing system and nonvolatile storage unit
JP4988008B2 (ja) 情報処理装置およびドライバ
JP4988007B2 (ja) 情報処理装置およびドライバ
KR101451482B1 (ko) 데이터 이용가능성의 마운트타임 조정
KR101900760B1 (ko) 비휘발성 메모리를 갖는 시스템에 대한 비정상 셧다운의 핸들링
KR101846612B1 (ko) 부트 데이터 로드
US20100058007A1 (en) Information processing apparatus and memory management method
US20100318727A1 (en) Memory system and related method of loading code
US9208101B2 (en) Virtual NAND capacity extension in a hybrid drive
JP2013137770A (ja) Lbaビットマップの使用
TW201017405A (en) Improved hybrid drive
US20130212317A1 (en) Storage and Host Devices for Overlapping Storage Areas for a Hibernation File and Cached Data
EP2293195A2 (en) Memory drive that can be operated like optical disk drive and method for virtualizing memory drive as optical disk drive
US10013174B2 (en) Mapping system selection for data storage device
US20140372710A1 (en) System and method for recovering from an unexpected shutdown in a write-back caching environment
US20160342542A1 (en) Delay destage of data based on sync command
US10025598B2 (en) Storage device, booting procedure acceleration method and storage controller
US8677061B2 (en) Information processing apparatus and cache control method
KR101392062B1 (ko) 고속 컴퓨터 시스템 파워 온 및 파워 오프 방법
KR101582919B1 (ko) 전자장치 및 그 부팅방법