利用启动加速器提高Linux服务器启动速度的方法

文档序号:6547837阅读:425来源:国知局
利用启动加速器提高Linux服务器启动速度的方法
【专利摘要】本发明公开了一种利用启动加速器提高Linux服务器启动速度的方法,包括启动加速器通过其上的网卡读取目标Linux服务器群上的启动配置文件和内核源码文件,并传给启动加速器上的启动加速处理模块;以及启动加速器模块将自动定制该内核的源码文件,使其能够在启动时,不再向日志文件中写日志,并且,在启动结束后,能够恢复日志输出,用于满足用户调试程序时,查看Linux内核日志的需求。上述方法,其可在无需人工干预下,自动完成多台Linux服务器的优化;能够进一步减少Linux内核在启动时的输出操作,并且不影响启动后Linux内核的正常信息的输出;且能够对Linux内核达到函数级的裁减,进一步压缩内核。
【专利说明】利用启动加速器提高Linux服务器启动速度的方法

【技术领域】
[0001] 本发明涉及Linux服务器领域,具体涉及一种利用启动加速器提高Linux服务器 启动速度的方法。

【背景技术】
[0002] 目前,主要通过屏蔽输出的方法提高Linux服务器的启动速度,亦即通过用户手 动向Linux传递quiet参数,quiet参数是Linux内核中固有的参数,具体方法是编辑类似 于grub, conf等启动配置文件,并在该启动配置文件中加载Linux内核的那条语句的末端 添加"quiet"参数。对于削减内核大小的方法,目前采用的也是手动通过make menuconfig, 并在出现的模块配置屏幕上,逐一配置所需要的模块,去除无用的模块。
[0003] 采用向Linux内核传递quiet参数屏蔽输出的方法要求用户有较高的Linux系统 优化知识,而对于大量的普通用户而言,这是难以实现的。同时,用户手动操作对系统进行 优化,极为耗时,特别是当需要对多台(如上百台)Linux服务器进行优化时,将耗费用户的 大量时间。另外,quiet参数虽然会使屏幕上不再有任何输出,但还会向日志文件中写入启 动日志,导致依然耗费较大的启动时间。
[0004] 而通过make menuconfig的方法削减Linux内核大小方法,除存在要求用户有较高 的Linux系统优化知识以及需用户手动操作缺陷以外,它还只能做到内核模块级裁减,不 能做到内核函数级的裁减,导致内核仍然存在着一些不必要的函数,增加了内核的体积。因 此,有必要提出新的提高Linux服务器启动速度的方法。


【发明内容】

[0005] 本发明的目的在于提供一种利用启动加速器提高Linux服务器启动速度的方法, 其可有效提1? Linux服务器的启动速度。
[0006] 为实现上述目的,本发明采用如下技术方案进行实施:
[0007] -种利用启动加速器提高Linux服务器启动速度的方法,具体操作如下:
[0008] S1 :启动加速器通过网络与目标Linux服务器群相连接;
[0009] S2 :启动加速器通过其上的网卡读取目标Linux服务器群上的启动配置文件和内 核源码文件,并传给启动加速器上的启动加速处理模块;
[0010] S3:启动加速器模块将自动定制该内核的源码文件,使其能够在启动时,不再向日 志文件中写日志,并且,在启动结束后,能够恢复日志输出,用于满足用户调试程序时,查看 Linux内核日志的需求;
[0011] S4 :启动加速处理模块处理完毕后,将优化后的内核通过启动加速其上的网卡上 传给服务器,从而完成优化。
[0012] 其中,
[0013] 步骤S2中启动加速器模块还会通过编译工具,为Linux内核生成一张函数调用 图,并针对上层应用,去除那些不需要的函数及其相关函数调用。
[0014] 更为具体的方案为:
[0015] 启动加速处理模块包括内核输出屏蔽模块12、输入输出模块11和冗余函数裁减 模块13 ;
[0016] 启动加速器通过输入输出模块11上的网卡接口对目标Linux服务器的内核源码 以及grub配置文件进行读取,并将读取结果传给内核输出屏蔽模块12 ;
[0017] 内核输出屏蔽模块12将定位内核printk函数的位置,为printk函数添加全局标 志位;
[0018] 内核输出屏蔽模块12处理完毕之后,将源码传给冗余函数裁减模块13处理,冗余 函数裁减模块13将产生Linux内核函数调用关系图,然后再依据上层应用所使用的系统调 用,去除那些上层应用不用的系统调用;
[0019] 得到上述优化后的内核后,再修改grub配置文件,为内核传递quiet参数,并将上 述优化后的内核和grub配置文件上传到目标Linux服务器上编译生成新的内核完成优化。
[0020] 关系图通过关系型数据库进行存储。
[0021] 采用上述方法提高Linux服务器的启动速度存在如下优点:
[0022] 1、无需人工干预,自动完成多台Linux服务器的优化;
[0023] 2、能够进一步减少Linux内核在启动时的输出操作,并且不影响启动后Linux内 核的正常信息的输出;
[0024] 3、能够对Linux内核达到函数级的裁减,进一步压缩内核。

