一种计算机设备系统启动加速的方法和装置制造方法及图纸

技术编号:9837054 阅读:138 留言:0更新日期:2014-04-02 01:30
本发明专利技术公开了一种电子设备(特别是计算机设备)系统(特别是操作系统)启动加速的方法和装置,所述方法包括以下步骤:在电子设备启动时,创建预读取线程,以利用预读取线程开始从电子设备的磁盘中读取用于操作系统启动的预先定义的预读取数据;将预读取线程读取的预读取数据缓存到电子设备的内存中,以供操作系统启动时读取;以及在操作系统启动过程中,利用预读取线程继续读取预读取数据,并且接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段内暂停预读取线程的读取。

【技术实现步骤摘要】
一种计算机设备系统启动加速的方法和装置
本专利技术涉及计算机
,尤其涉及一种电子设备(特别是计算机设备)系统(特别是操作系统)启动加速的方法和装置。
技术介绍
伴随着信息技术的不断发展,人们生活节奏不断加快,人们对自己生活、学习和工作不可或缺的助手——各种电子设备,例如计算机的速度也不断提出新的要求。如何加快电子设备操作系统的启动速度一直是人们所关注的问题。磁盘读取速度被认为是影响操作系统启动速度的一个重要因素。操作系统启动时,需要从磁盘中读取启动所需的大量文件,这些文件零散地分布在磁盘中,操作系统只能通过分散的请求和偏移一次一次地读取这些文件。例如,某些操作系统启动时,操作系统从磁盘读取数据的请求队列有上千个请求排队,如果此时操作系统再发出新的请求,会根据其偏移排在队列的适当位置,一般是队尾,导致系统启动很慢。一种加快操作系统启动速度的做法是启动时禁用不需要的软件。在操作系统启动时,由于系统需要加载很多应用程序,通过禁用系统启动时没必要启动的软件,例如,将第三方安装的软件,用户用不到的打印,远程登陆等服务等应用,对系统启动速度进行优化。这通常是用户层通过修改配置文件,来实现系统启动的加速,需要解析数据结构,其加速效果不明显。
技术实现思路
鉴于上述问题,提出了本专利技术,以便提供一种克服上述问题或者至少部分地解决上述问题的电子设备操作系统启动加速的方法和装置。依据本专利技术的第一方面,提供了一种电子设备操作系统启动加速的方法,包括以下步骤:在电子设备启动时,创建预读取线程,以利用预读取线程开始从电子设备的磁盘中读取用于操作系统启动的预先定义的预读取数据;将预读取线程读取的预读取数据缓存到电子设备的内存中,以供操作系统启动时读取;以及在操作系统启动过程中,利用预读取线程继续读取预读取数据,并且接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段内暂停预读取线程的读取。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的方法中,还包括步骤:记录操作系统启动的信息,并且基于信息以及用于之前一次或多次操作系统启动的预先定义的预读取数据,生成用于之后一次或多次操作系统启动的预先定义的预读取数据,并且按照系统启动时读取的优先级对所述预先定义的预读取数据中的数据进行排序。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的方法中,还包括步骤:检测磁盘碎片整理时数据移动的情况,并且根据数据移动的情况,重新生成用于之后一次或多次操作系统启动的预先定义的预读取数据。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的方法中,操作系统启动的信息包括操作系统启动所花费的时间、操作系统从内存中读取所缓存的预读取数据的情况。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的方法中,利用预读取线程读取预读取数据的步骤包括:在小于或等于预先定义的读取时间间隔的情况下,利用两个读取请求按照磁盘排序和磁盘偏移同时读取两个文件;以及在大于预先定义的读取时间间隔的情况下,利用两个读取请求按照操作系统启动时处理文件的时间顺序先后读取两个文件。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的方法中,还包括步骤:在接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段后,在操作系统未从磁盘中获取到数据的情况下,利用预读取线程读取数据,并将数据缓存到内存中以供操作系统读取。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的方法中,还包括步骤:在接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段后,在检测到操作系统仍在读取地址偏移连续的数据的情况下,保持暂停所述预读取线程的读取,直到检测到操作系统读取地址偏移不连续的数据。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的方法中,还包括步骤:在检测到操作系统对磁盘进行自检时,暂停所述预读取线程读取所述预读取数据,直到检测到磁盘自检结束。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的方法中,还包括步骤:在接收到操作系统从磁盘中读取数据的请求时,在检测到操作系统要从磁盘中读取的数据中的部分包括在所述预读取数据中的情况下,将这部分的数据缓存到内存中以供操作系统读取;并且在预先定义的时间段后,在操作系统未从磁盘中获取到其它部分的数据的情况下,利用预读取线程读取所述其它部分的数据,并将所述其它部分的数据缓存到内存中以供操作系统读取。依据本专利技术的第二方面,提供了一种电子设备操作系统启动加速的装置,包括:预读取模块,用于在电子设备启动时,创建预读取线程,以利用预读取线程开始从电子设备的磁盘中读取用于操作系统启动的预先定义的预读取数据;缓存模块,用于将预读取模块读取的预读取数据缓存到电子设备的内存中,以供操作系统启动时读取,预读取模块在操作系统启动过程中,利用预读取线程继续读取预读取数据,并且接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段内暂停预读取线程的读取。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的装置中,还包括:预读取数据生成模块,用于记录操作系统启动的信息,并且基于信息以及用于之前一次或多次操作系统启动的预先定义的预读取数据,生成用于之后一次或多次操作系统启动的预先定义的预读取数据。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的装置中,还包括:磁盘碎片整理检测模块,用于检测磁盘碎片整理时数据移动的情况,预读取数据生成模块根据磁盘碎片整理检测模块检测到的数据移动的情况,重新生成用于之后一次或多次操作系统启动的预先定义的预读取数据。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的装置中,操作系统启动的信息包括操作系统启动所花费的时间、操作系统从内存中读取所缓存的预读取数据的情况。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的装置中,预读取模块用于:在小于或等于预先定义的读取时间间隔的情况下,利用两个读取请求按照磁盘排序和磁盘偏移同时读取两个文件;以及在大于预先定义的读取时间间隔的情况下,利用两个读取请求按照操作系统启动时处理文件的时间顺序先后读取两个文件。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的装置中,预读取模块用于在接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段后,在操作系统未从磁盘中获取到数据的情况下,利用预读取线程读取数据,并且缓存模块用于将数据缓存到内存中以供操作系统读取。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的装置中,所述预读取模块在接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段后,在检测到操作系统仍在读取地址偏移连续的数据的情况下,保持暂停所述预读取线程的读取,直到检测到操作系统读取地址偏移不连续的数据。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的装置中,所述预读取模块在检测到操作系统对磁盘进行自检时,暂停所述预读取线程读取所述预读取数据,直到检测到磁盘自检结束。可选地,在根据本专利技术的实施例的电子设备操作系统启动加速的装置中,所述预读取模块在接收到操作系统从磁盘中读取数据的请求时,在检测到操作系统要从磁盘中读取的数据中的部分包括在所述预读取数据中的情况下,将这部分的数据缓存到内存中以供操作系统读取;并且在预先定本文档来自技高网...
一种计算机设备系统启动加速的方法和装置

