计算机设备及计算机设备内存启动的方法技术

技术编号:13431187 阅读:81 留言:0更新日期:2016-07-30 03:24
一种计算机设备和计算机的内存启动的方法,以解决现有技术中内存初始化时间过长影响用户体验的问题。本发明专利技术通过提供的计算机设备和计算机的内存启动方法,在计算机上电启动后,基本输入输出系统在内存初始化阶段只初始化第一部分内存,使得操作系统能够启动,并在操作系统启动后,由基本输入输出系统继续初始化计算机中未初始化的内存,使得计算机在启动阶段,不需要等到所有的内存初始化后再启动操作系统,缩短了计算机从启动到进入操作系统的时间,使得用户能够快速进入操作系统进行操作,提高了用户的体验。

Computer equipment and method for starting memory of computer equipment

The invention relates to a method for starting the memory of a computer device and a computer, in order to solve the problem that the memory initialization time is too long in the prior art to affect the user experience. The invention of computer and computer equipment provided by the memory starting method, at the start of electric computer, the basic input output system in memory initialization stage only initialized first part of memory, the operating system can be started, and the start of the operating system, the input to output by the system initialization uninitialized memory in the computer, the the computer in the start stage, does not need to wait until all the initialization of memory and start the operating system, shorten the computer from the start to enter the operating system time, enabling the user to quickly enter the operating system for operation, improve the user experience.