【专利附图】

【附图说明】
[0025] 图1为启动加速器与目标服务器连接示意图;
[0026] 图2为启动加速器的结构示意图。

【具体实施方式】
[0027] 为了使本发明的目的及优点更加清楚明白,以下结合实施例对本发明进行进一步 详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发 明。
[0028] 本发明采取的技术方案如图1所示,利用启动加速器提高Linux服务器启动速度 的方法,具体操作为:
[0029] 首先启动加速器通过网络与目标Linux服务器群相连。
[0030] 启动加速器通过其上的网卡读取目标Linux服务器群上的启动配置文件和内核 源码文件,并传给启动加速器上的启动加速处理模块
[0031] 启动加速器模块将自动定制该内核的源码文件,使其能够在启动时,不再向日 志文件中写日志,并且,在启动结束后,能够恢复日志输出,以满足用户调试程序时,查看 Linux内核日志的需求。此外,启动加速器模块还会通过编译工具,为Linux内核生成一张 函数调用图,并针对上层应用,去除那些不需要的函数及其相关函数调用。从而进一步地缩 小了内核的体积
[0032] 启动加速处理模块处理完毕后,将优化后的内核通过启动加速其上的网卡上传给 服务器,从而完成优化。
[0033] 更为具体的操作为:启动加速处理模块包括内核输出屏蔽模块12、输入输出模块 11和冗余函数裁减模块13,如图2所示。
[0034] 启动加速器通过输入输出模块11上的网卡接口对目标Linux服务器的内核源码 以及grub配置文件进行读取。并将读取结果传给内核输出屏蔽模块12。
[0035] 内核输出屏蔽模块12将定位内核printk函数的位置,为printk函数添加全局标 志位:N00UTPUT,初值置为1,然后将printk修改为:
[0036]

【权利要求】
1. 一种利用启动加速器提高Linux服务器启动速度的方法,具体操作如下: 51 :启动加速器通过网络与目标Linux服务器群相连接; 52 :启动加速器通过其上的网卡读取目标Linux服务器群上的启动配置文件和内核源 码文件,并传给启动加速器上的启动加速处理模块; S3:启动加速器模块将自动定制该内核的源码文件,使其能够在启动时,不再向日志 文件中写日志,并且,在启动结束后,能够恢复日志输出,用于满足用户调试程序时,查看 Linux内核日志的需求; S4:启动加速处理模块处理完毕后,将优化后的内核通过启动加速其上的网卡上传给 服务器,从而完成优化。
2. 如权利要求1所述的利用启动加速器提高Linux服务器启动速度的方法,其特征在 于,步骤S2中启动加速器模块还会通过编译工具,为Linux内核生成一张函数调用图,并针 对上层应用,去除那些不需要的函数及其相关函数调用。
3. 如权利要求1或2所述的利用启动加速器提高Linux服务器启动速度的方法,其特 征在于: 启动加速处理模块包括内核输出屏蔽模块、输入输出模块和冗余函数裁减模块; 启动加速器通过输入输出模块上的网卡接口对目标Linux服务器的内核源码以及 grub配置文件进行读取,并将读取结果传给内核输出屏蔽模块; 内核输出屏蔽模块将定位内核printk函数的位置,为printk函数添加全局标志位; 内核输出屏蔽模块处理完毕之后,将源码传给冗余函数裁减模块处理,冗余函数裁减 模块将产生Linux内核函数调用关系图,然后再依据上层应用所使用的系统调用,去除那 些上层应用不用的系统调用; 得到上述优化后的内核后,再修改grub配置文件,为内核传递quiet参数,并将上述优 化后的内核和grub配置文件上传到目标Linux服务器上编译生成新的内核完成优化。
4. 如权利要求3所述的利用启动加速器提高Linux服务器启动速度的方法,其特征在 于:关系图通过关系型数据库进行存储。
【文档编号】G06F9/445GK104090783SQ201410229283
【公开日】2014年10月8日 申请日期:2014年5月22日 优先权日:2014年5月22日
【发明者】李航, 白晓颖, 苏锐丹 申请人:西安电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1