【技术保护点】
一种电子设备操作系统启动加速的方法,包括以下步骤:在电子设备启动时,创建预读取线程,以利用预读取线程开始从电子设备的磁盘中读取用于操作系统启动的预先定义的预读取数据;将所述预读取线程读取的所述预读取数据缓存到电子设备的内存中,以供操作系统启动时读取;以及在操作系统启动过程中,利用所述预读取线程继续读取所述预读取数据,并且接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段内暂停所述预读取线程的读取。

【技术特征摘要】
1.一种电子设备操作系统启动加速的方法,包括以下步骤:在电子设备启动时,创建预读取线程,以利用预读取线程开始从电子设备的磁盘中读取用于操作系统启动的预先定义的预读取数据;将所述预读取线程读取的所述预读取数据缓存到电子设备的内存中,以供操作系统启动时读取;以及在操作系统启动过程中,利用所述预读取线程继续读取所述预读取数据,并且接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段内暂停所述预读取线程的读取;其中利用预读取线程读取所述预读取数据的步骤包括:在小于或等于预先定义的读取请求时间间隔的情况下,利用两个读取请求按照磁盘排序和磁盘偏移同时读取两个文件;以及在大于预先定义的读取请求时间间隔的情况下,利用两个读取请求按照操作系统启动时处理文件的时间顺序先后读取两个文件。2.如权利要求1所述的方法,还包括步骤:记录操作系统启动的信息,并且基于所述信息以及用于之前一次或多次操作系统启动的预先定义的预读取数据,生成用于之后一次或多次操作系统启动的预先定义的预读取数据,并且按照系统启动时读取的优先级对所述预先定义的预读取数据中的数据进行排序。3.如权利要求2所述的方法,还包括步骤:检测磁盘碎片整理时数据移动的情况,并且根据所述数据移动的情况,重新生成用于之后一次或多次操作系统启动的预先定义的预读取数据。4.如权利要求2所述的方法,其中所述操作系统启动的信息包括操作系统启动所花费的时间、操作系统从内存中读取所缓存的预读取数据的情况。5.如权利要求1至4中的任一项所述的方法,还包括步骤:在接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段后,在操作系统未从磁盘中获取到所述数据的情况下,利用预读取线程读取所述数据,并将所述数据缓存到内存中以供操作系统读取。6.如权利要求1至4中的任一项所述的方法,还包括步骤:在接收到操作系统从磁盘中读取数据的请求时,在预先定义的时间段后,在检测到操作系统仍在读取地址偏移连续的数据的情况下,保持暂停所述预读取线程的读取,直到检测到操作系统读取地址偏移不连续的数据。7.如权利要求1至4中的任一项所述的方法,还包括步骤:在检测到操作系统对磁盘进行自检时,暂停所述预读取线程读取所述预读取数据,直到检测到磁盘自检结束。8.如权利要求1至4中的任一项所述的方法,还包括步骤:在接收到操作系统从磁盘中读取数据的请求时,在检测到操作系统要从磁盘中读取的数据中的部分包括在所述预读取数据中的情况下,将这部分的数据缓存到内存中以供操作系统读取;并且在预先定义的时间段后,在操作系统未从磁盘中获取到其它部分的数据的情况下,利用预读取线程读取所述其它部分的数据,并将所述其它部分的数据缓存到内存中以供操作系统读取。9.一种电子设备操作系统启动加速的装置,包括:预读取模块,用于在电子设备启动时,创建预读取...

【专利技术属性】
技术研发人员:李常坤彭岩白川汤迪斌
申请(专利权)人:北京奇虎科技有限公司 奇智软件北京有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1