【技术实现步骤摘要】
【国外来华专利技术】计算机设备及计算机设备内存启动的方法
本专利技术涉及信息
,尤其涉及一种计算机设备以及内存启动的方法。
技术介绍
内存是计算机中重要的部件之一,计算机中所有程序的运行都是在内存中进行。内存的作用是用于暂时存放中央处理器(CPU,centralprocessingunit)中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了计算机的稳定运行。随着CPU技术的发展以及内存的容量增大及价格的降低,计算机开始使用越来越多的内存来提升自己的整体性能。随之而来的系统启动过程中对内存的training及自检的时间也会线性的增长,当使用TB级的内存的时候,传统的处理方式会在启动阶段初化完系统所有的内存后开始training及自检操作,自检耗时也许会增加到十几分钟,导致计算机启动过慢,影响用户感受。
技术实现思路
本专利技术实施例提供一种计算机设备和计算机内存启动的方法,以解决现有技术中计算设备内存初始化时间过长,用户等待时间过长的问题。本专利技术实施例的第一方面,提供一种计算机的内存启动方法,包括:所述计算机的基本输入输出系统在所述计算机上电启动时,在内存的初始化阶段只初始化所述计算机的第一部分内存,所述第一部分内存是预先设定的所述计算机内存的部分内存,经过初始化的所述第一部分内存能够满足所述计算机上运行的操作系统启动对内存的需求;所述基本输入输出系统,在所述计算机的操作系统启动后继续初始化所述计算机内存中所述第一部分内存之外的内存,并将初始化后的所述第一部分内存之外的内存通知所述计算机的操作系统,使得所述计算机的操作系统对所述计算机内存中所述第一部分内存之外的内存进一步初始化,并将进一步初始化后的内存加入到所述操作系统的可用内存中。结合第一方面,在第一方面第一种可能的实现方式中,所述计算机的操作系统对所述计算机内存中所述第一部分内存之外的内存进一步初始化包括:所述计算机的操作系统通过内核线程或内核驱动的方式启动操作系统阶段的内存初始化,并将初始化后的所述计算机内存中除所述第一部分内存之外的内存加入到所述操作系统的可用内存中。结合第一方面,在第一方面第二种可能的实现方式中,所述方法还包括:所述计算机的操作系统在启动后,对所述基本输入输出系统初始化后的内存进一步初始化,并将进一步初始化的所述第一部分内存加入到所述操作系统的可用内存中。结合第一方面,在第一方面第三种可能的实现方式中,所述第一部分内存的大小是通过硬件信号或配置文件的方式设定的;其中,所述硬件信号方式,是通过硬件输出的电平信号以及按照预先设定的电平信号与内存大小的关系来设定所述第一部分内存的大小;所述配置文件方式,是通过在基本输入输出系统中增加配置选项,根据接收到的所述配置选项中输入的内存大小确定所述第一部分内存的大小。结合第一方面,在第一方面第四种可能的实现方式中,所述第一部分内存的大小是通过预先设定的内存槽位确定的,在基本输入输出系统启动阶段上电的内存槽位对应的内存的大小,为所述第一部分内存的大小。结合第一方面,在第一方面和第五种可能的实现方式中,所述操作系统对所述基本输入输出系统初始化后的所述第一部分内存之外的内存进一步的初始化包括:所述操作系统判断所述进一步初始化后的内存是否满足待启动进程所需的内存大小,在所述进一步初始化后的内存大小不满足所述待启动进程所需的内存大小时,等待预定的时间;所述操作系统在进一步初始化后的内存大小满足所述待启动的进程的要求时,启动所述待启动的进程。结合第一方面,在第一方面第六种可能的实现方式中,所述方法还包括:当进一步初始化后的内存大小满足两个以上的进程启动所需的内存时,优先启动优先级高的进程。结合第一方面,在第一方面第七种可能的实现方式中,其特征在于,所述计算机的操作系统为Linux操作系统,相应的,所述计算机的操作系统对所述计算机内存中所述第一部分内存进行初始化包括:所述计算机的操作系统通过main函数和start_kernel函数对所述计算机内存中除所述第一部分内存之外的内存进行初始化;其中,所述计算机的操作系统通过main函数对所述基本输入输出系统初始化完成的内存进行探测,并写入全局e820表中;所述start_kernel函数用于初始化内存管理区。第二方面,本专利技术实施例还提供了一种计算机设备,包括内存和中央处理器,以及运行在所述计算机设备上的基本输入输出系统和操作系统,所述基本输入输出系统,用于在所述计算机设备上电启动时,在内存的初始化阶段只初始化所述计算机设备的第一部分内存,所述第一部分内存是预先设定的所述计算机设备内存的部分内存,经过初始化的所述第一部分内存能够满足所述计算机设备上运行的操作系统启动对内存的需求;并在所述操作系统启动后继续初始化所述计算机内存中所述第一部分内存之外的内存,并将初始化后的所述第一部分内存之外的内存通知所述操作系统;所述操作系统,用于对所述计算机设备内存中所述第一部分内存之外的内存进一步初始化,并将进一步初始化后的内存加入到所述操作系统的可用内存中。结合第二方面,在第二方面第一种可能的实现方式中,所述操作系统对所述计算机内存中除所述第一部分内存之外的内存进一步初始化包括:所述操作系统通过内核线程或内核驱动的方式启动操作系统阶段的内存初始化,并将初始化后的所述计算机内存中除所述第一部分内存之外的内存加入到所述操作系统的可用内存中。结合第二方面,在第二方面第二种可能的实现方式中,所述操作系统还用于,在启动后对所述基本输入输出系统初始化后的所述第一部分内存进一步初始化,并将进一步初始化的所述第一部分内存加入到所述操作系统的可用内存中。结合第二方面,在第二方面第三种可能的实现方式中,所述第一部分内存的大小是通过硬件信号或配置文件的方式设定的;其中,所述硬件信号方式,是通过硬件输出的电平信号以及按照预先设定的电平信号与内存大小的关系来设定所述第一部分内存的大小;所述配置文件方式,是通过在基本输入输出系统中增加配置选项,根据接收到的所述配置选项中输入的内存大小确定所述第一部分内存的大小。结合第二方面,在第二方面第四种可能的实现方式中,所述第一部分内存的大小是通过预先设定的内存槽位确定的,在所述基本输入输出系统的程序启动阶段上电的内存槽位对应的内存的大小,为所述第一部分内存的大小。结合第二方面,在第二方面第五种可能的实现方式中,所述操作系统对所述基本输入输出系统初始化后的所述第一部分内存之外的内存进一步的初始化包括:所述操作系统判断所述进一步初始化后的内存是否满足待启动进程所需的内存大小,在所述进一步初始化后的内存大小不满足所述待启动进程所需的内存大小时,等待预定的时间,在进一步初始化后的内存大小满足所述待启动的进程的要求时,启动所述待启动的进程。结合第二方面,在第二方面第六种可能的实现方式中,所述操作系统对所述基本输入输出系统初始化后的所述第一部分内存之外的内存进一步的初始化时,如果进一步初始化后的内存大小满足两个以上的进程启动所需的内存时,优先启动优先级高的进程。结合第二方面,在第二方面第七种可能的实现方式中,所述操作系统为Linux操作系统,相应的,所述操作系统对所述计算本文档来自技高网...

