CN102609291B - 基于固态硬盘的系统启动方法和固态硬盘 - Google Patents
基于固态硬盘的系统启动方法和固态硬盘 Download PDFInfo
- Publication number
- CN102609291B CN102609291B CN201210049949.1A CN201210049949A CN102609291B CN 102609291 B CN102609291 B CN 102609291B CN 201210049949 A CN201210049949 A CN 201210049949A CN 102609291 B CN102609291 B CN 102609291B
- Authority
- CN
- China
- Prior art keywords
- data
- solid state
- state hard
- hard disc
- startup
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 239000007787 solid Substances 0.000 claims description 62
- 239000007858 starting material Substances 0.000 claims 1
- 239000002245 particle Substances 0.000 description 11
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Abstract
本发明适用于计算机技术领域,提供了一种基于固态硬盘的系统启动方法,所述固态硬盘具有若干NAND flash构成的flash阵列,所述方法包括:记录系统启动时从所述固态硬盘读取的启动数据,以及所述启动数据的读取顺序;判断所述启动数据是否按启动顺序均匀的排列于所述flash阵列,若是,则不作处理,否则所述固态硬盘在所述系统完成启动后的空闲时间调整所述启动数据,使所述启动数据按启动顺序均匀的排列于所述flash阵列。本发明还相应的提供一种实现上述方法的固态硬盘。借此,本发明可以缩短固态硬盘系统的开机时间。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于固态硬盘的系统启动方法和固态硬盘。
背景技术
随着计算机技术的发展,固态硬盘已得到广泛应用,目前的固态存储中,存储单元是通常是Nand Flash芯片或Nand Flash芯片阵列。由于技术限制,单个Nand Flash的读写速度远远小于固态硬盘与计算机之间的通信速度,并且单个Nand Flash的容量也是有限的。因此,一般的固态硬盘都采用Nand Flash阵列作为存储的,如图1所示的系统结构。
一般而言,计算机系统的启动过程一般分为两阶段,第一阶段由BIOS先启动,并对计算机外设进行一些必要的初始化,然后再从硬盘上读取操作系统(OS)的数据来启动OS。由于机械硬盘本身初始化非常快,在BOIS运行阶段就可以读取数据,所以使用传统的机械硬盘要加快开机速度的方法很简单,只需在BIOS运行阶段提前把开机所需数据读取到硬盘缓存中或直接读取到计算机内存中。而对于固态硬盘系统,计算机开机时固态硬盘本身也要进行初始化,其初始化的时间一般都大于BIOS运行的时间,所以使用在传统机械硬盘上的预读取方式加快开机速度已经不可行了。
综上可知,现有的固态硬盘系统,在实际使用上显然存在不便与缺陷,所以有必要加以改进。
发明内容
针对上述的缺陷,本发明的目的在于提供一种基于固态硬盘的系统启动方法和固态硬盘,其可以提高系统的数据读取速度,缩短系统的启动时间。
为了实现上述目的,本发明提供一种基于固态硬盘的系统启动方法,所述固态硬盘具有若干NAND flash构成的flash阵列,所述方法包括:
记录系统启动时从所述固态硬盘读取的启动数据,以及所述启动数据的读取顺序;
判断所述启动数据是否按启动顺序均匀的排列于所述flash阵列,若是,则不作处理,否则所述固态硬盘在所述系统完成启动后的空闲时间调整所述启动数据,使所述启动数据按启动顺序均匀的排列于所述flash阵列。
根据本发明的基于固态硬盘的系统启动方法,所述系统每次从所述固态硬盘读取启动数据时,同时从每个所述NAND flash各读取一个最小数据单元。
根据本发明的基于固态硬盘的系统启动方法,所述记录系统启动时从所述固态硬盘读取的启动数据步骤之前包括:设置系统启动完成标识。
根据本发明的基于固态硬盘的系统启动方法,所述设置系统启动完成标识步骤包括:预设数据量,当所述系统的数据写入量达到所述预设数据量时,则判定所述系统启动完成。
根据本发明的基于固态硬盘的系统启动方法,所述记录系统启动数据的时间段为:从所述系统启动到所述系统写入的数据量达到所述预设数据量。
本发明还相应的提供一种固态硬盘,所述固态硬盘包括:
记录模块,用于记录系统启动时从所述固态硬盘读取的启动数据,以及所述启动数据的读取顺序;
判断模块,用于判断所述启动数据是否按启动顺序均匀的排列于所述flash阵列,若是,则不作处理,否则将判断信息发送至数据调整模块;
数据调整模块,用于所述固态硬盘在所述系统完成启动后的空闲时间调整所述启动数据,使所述启动数据按启动顺序均匀的排列于所述flash阵列。
根据本发明的固态硬盘,所述固态硬盘还包括设置模块,用于设置所述系统的启动完成标识。
根据本发明的固态硬盘,所述设置模块预设数据量,当所述系统的数据写入量达到所述预设数据量时,则判定所述系统启动完成。
根据本发明的固态硬盘,所述记录系统启动数据的时间段为:从所述系统启动到所述系统写入的数据量达到所述预设数据量。
本发明通过在系统启动时记录系统的启动数据,并同时记录这些数据的读取顺序,然后判断这些启动数据是否是按启动顺序均匀排列在固态硬盘的flash阵列上,如果是则不作处理,否则在固态硬盘空闲时调整所述启动数据,使其按启动顺序均匀排列于各flash阵列上,借此,当固态硬盘系统下一次启动再读取所述数据时可以大大提高数据读取效率,提高系统启动速度。
附图说明
图1是现有技术的固态硬盘系统的结构示意图;
图2是本发明一实施例的固态硬盘的结构示意图;
图3是本发明一实施例的flash阵列的数据排列示意图;
图4是本发明的基于固态硬盘的系统启动方法的流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
参见图2,本发明提供了一种固态硬盘,具有若干NAND flash构成的flash阵列,该固态硬盘100包括:
记录模块10,用于记录系统启动时从固态硬盘100读取的启动数据,以及所述启动数据的读取顺序。实际应用中,系统启动需要从硬盘100中按一定顺序读取大量的启动数据,读取这些数据的效率直接影响的系统的开启速度,记录模块10在系统启动时记录读取的数据及相应的读取顺序,借此可方便后续的进一步处理。
判断模块20,用于判断启动数据是否按启动顺序均匀的排列于flash阵列,若是,则不作处理,否则将判断信息发送至数据调整模块30。结合图3,由三个NAND Flash颗粒组成固态储存阵列,数据1到数据18存储于阵列中,需要说明的是,每个数据均为Nand Flash读取操作的最小单元,一般为Nand Flash的一个page)。本发明的技术方案是将数据1和数据18按启动顺序均匀排列于各个Flash颗粒,当系统读每次读取数据时能够分别从三个Flash颗粒中各读取一个数据单元,比如读取数据1、5、3,如果判断模块20判断出数据1、5、3并非均匀排列于Flash颗粒,比如,数据1和5排列于Flash A颗粒,数据3排列于另一个Flash C颗粒,则系统读取数据时需要从Flash A颗粒中读取两次,使数据读取效率较慢,此时判断模块20将判断信息发送至数据调整模块30,该数据调整模块30接收到该在系统完成启动后的空闲时间调整启动数据。
数据调整模块30,用于调整系统的启动数据,使所述启动数据按启动顺序均匀的排列于所述flash阵列。如前所述,假设判断模块20判断出需要读取的启动数据1和5都位于Flash A颗粒上,而另一数据3位于Flash C颗粒,则数据调整模块30在固态硬盘100空闲时,将数据5或1调整至Flash B颗粒,借此,当系统启动读取数据时可以同时从每个Flash颗粒读取一个数据,使系统下一次启动时,数据的读取效率达到最大,提高启动速度。
优选的是,本发明的固态硬盘100还包括设置模块40,用于设置系统的启动完成标识。具体应用中,系统每次启动的时间可能有所差别,设置模块40通过预设系统启动完成标识,使系统每次启动时,记录模块10记录在启动时间内读取的启动数据。固态硬盘系统在启动时会大量读取数据,而很少写入数据,所以,当系统有大量数据写入时,系统的启动即基本完成。在本发明的一实施例中,固态硬盘100通过设置模块40预设一数据量N,在系统启动过程中,如果检测到写入系统的数据量达到N时,则判定系统启动完成,记录模块10记录从系统启动到系统内写入的数据量达到N时的读取的数据。
本发明在系统每次启动时都记录系统的启动数据,并进行判断调整,系统启动过程中能够从各个Nand flash上同时取数据。避免从同一个flash读取多次,而有的flash则空闲。当系统一次读取数据时,各个Nand flash取数据的次数尽可能相同,避免了Nand flash有空闲,借此使系统下次启动时具有较高的数据读取速度。
图4是本发明的基于固态硬盘的系统启动方法流程图,其可以通过如图2所示的固态硬盘100实现,该方法包括:
步骤S401,记录模块10记录系统启动时从固态硬盘100读取的启动数据,以及所述启动数据的读取顺序。
步骤S402,判断模块20判断启动数据是否按启动顺序均匀的排列于所述flash阵列,若是,则不作处理,否则进入步骤S403。
步骤S403,数据调整模块30在所述系统完成启动后的空闲时间调整所述启动数据,使所述启动数据按启动顺序均匀的排列于所述flash阵列。通过对系统启动数据的处理调整,使系统下次启动读取数据时,可以从每个NAND flash各读取一个最小数据单元,借此使系统的启动性能得到大幅的优化。
优选的是,由于固态硬盘系统每次启动的时间可能有所差别,本发明在步骤S401之前还包括预设系统启动完成标识,具体的是通过设置模块40设置一数据量N,系统启动时当其写入的数据量过到N时,即判定为系统启动完成。记录模块10也只记录这个时间段内系统读取的数据。
综上所述,本发明通过在系统启动时记录系统的启动数据,并同时记录这些数据的读取顺序,然后判断这些启动数据是否是按启动顺序均匀排列在固态硬盘的flash阵列上,如果是则不作处理,否则在固态硬盘空闲时调整所述启动数据,使其按启动顺序均匀排列于各flash阵列上,借此,当固态硬盘系统下一次启动再读取所述数据时可以大大提高数据读取效率,提高系统启动速度。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (5)
1.一种基于固态硬盘的系统启动方法,所述固态硬盘具有若干NAND flash构成的flash阵列,其特征在于,所述方法包括:
设置系统启动完成标识步骤:预设数据量,当系统的数据写入量达到所述预设数据量时,则判定所述系统启动完成;
记录系统启动时从所述固态硬盘读取的启动数据,以及所述启动数据的读取顺序;
判断所述启动数据是否按启动顺序均匀的排列于所述flash阵列,若是,则不作处理,否则所述固态硬盘在所述系统完成启动后的空闲时间调整所述启动数据,使所述启动数据按启动顺序均匀的排列于所述flash阵列。
2.根据权利要求1所述的基于固态硬盘的系统启动方法,其特征在于,所述系统每次从所述固态硬盘读取启动数据时,同时从每个所述NAND flash各读取一个最小数据单元。
3.根据权利要求1所述的基于固态硬盘的系统启动方法,其特征在于,所述记录系统启动数据的时间段为:从所述系统启动到所述系统写入的数据量达到所述预设数据量。
4.一种基于固态硬盘的系统启动装置,所述固态硬盘具有若干NAND flash构成的flash阵列,其特征在于,所述启动装置包括:
设置模块,用于设置所述系统的启动完成标识,预设数据量,当所述系统的数据写入量达到所述预设数据量时,判定所述系统启动完成;
记录模块,用于记录系统启动时从所述固态硬盘读取的启动数据,以及所述启动数据的读取顺序;
判断模块,用于判断所述启动数据是否按启动顺序均匀的排列于所述flash阵列,若是,则不作处理,否则将判断信息发送至数据调整模块;
数据调整模块,用于所述固态硬盘在所述系统完成启动后的空闲时间调整所述启动数据,使所述启动数据按启动顺序均匀的排列于所述flash阵列。
5.根据权利要求4所述的基于固态硬盘的系统启动装置,其特征在于,所述记录系统启动数据的时间段为:从所述系统启动到所述系统写入的数据量达到所述预设数据量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210049949.1A CN102609291B (zh) | 2012-02-29 | 2012-02-29 | 基于固态硬盘的系统启动方法和固态硬盘 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210049949.1A CN102609291B (zh) | 2012-02-29 | 2012-02-29 | 基于固态硬盘的系统启动方法和固态硬盘 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102609291A CN102609291A (zh) | 2012-07-25 |
CN102609291B true CN102609291B (zh) | 2015-05-27 |
Family
ID=46526689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210049949.1A Expired - Fee Related CN102609291B (zh) | 2012-02-29 | 2012-02-29 | 基于固态硬盘的系统启动方法和固态硬盘 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102609291B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107861775A (zh) * | 2017-12-04 | 2018-03-30 | 郑州云海信息技术有限公司 | 一种ssd启动控制设备以及方法 |
CN112559055B (zh) * | 2019-09-25 | 2023-12-26 | 阿里巴巴集团控股有限公司 | 一种计算机系统的启动方法及装置、电子设备、存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1296582A (zh) * | 1998-04-15 | 2001-05-23 | 微软公司 | 改进程序发送时间的系统和方法 |
US6968450B1 (en) * | 2002-06-01 | 2005-11-22 | Western Digital Technologies, Inc. | Disk drive caching initial host requested data in non-volatile semiconductor memory to reduce start-up time of a host computer |
CN101048822A (zh) * | 2004-10-26 | 2007-10-03 | 松下电器产业株式会社 | 磁盘再现装置 |
CN101714143A (zh) * | 2008-10-08 | 2010-05-26 | 英业达股份有限公司 | 映像文件的制作方法与文件系统的排序方法 |
-
2012
- 2012-02-29 CN CN201210049949.1A patent/CN102609291B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1296582A (zh) * | 1998-04-15 | 2001-05-23 | 微软公司 | 改进程序发送时间的系统和方法 |
US6968450B1 (en) * | 2002-06-01 | 2005-11-22 | Western Digital Technologies, Inc. | Disk drive caching initial host requested data in non-volatile semiconductor memory to reduce start-up time of a host computer |
CN101048822A (zh) * | 2004-10-26 | 2007-10-03 | 松下电器产业株式会社 | 磁盘再现装置 |
CN101714143A (zh) * | 2008-10-08 | 2010-05-26 | 英业达股份有限公司 | 映像文件的制作方法与文件系统的排序方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102609291A (zh) | 2012-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101425957B1 (ko) | 이씨씨 제어 회로 및 그것을 포함하는 멀티채널 메모리시스템 | |
US20120290864A1 (en) | Asynchronous management of access requests to control power consumption | |
KR102114109B1 (ko) | 데이터 저장 장치 | |
US8489833B2 (en) | Data backup method for flash memory module and solid state drive | |
US9424177B2 (en) | Clock switching method, memory controller and memory storage apparatus | |
TWI489466B (zh) | 記憶體抹除方法、記憶體控制器與記憶體儲存裝置 | |
US9552287B2 (en) | Data management method, memory controller and embedded memory storage apparatus using the same | |
US20190220220A1 (en) | Data storage device, operating method thereof and nonvolatile memory device | |
KR20190083148A (ko) | 데이터 저장 장치 및 그것의 동작 방법 및 그것을 포함하는 데이터 처리 시스템 | |
CN100403246C (zh) | 模拟硬盘的装置及其方法 | |
US20090259796A1 (en) | Data writing method for non-volatile memory and storage system and controller using the same | |
CN111399752A (zh) | 不同类型存储单元的控制装置及方法 | |
TW201734793A (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN106095416A (zh) | 一种在应用程序中的跳转处理方法、装置及智能终端 | |
US9804983B2 (en) | Controlling method, connector, and memory storage device | |
KR102501695B1 (ko) | 메모리 시스템 및 그것의 동작 방법 | |
KR20180097026A (ko) | 불휘발성 메모리 장치, 그것을 포함하는 데이터 저장 장치 및 데이터 저장 장치의 동작 방법 | |
CN104951376A (zh) | 参数优化方法及参数优化装置 | |
KR102388746B1 (ko) | 세이프 어드레스 매핑을 이용한 메모리 셀 액세스 제어 방법 | |
US20220164144A1 (en) | Method of writing data in nonvolatile memory device and nonvolatile memory device performing the same | |
CN102609291B (zh) | 基于固态硬盘的系统启动方法和固态硬盘 | |
KR20180089742A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
CN101118494A (zh) | 嵌入式设备从外接电子卡启动操作系统的系统与方法 | |
US20190227788A1 (en) | Memory system and operating method thereof | |
KR20200089939A (ko) | 메모리 시스템 및 그 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150527 |