CN103970675A - 用于使引导操作***加速的快速引导列表 - Google Patents
用于使引导操作***加速的快速引导列表 Download PDFInfo
- Publication number
- CN103970675A CN103970675A CN201310033786.2A CN201310033786A CN103970675A CN 103970675 A CN103970675 A CN 103970675A CN 201310033786 A CN201310033786 A CN 201310033786A CN 103970675 A CN103970675 A CN 103970675A
- Authority
- CN
- China
- Prior art keywords
- list
- solid
- boot
- state drive
- lba
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
本公开涉及用于使引导操作***加速的快速引导列表。一种用于引导到存储在固态驱动器上的操作***的方法。该方法包含下列步骤:(A)确定引导列表是否具有一个或多个条目;(B)从引导列表预先读取每个条目的一个或多个逻辑块地址;(C)从主机接收命令;(D)如果命令是在预先读取的逻辑块地址的高速缓存区中,则从固态驱动器内部的内存读取命令;和(E)如果命令不在高速缓存中,则从固态驱动器的主要部分读取命令。
Description
技术领域
本发明一般涉及内存存储设备,并且尤其涉及一种用于实施快速引导列表以使操作***的引导加速的方法和/或装置。
背景技术
当传统计算机从驱动器引导时,主机将首先从驱动器读取操作***(OS)文件。一旦OS文件最初已经被安装到驱动器上,(诸如windows、Linux等),OS文件就很少被修改并被保留在一些固定的逻辑块地址(LBA)区中。从引导驱动器读取OS文件至主机要花费时间,即使在使用固态驱动器(SSD)时也是如此。传统上,当引导驱动器被引导时,引导驱动器将等待主机发送读取命令。一旦引导驱动器从主机接收到读取命令,引导驱动器将读取数据,然后将数据发送给主机。这种引导顺序(boot sequence)从传统的硬盘(legacy hard disks)获得,所以存取地址仍旧是至逻辑块地址(LBA)。用于OS的引导程序(boot procedure)可以被看作为读取许多LBA。
发明内容
本发明涉及一种用于引导到存储在固态驱动器上的操作***的方法。该方法包含下列步骤:(A)确定引导列表是否具有一个或多个条目(entry),(B)从引导列表预先读取每个条目的一个或多个逻辑块地址,(C)从主机接收命令,(D)如果命令是在预先读取的逻辑块地址的高速缓存区中,则从固态驱动器内部的内存(memory)读取命令,和(E)如果命令不在高速缓存中,则从固态驱动器的主要部分读取命令。
附图说明
从下面详细的描述和所附权利要求以及附图,本发明的实施例将是清晰的,其中:
图1是本发明的内容的框图;
图2是本发明的一个实施例的流程图;
图3是本发明的一个实施例的流程图;
图4是本发明的一个实施例的流程图;
图5是本发明的一个实施例的流程图;和
图6示出LBA的组织结构(organization)图。
具体实施方式
本发明的实施例可以包括提供一种用于实施引导顺序的***或方法,其可以(i)在固态驱动器(SSD)中使用,(ii)减少从SSD引导操作***(OS)所需的时间,和/或(iii)在对是引导顺序的SSD进行存取或对是正常读操作的SSD进行存取之间进行区分。
本发明的一个实施例可以使引导操作***(OS)加速,尤其是实施在固态驱动器(SSD)上时。可以产生记录许多逻辑块地址(LBA)的快速引导列表,在计算机(或设备)的引导顺序期间主机将读取逻辑块地址(LBA)。列表将被保存于驱动器中的NAND闪存(或其他非易失性内存)中。
当引导计算机(或设备)时,SSD首先将预先读取引导列表中的LBA,以从引导驱动器读取OS数据。在正常操作期间,几乎所有的主机读取都将是高速缓存-命中的(cache-hit),所以对引导驱动器的控制差不多立即可以将数据返回到主机。
参考图1,例示本发明的一个实施例的***70的框图被显示。***70一般包含装置80和块(或电路)82。在一个示例中,***块82可以被实施为设备(或主机),诸如具有非易失性内存电路的移动计算设备。然而,也可以实施其他类型的设备以满足特定实施方式的设计标准。设备80一般包含固态驱动器(SSD)。设备80一般包含块(或电路)84和块(或电路)86。电路84可以包括块(或电路)96。块84被显示为控制器。块96被显示为内存。内存96可以存储固件98,或用于控制电路84和/或电路86的其他软件。固件98可以操作控制器84并包括所描述的快速引导操作。
在一个实施例中,内存96可以包括用于保持引导列表的高速缓存区。在另一个实施例中,单独的高速缓冲内存可以被实施在控制器电路84上以保持引导列表。高速缓冲内存的特定位置可以变化成满足特定实施方式的设计标准。总之,高速缓存区可以被实施为静态随机存取内存(SRAM)。然而,用于实施高速缓存区的特定类型的内存可以变化成满足特定实施方式的设计标准。
可以通过电路82产生信号(例如REQ)。可以通过电路84接收信号REQ。信号REQ可以是请求信号,该信号可以用于从电路86存取数据。可以通过电路84产生要提供给电路86的信号(例如I/O)。信号REQ可以包括一个或多个地址位。信号(例如DATA)可以是通过电路82接收的一个或多个数据部分。
电路82被显示成实施为主机电路。电路82从电路86读取数据和向电路86写数据。电路86一般被实施为诸如NAND闪存的非易失性内存电路。然而,也可以实施其他类型的内存(例如,或闪存等)以满足特定实施方式的设计标准。电路86可以包括许多模块90a-90n。模块90a-90n可以被实施为NAND闪存芯片。在一些实施例中,电路86可以是NAND闪存设备。在其他实施例中,电路84和/或电路86可以被实施为具有一个或多个非易失性设备的固态驱动器的全部或一部分。电路86一般可操作成在非易失的情况下存储数据。当从电路86读取数据时,电路82可以存取在信号REQ中被识别的一组数据(例如,多位)。在一个示例中,模块90a-90n可以是硬连线至印刷电路板(PCB)的预制模块。在另一个示例中,模块90a-90n可以是可去除模块,其可以用于增加或减少电路86的总尺寸。在一个实施例中,电路86可以包括可去除和/或不可去除的模块90a-90n两者。此外,每个模块90a-90n都可以包括许多个单独的内存元件(element)92a-92n。
参考图2,图2显示过程100的图示。过程100一般包含步骤(或状态)102、判断步骤104、步骤(或状态)106、步骤(或状态)108、步骤(或状态)110、步骤(或状态)112、步骤(或状态)114。步骤102可以是开始状态,步骤104可以确定引导列表是否为空。如果是,则方法100移动到状态106。状态106运行一个顺序以装入(populate)引导列表。如果状态104确定引导列表不为空,则方法100移动到状态108。状态108确定引导操作***的顺序是应该来自高速缓存区还是来自SSD的NAND元件。如果方法100从NAND元件引导,则方法100移动到状态110。如果方法100从高速缓存区引导,则当OS从高速缓存引导时,方法移动到状态112。状态110和/或状态112都移动到状态114,在状态114处数据被返回到主机82。
方法100将上电后的前N秒看作OS“载入”时间。在载入时间期间,主机82将读取OS文件。在载入时间内被读取的全部LBA都可以被记录至快速引导列表,其通常被写至NAND。在随后的上电操作期间,SSD固件98将预先读取这个快速引导列表中的所有LBA。当主机82读取OS文件,并且来自主机82的全部读取都是高速缓存命中的时,来自SSD的内部RAM的数据被发送给主机82,这可节省时间。
方法100在引导文件的LBA与OS的LBA之间进行区分。方法100采用一般基于日志的(log-based)手段。例如,可以设置规定的记录时间(例如N秒)。在一个示例中,记录时间可以被设置为10秒。然而,特定记录时间可以变化成满足特定实施方式的设计标准。例如,5和15秒之间的时间可能是适当的。SSD固件98保持在驱动器引导之后前N秒内存取的全部LBA的列表。列表被保存于NAND闪存媒介。当下一次对OS的引导发生时,SSD固件98从NAND闪存媒介取回列表,然后预先读取列表中记录的全部LBA。在随后的OS引导中大部分LBA读取都将是高速缓存命中的。如果在OS引导程序期间高速缓存缺失,则新LBA可以被添加到列表中。
参考图3,图3显示出步骤(或子例程)106的更详细的流程图。子例程106一般包含步骤(或状态)120、步骤(或状态)122、判断步骤(或状态)124、判断步骤(或状态)126,以及步骤(或状态)128和状态110。步骤120开始引导列表记录程序。步骤122等待来自主机82的命令。判断步骤124确定是否已经从主机82接收到命令。如果否,则子例程106返回到步骤122。如果是,则子例程106移动到判断步骤126。判断步骤126确定N秒是否已经过去。一般而言,N可以是被指定为引导时间的预定时间量。如果N秒已经过去,则子例程106移动到状态110。如果否,则子例程106移动到状态128。在步骤128中,子例程106将一个或多个逻辑块地址添加到快速引导列表。接下来,子例程106移动到状态110,状态110从闪存媒介86的NAND元件读取数据。
参考图4,图4显示出子例程108流程图。子例程108一般包含步骤(或状态)130、步骤(或状态)132、判断步骤(或状态)134、判断步骤(或状态)136、状态112和状态114。状态130可以从引导列表预先读取LBA。状态132可以等待来自主机82的命令。判断状态可以确定是否已经从主机82接收到命令。如果否,则子例程108返回到步骤132。如果是,则子例程108移动到判断状态136。判断状态136确定高速缓存命中(cachehit)是否已经发生。如果是,则子例程108移动到步骤112并从高速缓存读取。如果否,则子例程108移动到步骤114,步骤114将数据返回到主机82。
参考图5,图5显示出方法200的流程图,图中示出***80的总体操作。方法200一般包含步骤(或状态)202、步骤(或状态)204、步骤(或状态)206以及步骤(或状态)208。步骤202一般包含***上电模式。步骤208一般包含SSD上电和最初的模式。步骤206一般包含读取快速引导列表。步骤208一般处理快速引导列表。
参考图6,图6显示出LBA空间的组织结构图。一般而言,LBA空间包括主引导区(MBA)(或主引导记录)、许多引导文件、许多***文件、和许多用户数据文件。引导文件和***文件一般被视为操作***文件,它们被显示为整个LBA空间的子集。LBA空间可以是存储在闪存媒介86中的LBA的图形表示。MBA可以包括与盘分区有关的信息和/或可以包括用于载入操作***文件的小程序。当OS开始引导过程时引导文件可以被读取。引导文件一般被存储在快速列表中。其余的***文件可以***作***使用,但并非必须在引导过程期间。例如,帮助文件、或并非例行使用的其他驱动器可以是操作***的一部分,但并非是快速引导列表中必须的。存储在快速引导列表中的特定文件可以变化成满足特定实施方式的设计标准。例如,如果特定驱动器被频繁使用,但对引导操作而言并非是必要的,则所描述的过程将这种驱动器载入到快速引导列表中。
***80、和/或方法100的整体操作可以总结如下。***80上电。SSD 86上电和初始化。SSD固件98从SSD 86媒介读取快速引导列表。***检查快速引导列表是否为空。如果快速引导列表为空,则SSD将进入快速引导列表记录状态。在这个状态中,SSD将记录主机82在前N秒内读取的LBA(例如,这里N是可变的,通常为10秒)。如果快速引导列表不为空,则SSD将从列表预先读取全部LBA至闪存86。然后主机82等待发送命令。在从主机82接收到读取命令后,对接收到命令的时间进行检查以确定是否是在自引导开始的前N秒内接收到命令。接着,对主机82想要读取的数据是否已经被预先读取执行检查。如果高速缓存命中发生,则数据从RAM 86被直接返回到主机82。如果时间是在前N秒内,则LBA被记录,以便从快速引导列表读取。然后数据从内部RAM被读取。用户数据从NAND 86被读取。用户数据被返回到主机82。
在通常可以买到的NAND闪存(例如,使用25nm工艺)中,一页是8KB,并且一块含有256页。读取一页需要的最大时间是75us。将8KB的数据转移出去将需要40us。读取一页并将数据转移出去通常需要大约100us。如果读取命令解码和将一个LBA翻译成NAND页需要40us,则从SSD将一个LBA数据转移到主机82需要1us。典型的OS引导读取含有在100,000 LBA范围内的文件。在快速引导操作期间90%的LBA通常导致高速缓存命中。
不用方法100,正常引导时间将大约是14秒((100us+40us+1us)*100000LBA=14.1s)。用方法100,快速引导时间将在几秒范围内((100us+40us+1us)*100000LBA*10%+(40us+1us)*100000LBA*90%=5.1s)。通过实施方法100,用于OS的引导速度可以在63.83%的范围内得到提高。
虽然已经将驱动器80描述为固态驱动器,但是本发明的一个或多个实施例可以实施在硬盘驱动器(HDD)中。虽然快速引导操作的优点在HDD中可能有用,但是当用SSD实施时快速引导操作可以甚至更显著。然而,可以使用任何一种实施方式。
当在本文中结合“是(单数或复数)”和动词使用时,术语“可以”和“一般而言”意味着表达这样的意图,即,描述是示例性的,并且被认为宽到既足以涵盖在本公开中提供的指定示例又足以涵盖基于本公开能够推演的可替换示例。如在本文中使用的术语“可以”和“一般而言”不应该被解释为必须暗含省略相应的元素的愿望和可能性。
可以使用一个或多个传统的通用处理器、数字计算机、微处理器、微控制器、RISC(精简指令集计算机)处理器、CISC(复杂指令集计算机)处理器、SIMD(单指令多数据)处理器、信号处理器、中央处理单元(CPU)、算术逻辑单元(ALU)、视频数字信号处理器(VDSP)、和/或根据说明书的教义进行编程的类似的计算机器实施通过图2-5的图示执行的功能,正如对相关领域技术人员而言将显而易见的那样。适当的软件、固件、编码、例程、指令、操作码、微代码、和/或程序模块可以易于由熟练的编程者基于本公开的教导进行准备,对相关领域技术人员而言也将是明显的。一般由机器实施方式的一个或多个处理器从一个媒介或几个媒介执行软件。
还可以通过制备的ASIC(专用集成电路)、平台ASIC、FPGA(现场可编程门阵列)、PLD(可编程逻辑器件)、CPLD(复杂可编程逻辑器件)、门海、FRIC(射频集成电路)、ASSP(专用标准产品)、一个或多个单块集成电路、被安排成倒装芯片模块和/或多芯片模块的一个或多个芯片或裸片(die),或通过使传统组件电路的适当网络互连而实施本发明,正如在本文中描述的那样,它们的更改对本领域技术人员而言将是显而易见的。
因此本发明还包括计算机产品,其可以是包括指令的存储媒介或媒介和/或传输媒介或媒介,指令可以用于对机器编程以执行依据本发明的一个或多个过程或方法。通过机器执行含在计算机产品中的指令,连同周围电路的操作一起,可以将输入数据变换成存储媒介上的一个或多个文件和/或表示物理对象或本体的一个或多个输出信号,诸如声音和/或视觉描述。存储媒介可以包括、但不限于,包括软盘、硬盘驱动器、磁盘、光盘、CD-ROM、DVD和磁光盘在内的任何类型的盘,和诸如ROM(只读内存)、RAM(随机存取内存)、EPROM(可擦除可编程ROM)、EEPROM(电可擦除可编程ROM)、UVPROM(紫外线可擦除可编程ROM)、闪存、磁卡、光学卡在内的电路,和/或适于存储电子指令的任何类型的媒介。
本发明的元件可以形成一个或多个设备、单元、组件、***、机器和/或装置的一部分或全部。设备可以包括、但不限于,服务器、工作站、存储阵列控制器、存储***、个人计算机、膝上型计算机、笔记本计算机、掌上型计算机、个人数字助理、便携式电子设备、电池供电设备、机顶盒、编码器、解码器、代码转换器、压缩器、解压缩器、预处理器、后处理器、发射器、接收器、收发器、密码电路、蜂窝电话、数字照相机、定位和/或导航***、医疗设备、平视显示器、无线设备、声音记录、声音存储和/或声音重放设备、视频记录、视频存储和/或视频重放设备、游戏平台、***和/或多芯片模块。相关领域技术人员将理解本发明的元件可以被实施在其他类型的设备中以满足特定应用的标准。
虽然已经参考本发明的实施例显示和描述了本发明,但是本领域技术人员将理解可以不脱离本发明的范围而对形式和细节做出不同的改变。
Claims (12)
1.一种用于引导到存储在固态驱动器上的操作***的方法,包含下列步骤:
(A)确定引导列表是否具有一个或多个条目;
(B)从所述引导列表预先读取每个所述条目的一个或多个逻辑块地址;
(C)从主机接收命令;
(D)如果所述命令是在所述预先读取的逻辑块地址的高速缓存区中,则从固态驱动器内部的内存读取所述命令;和
(E)如果所述命令不在所述高速缓存中,则从所述固态驱动器的主要部分读取所述命令。
2.根据权利要求1所述的方法,其中如果步骤(A)确定所述引导列表不具有任何条目,则执行下列步骤:
确定是否已经从主机接收到命令;
确定预定时间量是否已经过去;和
如果所述预定时间量已经过去,则将一个或多个逻辑块地址添加到引导列表。
3.根据权利要求1所述的方法,其中如果步骤(A)确定所述引导列表具有条目,则执行下列步骤:
确定哪个所述命令是在所述预先读取的部分中;和
从所述预先读取的部分读取所述命令。
4.根据权利要求1所述的方法,其中在NAND媒介中实施所述固态驱动器的所述主要部分以及所述固态驱动器的所述高速缓存区。
5.根据权利要求1所述的方法,其中所述固态驱动器包含可引导的驱动器,其被配置成将信息存储在按照所述逻辑块地址组织的多个NAND/媒介位置中。
6.根据权利要求1所述的方法,其中所述方法允许在所述引导顺序已经完成后,从主机对所述固态驱动器进行存取。
7.根据权利要求1所述的方法,其中所述固态驱动器包含控制器部分和闪存媒介部分。
8.根据权利要求7所述的方法,其中所述控制器包括被配置成存储所述引导列表的内存。
9.根据权利要求8所述的方法,其中所述内存还包括被配置成控制所述固态驱动器的固件。
10.一种装置,包含:
固态驱动器的控制器,其被配置成从主机设备发送和接收信息;和
所述固态驱动器的内存区,其被配置成通过所述控制器进行存取,其中所述控制器通过下列步骤引导操作***:(i)确定引导列表是否具有一个或多个条目,(ii)从所述引导列表预先读取每个所述条目的一个或多个逻辑块地址,(iii)从主机接收命令,(iv)如果所述命令是在所述预先读取的逻辑块地址的高速缓存区中,则从所述固态驱动器内部的内存读取所述命令,和(v)如果所述命令不在所述高速缓存中,则从所述固态驱动器的主要部分读取所述命令。
11.根据权利要求10所述的装置,其中所述高速缓冲内存被实施为所述控制器的一部分。
12.根据权利要求10所述的装置,其中所述高速缓冲内存被实施为所述闪存媒介的一部分。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310033786.2A CN103970675A (zh) | 2013-01-29 | 2013-01-29 | 用于使引导操作***加速的快速引导列表 |
US13/777,025 US9170823B2 (en) | 2013-01-29 | 2013-02-26 | Fast-boot list to speed booting an operating system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310033786.2A CN103970675A (zh) | 2013-01-29 | 2013-01-29 | 用于使引导操作***加速的快速引导列表 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103970675A true CN103970675A (zh) | 2014-08-06 |
Family
ID=51224353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310033786.2A Pending CN103970675A (zh) | 2013-01-29 | 2013-01-29 | 用于使引导操作***加速的快速引导列表 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9170823B2 (zh) |
CN (1) | CN103970675A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105446701A (zh) * | 2015-11-09 | 2016-03-30 | 联想(北京)有限公司 | 一种数据处理方法、电子设备及控制器 |
CN107766097A (zh) * | 2016-08-16 | 2018-03-06 | 三星电子株式会社 | 基于端点装置提供的启动指令执行启动操作的电子装置 |
CN110970078A (zh) * | 2018-09-28 | 2020-04-07 | 西部数据技术公司 | 用于快速引导读取的方法 |
CN111078148A (zh) * | 2019-12-17 | 2020-04-28 | 江苏芯盛智能科技有限公司 | 基于ssd的缓存方法、装置、ssd和计算机可读存储介质 |
CN112416262A (zh) * | 2020-12-08 | 2021-02-26 | 合肥大唐存储科技有限公司 | 一种固态硬盘中数据预读方法、存储介质和电子装置 |
CN113614702A (zh) * | 2019-03-07 | 2021-11-05 | 美光科技公司 | 基于检测到的读取命令活跃流的自适应预读高速缓存管理器 |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201502782A (zh) * | 2013-05-07 | 2015-01-16 | Insyde Software Corp | 非依電性記憶體中之作業系統啟動加載器之快取技術 |
US9804785B2 (en) * | 2014-09-22 | 2017-10-31 | Sandisk Technologies Llc | Nonvolatile memory adaptive to host boot up routine |
KR102379202B1 (ko) | 2015-09-30 | 2022-03-28 | 삼성전자주식회사 | 전자 장치 및 그 부팅 방법 |
US9880831B2 (en) * | 2015-11-06 | 2018-01-30 | Storart Technology Co., Ltd. | Field firmware upgrading method and computer-readable medium |
KR102278811B1 (ko) * | 2015-12-02 | 2021-07-19 | 삼성전자주식회사 | 모바일 장치를 이용한 호스트 장치의 부팅 방법 |
US10289544B2 (en) * | 2016-07-19 | 2019-05-14 | Western Digital Technologies, Inc. | Mapping tables for storage devices |
US10552171B2 (en) | 2016-11-16 | 2020-02-04 | International Business Machines Corporation | Efficient booting system |
US10289421B2 (en) * | 2017-02-17 | 2019-05-14 | Dell Products, L.P. | Booting of IHS from SSD using PCIe |
CN108877856B (zh) | 2017-05-10 | 2021-02-19 | 慧荣科技股份有限公司 | 储存装置、记录方法以及预载方法 |
TWI710957B (zh) * | 2019-05-20 | 2020-11-21 | 宏碁股份有限公司 | 加速開機系統及加速開機方法 |
TWI763314B (zh) | 2021-02-18 | 2022-05-01 | 瑞昱半導體股份有限公司 | 影像系統單晶片、包含其之影像擷取系統及影像擷取方法 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100319292B1 (ko) * | 1999-12-02 | 2002-01-05 | 윤종용 | 빠른 부팅 속도를 갖는 컴퓨터 시스템 및 그 방법 |
US6748457B2 (en) * | 2000-02-03 | 2004-06-08 | Realtime Data, Llc | Data storewidth accelerator |
KR20080011627A (ko) | 2006-07-31 | 2008-02-05 | 윤동구 | 컴퓨터 시스템 및 이 시스템의 부팅 방법 |
US8429677B2 (en) * | 2007-04-19 | 2013-04-23 | Microsoft Corporation | Composite solid state drive identification and optimization technologies |
US7886140B2 (en) * | 2007-08-16 | 2011-02-08 | International Business Machines Corporation | Booting a computer using a boot list when a non-volatile memory on the computer does not contain the boot list |
CN102160035A (zh) | 2008-09-18 | 2011-08-17 | 马维尔国际贸易有限公司 | 至少部分地在引导期间向存储器预加载应用 |
US8327066B2 (en) | 2008-09-30 | 2012-12-04 | Samsung Electronics Co., Ltd. | Method of managing a solid state drive, associated systems and implementations |
JP5198245B2 (ja) | 2008-12-27 | 2013-05-15 | 株式会社東芝 | メモリシステム |
KR101702390B1 (ko) * | 2009-04-09 | 2017-02-06 | 삼성전자주식회사 | 컴퓨터 시스템의 부팅 방법 |
US8874887B2 (en) * | 2011-04-07 | 2014-10-28 | Infosys Technologies, Ltd. | Fast booting computer apparatuses and methods thereof |
-
2013
- 2013-01-29 CN CN201310033786.2A patent/CN103970675A/zh active Pending
- 2013-02-26 US US13/777,025 patent/US9170823B2/en active Active
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105446701A (zh) * | 2015-11-09 | 2016-03-30 | 联想(北京)有限公司 | 一种数据处理方法、电子设备及控制器 |
CN107766097A (zh) * | 2016-08-16 | 2018-03-06 | 三星电子株式会社 | 基于端点装置提供的启动指令执行启动操作的电子装置 |
CN107766097B (zh) * | 2016-08-16 | 2021-08-13 | 三星电子株式会社 | 基于端点装置提供的启动指令执行启动操作的电子装置 |
CN110970078A (zh) * | 2018-09-28 | 2020-04-07 | 西部数据技术公司 | 用于快速引导读取的方法 |
CN110970078B (zh) * | 2018-09-28 | 2023-09-01 | 西部数据技术公司 | 用于快速引导读取的方法 |
CN113614702A (zh) * | 2019-03-07 | 2021-11-05 | 美光科技公司 | 基于检测到的读取命令活跃流的自适应预读高速缓存管理器 |
CN113614702B (zh) * | 2019-03-07 | 2023-05-30 | 美光科技公司 | 基于检测到的读取命令活跃流的自适应预读高速缓存管理器 |
CN111078148A (zh) * | 2019-12-17 | 2020-04-28 | 江苏芯盛智能科技有限公司 | 基于ssd的缓存方法、装置、ssd和计算机可读存储介质 |
CN111078148B (zh) * | 2019-12-17 | 2022-10-14 | 江苏芯盛智能科技有限公司 | 基于ssd的缓存方法、装置、ssd和计算机可读存储介质 |
CN112416262A (zh) * | 2020-12-08 | 2021-02-26 | 合肥大唐存储科技有限公司 | 一种固态硬盘中数据预读方法、存储介质和电子装置 |
CN112416262B (zh) * | 2020-12-08 | 2024-03-19 | 合肥大唐存储科技有限公司 | 一种固态硬盘中数据预读方法、存储介质和电子装置 |
Also Published As
Publication number | Publication date |
---|---|
US9170823B2 (en) | 2015-10-27 |
US20140215199A1 (en) | 2014-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103970675A (zh) | 用于使引导操作***加速的快速引导列表 | |
US10853238B2 (en) | Unaligned data coalescing | |
US11055230B2 (en) | Logical to physical mapping | |
JP5344411B2 (ja) | シリアルインターフェースメモリの同時読み出し及び書き込みメモリ動作 | |
US11216189B2 (en) | Method and computer program product for reading partial data of a page on multiple planes | |
KR102395538B1 (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
EP2997459B1 (en) | System and method for high performance and low cost flash translation layer | |
US9164895B2 (en) | Virtualization of solid state drive and mass storage drive devices with hot and cold application monitoring | |
KR101395778B1 (ko) | 메모리 카드 및 그것을 포함하는 메모리 시스템 그리고그것의 동작 방법 | |
US10268385B2 (en) | Grouped trim bitmap | |
US20200117389A1 (en) | Memory controller, storage device including the same, and method of operating the memory controller | |
KR20200085967A (ko) | 데이터 저장 장치 및 그 동작 방법 | |
US11210226B2 (en) | Data storage device and method for first processing core to determine that second processing core has completed loading portion of logical-to-physical mapping table thereof | |
US9037781B2 (en) | Method for managing buffer memory, memory controllor, and memory storage device | |
US11922062B2 (en) | Controller and operating method thereof | |
CN104008070A (zh) | 固态驱动器中的主引导记录保护 | |
CN105765540A (zh) | 管理用于非易失性存储器的传输缓冲器 | |
KR20200089939A (ko) | 메모리 시스템 및 그 동작 방법 | |
KR20190091035A (ko) | 메모리 시스템 및 그것의 동작 방법 | |
US20070061499A1 (en) | Methods and apparatus for providing a virtual flash device | |
US20080209157A1 (en) | Memory partitioning method | |
CN110309075B (zh) | 存储器控制器以及具有存储器控制器的存储器*** | |
US11449321B2 (en) | Controller and method for installing and executing bridge firmware data | |
US20240184712A1 (en) | Memory system with improved map table update efficiency, memory controller therefor, and operating method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20140806 |