【技术保护点】
PCT国内申请,权利要求书已公开。

【技术特征摘要】
【国外来华专利技术】1.一种计算机的内存启动方法,其特征在于:所述计算机的基本输入输出系统在所述计算机上电启动时,在内存的初始化阶段只初始化所述计算机的第一部分内存,所述第一部分内存是预先设定的所述计算机内存的部分内存,经过初始化的所述第一部分内存能够满足所述计算机上运行的操作系统启动对内存的需求;所述基本输入输出系统,在所述计算机的操作系统启动后继续初始化所述计算机内存中所述第一部分内存之外的内存,并将初始化后的所述第一部分内存之外的内存通知所述计算机的操作系统,使得所述计算机的操作系统对所述计算机内存中所述第一部分内存之外的内存进一步初始化,并将进一步初始化后的内存加入到所述操作系统的可用内存中;所述操作系统对所述基本输入输出系统初始化后的所述第一部分内存之外的内存进一步的初始化包括:所述操作系统判断所述进一步初始化后的内存是否满足待启动进程所需的内存大小,在所述进一步初始化后的内存大小不满足所述待启动进程所需的内存大小时,等待预定的时间;所述操作系统在进一步初始化后的内存大小满足所述待启动的进程的要求时,启动所述待启动的进程。2.根据权利要求1所述的计算机的内存启动方法,其特征在于,所述计算机的操作系统对所述计算机内存中所述第一部分内存之外的内存进一步初始化包括:所述计算机的操作系统通过内核线程或内核驱动的方式启动操作系统阶段的内存初始化,并将初始化后的所述计算机内存中除所述第一部分内存之外的内存加入到所述操作系统的可用内存中。3.根据权利要求1所述的计算机的内存启动方法,其特征在于,所述方法还包括:所述计算机的操作系统在启动后,对所述基本输入输出系统初始化后的内存进一步初始化,并将进一步初始化的所述第一部分内存加入到所述操作系统的可用内存中。4.根据权利要求1-3任一所述的计算机的内存启动方法,其特征在于:所述第一部分内存的大小是通过硬件信号或配置文件的方式设定的;其中,所述硬件信号方式,是通过硬件输出的电平信号以及按照预先设定的电平信号与内存大小的关系来设定所述第一部分内存的大小;所述配置文件方式,是通过在基本输入输出系统中增加配置选项,根据接收到的所述配置选项中输入的内存大小确定所述第一部分内存的大小。5.根据权利要求1-3任一所述的计算机的内存启动方法,其特征在于:所述第一部分内存的大小是通过预先设定的内存槽位确定的,在基本输入输出系统启动阶段上电的内存槽位对应的内存的大小,为所述第一部分内存的大小。6.根据权利要求1-3任一所述的计算机的内存启动方法,其特征在于,所述方法还包括:当进一步初始化后的内存大小满足两个以上的进程启动所需的内存时,优先启动优先级高的进程。7.根据权利要求1-3中任一所述的计算机的内存启动方法,其特征在于,所述计算机的操作系统为Linux操作系统,相应的,所述计算机的操作系统对所述计算机内存中所述第一部分内存进行初始化包括:所述计算机的操作系统通过main函数和start_kernel函数对所述计算机内存中除所述第一部分内存之外的内存进行初始化;其中,所述计算机的操作系统通过main函数对所述基本输入输出系统初始化完成的内存进行探测,并写入全局e820表中;所述start_kernel函数用于初始化内存管理区。8.一种计算机设...

【专利技术属性】
技术研发人员:何剑李显才倪小珂姚益民
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1