表征操作系统内核的方法、装置及终端设备与流程

文档序号:14418933阅读:133来源:国知局
表征操作系统内核的方法、装置及终端设备与流程

本发明涉及计算机技术领域,具体而言,本发明涉及一种表征操作系统内核的方法、装置及终端设备。



背景技术:

内核是操作系统的核心部分,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性,是为众多应用程序提供对计算机硬件的安全访问的一部分软件,并且内核决定一个程序在什么时候对某部分硬件操作多长时间。

其中,操作系统的内核版本是不断更新的,通常,更新后的内核会支持更多的硬件,具备更好的进程管理能力,运行速度更快、更稳定,并且一般会修复老版本中发现的许多漏洞等。而已安装好的操作系统如果不是滚动升级的,或者没有内核更新选择的话,如果用户想要使用这些新特性,或者想要根据自己的硬件平台定制一个更高效、更稳定、更快速的内核,这就需要重新编译内核,同时,当用户基于同一版本的操作系统内核执行不同编译需求的编译工作时,也会对同一版本的操作系统内核进行重复性编译。由于对操作系统内核的编译过程中会产生一些可变数据,因此即便内核没有更新,在编译操作系统内核后生成的编译标识也会不一致,也即每对操作系统内核执行一次编译都会生成一个不同的编译标识,故而无法知晓是否发生过内核版本的更新,于是,随着时间的推移,尤其在对操作系统内核进行多次编译后,用户将无法从众多的编译标识中识别出哪些编译标识代表操作系统内核发生过版本的更新,又或者哪些编译标识代表操作系统内核未更新版本而只是进行了重复性编译。



技术实现要素:

本发明的目的旨在至少能解决上述的技术缺陷之一,特提出以下技术方案:

本发明的实施例根据一个方面,提供了一种表征操作系统内核的方法,包括:

加载与当前操作系统内核的编译需求相匹配的编译文件;

基于所述编译文件对操作系统内核进行相应的编译;

在编译过程中,基于部分或全部非动态信息生成表征所述操作系统内核的源码的编译标识。

优选地,在所述加载与当前操作系统内核的编译需求相匹配的编译文件的步骤之前,还包括:

从第一存储区域获取第一编译文件,并从第二存储区域获取第二编译文件,所述第一存储区域与所述第二存储区域相隔离;

其中,所述加载与当前操作系统内核的编译需求相匹配的编译文件的步骤,包括:

通过加载所述第一编译文件与所述第二编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,所述第一编译文件包括当前操作系统内核的源码,所述第二编译文件包括除所述源码外的与当前操作系统内核的编译相关的附加信息。

优选地,所述基于部分或全部非动态信息生成表征所述操作系统内核的源码的编译标识,包括:

基于所述第一编译文件生成第一编译结果;

根据部分或全部所述第一编译结果生成表征所述操作系统内核的源码的编译标识。

优选地,在所述加载与当前操作系统内核的编译需求相匹配的编译文件的步骤之前,还包括:

从第一存储区域获取第三编译文件;

其中,所述加载与当前操作系统内核的编译需求相匹配的编译文件的步骤,包括:

通过加载所述第三编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,所述第三编译文件同时包括当前操作系统内核的源码及与当前操作系统内核的编译相关的附加信息。

优选地,所述基于部分或全部非动态信息生成表征所述操作系统内核的源码的编译标识,包括:

基于所述第三编译文件生成所述操作系统内核的第二编译结果;

根据预定的滤除方式从所述第二编译结果中滤除动态信息;

基于部分或全部滤除动态信息后的第二编译结果,生成表征所述操作系统内核的源码的编译标识;

其中,所述动态信息包括以下至少一项:编译时间,编译次数,编译状态信息。

优选地,生成表征所述操作系统内核的源码的编译标识的方式,包括以下至少一项:

crc32值,哈希值,md5值。

优选地,该方法还包括:

判断生成得到的表征所述操作系统内核的源码的编译标识与预存储的源码的编译标识是否相同;

若不同,更新存储所述生成得到的表征所述操作系统内核的源码的编译标识。

优选地,还包括:

当更新存储所述生成得到的表征所述操作系统内核的源码的编译标识时,记录该编译标识对应的生成时间。

本发明的实施例根据另一个方面,还提供了一种表征操作系统内核的装置,包括:

加载模块,用于加载与当前操作系统内核的编译需求相匹配的编译文件;

编译模块,用于基于所述编译文件对操作系统内核进行相应的编译;

生成模块,用于在编译过程中,基于部分或全部非动态信息生成表征所述操作系统内核的源码的编译标识。

优选地,所述装置还包括第一获取模块;

所述第一获取模块,用于从第一存储区域获取第一编译文件,并从第二存储区域获取第二编译文件,所述第一存储区域与所述第二存储区域相隔离;以及,

所述加载模块具体用于通过加载所述第一编译文件与所述第二编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,所述第一编译文件包括当前操作系统内核的源码,所述第二编译文件包括除所述源码外的与当前操作系统内核的编译相关的附加信息。

优选地,所述生成模块包括:第一编译结果生成子模块与第一编译标识生成子模块;

所述第一编译结果生成子模块,用于基于所述第一编译文件生成第一编译结果;

所述第一编译标识生成子模块,用于根据部分或全部所述第一编译结果生成表征所述操作系统内核的源码的编译标识。

优选地,所述装置还包括第二获取模块;

所述第二获取模块,用于从第一存储区域获取第三编译文件;以及,

所述加载模块具体用于通过加载所述第三编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,所述第三编译文件同时包括当前操作系统内核的源码及与当前操作系统内核的编译相关的附加信息。

优选地,所述生成模块包括:第二编译结果生成子模块、滤除子模块与第二编译标识生成子模块;

所述第二编译结果生成子模块,用于基于所述第三编译文件生成第二编译结果;

所述滤除子模块,用于根据预定的滤除方式从所述第二编译结果中滤除动态信息;

所述第二编译标识生成子模块,用于基于部分或全部滤除动态信息后的第二编译结果生成表征所述操作系统内核的源码的编译标识;

其中,所述动态信息包括以下至少一项:编译时间,编译次数,编译状态信息。

优选地,生成表征所述操作系统内核的源码的编译标识的方式,包括以下至少一项:

crc32值,哈希值,md5值。

优选地,该装置还包括:判断模块与更新模块;

所述判断模块,用于判断生成得到的表征所述操作系统内核的源码的编译标识与预存储的源码的编译标识是否相同;

所述更新模块,用于当生成得到的表征所述操作系统内核的源码的编译标识与预存储的源码的编译标识不同时,更新存储所述生成得到的表征所述操作系统内核的源码的编译标识。

优选地,所述更新模块还用于当更新存储所述生成得到的表征所述操作系统内核的源码的编译标识时,记录该编译标识对应的生成时间。

本发明的实施例根据另一个方面,提供了一种终端设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述的表征操作系统内核的方法。

本发明的实施例根据另一个方面,提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述的表征操作系统内核的方法。

本发明的实施例根据另一个方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;

所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述的表征操作系统内核的方法对应的操作。

本发明实施例,加载与当前操作系统内核的编译需求相匹配的编译文件,可以准确获取到当前操作系统内核的编译所需要的编译文件,便于后续根据该编译文件执行相应的编译工作,基于编译文件对操作系统内核进行相应的编译,从而完成用户所需求的编译工作,在编译过程中,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识,从而在编译内核时,只基于部分或全部非动态信息生成操作系统内核的源码的编译标识,从而只要仅与内核的源码有关的非动态信息不发生改变,即使经过多次重复性编译,每次编译也会生成相同的编译标识,只有当仅与内核的源码有关的非动态信息发生了改变,才会在编译时生成不同的编译标识,使得用户能够一目了然基于编译标识知道操作系统内核发生了改变。

本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1为本发明第一实施例的表征操作系统内核的方法的流程图;

图2为本发明第二实施例的表征操作系统内核的方法的流程图;

图3为本发明第三实施例的表征操作系统内核的装置的基本结构示意图;

图4为本发明第三实施例的表征操作系统内核的装置的详细结构示意图;

图5为本发明第四实施例的终端设备的基本结构示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。

本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,进行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;pcs(personalcommunicationsservice,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;pda(personaldigitalassistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或gps(globalpositioningsystem,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的“终端”、“终端设备”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的“终端”、“终端设备”还可以是通信终端、上网终端、音乐/视频播放终端,例如可以是pda、mid(mobileinternetdevice,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒等设备。

本发明第一实施例提供了一种表征操作系统内核的方法,具体流程如图1所示,包括:步骤110,加载与当前操作系统内核的编译需求相匹配的编译文件;步骤120,基于编译文件对操作系统内核进行相应的编译;步骤130,在编译过程中,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识。

本发明的第一实施例,加载与当前操作系统内核的编译需求相匹配的编译文件,可以准确获取到当前操作系统内核的编译所需要的编译文件,便于后续根据该编译文件执行相应的编译工作,基于编译文件对操作系统内核进行相应的编译,从而完成用户所需求的编译工作,在编译过程中,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识,从而在编译内核时,只基于仅与操作系统内核的源码相关的非动态信息生成编译标识,只要仅与内核的源码相关的非动态信息不发生改变,即使经过多次重复性编译,每次编译也会生成相同的编译标识,只有当仅与内核的源码相关的非动态信息发生了改变,才会在编译时生成不同的编译标识,使得用户能够一目了然基于编译标识知道操作系统内核发生了改变。

下面对本发明第一实施进行详细介绍,具体如下所示:

在步骤110中,加载与当前操作系统内核的编译需求相匹配的编译文件。

优选地,在加载与当前操作系统内核的编译需求相匹配的编译文件的步骤之前,还包括:从第一存储区域获取第一编译文件,并从第二存储区域获取第二编译文件,第一存储区域与第二存储区域相隔离;其中,加载与当前操作系统内核的编译需求相匹配的编译文件的步骤,包括:通过加载第一编译文件与第二编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,第一编译文件包括当前操作系统内核的源码,第二编译文件包括除源码外的与当前操作系统内核的编译相关的附加信息。

可选地,在加载与当前操作系统内核的编译需求相匹配的编译文件的步骤之前,还包括:从第一存储区域获取第三编译文件;其中,加载与当前操作系统内核的编译需求相匹配的编译文件的步骤,包括:通过加载第三编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,第三编译文件同时包括当前操作系统内核的源码及与当前操作系统内核的编译相关的附加信息。

具体地,在对操作系统内核进行编译的过程中,需要预先获取到与操作系统内核的编译需求相匹配的编译文件,之后才能加载获取到的与操作系统内核的编译需求相匹配的编译文件,并基于该编译文件进行相应的编译工作。

进一步地,预先获取与操作系统内核的编译需求相匹配的编译文件的方式包括:方式一,从第一存储区域获取第一编译文件,并从第二存储区域获取第二编译文件,第一存储区域与第二存储区域相隔离,其中,第一编译文件包括当前操作系统内核的源码,第二编译文件包括除源码外的与当前操作系统内核的编译相关的附加信息;也即对内核中保存的默认形式的编译文件进行了适当修改、调整,使得编译文件变为包括第一编译文件与第二编译文件的编译文件,并把当前操作系统内核的源码存储至第一编译文件中,把与操作系统内核的编译相关的附加信息提取出来存储至第二编译文件中,当然,也可以把与操作系统内核的编译相关的附加信息提取出来存储至第一编译文件中,而把当前操作系统内核的源码存储至第二编译文件中,本申请不对其做限定,其中,第一编译文件与第二编译文件存储在相互隔离的两个存储区域,也就是说,如果第一编译文件存储在某一个存储区域,那么第二编译文件需要存储在另一与第一编译文件的存储区域不同的区域,同时,本申请中所提到的附加信息包括与编译时间相关的信息以及导致内核在每次编译过程中都会生成不同的编译标识的内容、数据或功能等信息,也可以包括会造成内核在每次编译过程中都会生成不同的编译标识的其它信息。方式二,从第一存储区域获取第三编译文件,其中,第三编译文件同时包括当前操作系统内核的源码及与当前操作系统内核的编译相关的附加信息;也即不对内核中保存的默认形式的编译文件进行改动,仍然采用本领域技术人员所默认的既包括操作系统内核的源码又包括与当前操作系统内核的编译相关的附加信息,其中,该第三编译文件的存储区域应该与上述包括操作系统内核的源码的编译文件的存储区域相同,同时,第三编译文件中包括的附加信息的内容也与上述方式一中的附加信息所包括的内容相同。

进一步地,当通过方式一获取与操作系统内核的编译需求相匹配的编译文件时,通过加载第一编译文件与第二编译文件,来加载与当前操作系统内核的编译需求相匹配的编译文件;当通过方式二获取与操作系统内核的编译需求相匹配的编译文件时,通过加载第三编译文件来加载与当前操作系统内核的编译需求相匹配的编译文件。

在步骤120中,基于编译文件对操作系统内核进行相应的编译。

具体地,当加载完与当前操作系统内核的编译需求相匹配的编译文件后,就可以根据自己的编译需求对操作系统的内核进行相应的编译工作,例如,根据自己的硬件平台开发一个更高效、更稳定、更快速的内核而进行的内核编译,又例如,基于同一版本的操作系统内核执行不同编译需求的编译工作而操作系统内核进行重复性编译。

在步骤130中,在编译过程中,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识。

优选地,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识,包括:基于第一编译文件生成第一编译结果;根据第一编译结果生成表征操作系统内核的源码的编译标识。

可选地,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识,包括:基于第三编译文件生成操作系统内核的第二编译结果;根据预定的滤除方式从第二编译结果中滤除动态信息;基于部分或全部滤除动态信息后的第二编译结果,生成表征操作系统内核的源码的编译标识;其中,动态信息包括以下至少一项:编译时间,编译次数,编译状态信息。

优选地,生成表征操作系统内核的源码的编译标识的方式,包括以下至少一项:crc32值,哈希值,md5值。

具体地,一方面,当通过加载第一编译文件与第二编译文件,来加载与当前操作系统内核的编译需求相匹配的编译文件时,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识的方式为:先基于第一编译文件生成第一编译结果,再根据部分或全部第一编译结果生成表征操作系统内核的源码的编译标识,由于第一编译文件中只包括操作系统内核的源码,因此,只会根据与内核源码相关的部分或全部第一编译结果生成相应的编译标识。另一方面,当通过加载第三编译文件来加载与当前操作系统内核的编译需求相匹配的编译文件时,生成表征操作系统内核的源码的编译标识的方式为:基于第三编译文件生成操作系统内核的第二编译结果,由于第三编译文件中既包括操作系统内核的源码,又包括当前操作系统内核的编译相关的附加信息,因此,第二编译结果中不仅会包括与内核源码相关的编译结果,而且会包括与附加信息相关的编译结果;根据预定的滤除方式从第二编译结果中滤除动态信息,也即将那些即使在内核源码不发生改变的情况下,也会导致每次编译内核时生成不同的编译标识的那些动态信息滤除,其中,动态信息包括编译时间,编译次数,编译状态信息等等与编译时间相关的信息;基于部分或全部滤除动态信息后的第二编译结果,生成表征操作系统内核的源码的编译标识,从而只根据第二编译结果中与内核源码相关的部分或全部编译结果生成相应的编译标识。

进一步地,当基于部分或全部第一编译文件生成的第一编译结果,生成表征操作系统内核的源码的编译标识时,由于第一编译文件中包括的是当前操作系统内核的源码,因此,在生成表征操作系统内核的源码的编译标识时,如果内核的源码没有发生改变,那么表征操作系统内核的源码的编译标识就不会改变,也即在操作系统内核的源码不变的情况下,无论对操作系统内重复编译多少次,生成的编译标识都不会改变,只有当操作系统内核的源码发生改变时,才会在编译内核时生成不同的编译标识。当基于第三编译文件生成的部分或全部滤除动态信息后的第二编译结果,生成表征操作系统内核的源码的编译标识时,由于已经事先滤除了那些即使在内核源码不发生改变的情况下,也会导致每次编译内核时生成不同的编译标识的动态信息,所以也会达到只要操作系统内核的源码不变,编译内核时生成的编译标识就不会改变,只有当操作系统内核的源码发生改变,才会在编译内核时生成不同的编译标识的技术效果。

进一步地,生成表征操作系统内核的源码的编译标识的方式,可以为crc32值,或者哈希值,或者md5值,也可以为crc32值、哈希值、md5值的组合,例如,只采用crc32值的计算方式,或者只采用哈希值的计算方式,又或者只采用md5值的计算方式,生成表征操作系统内核的源码的编译标识;又例如,先采用crc32值的计算方式再采用哈希值或md5值的计算方式,生成表征操作系统内核的源码的编译标识;又例如,先采用md5值的计算方式再采用crc32值或哈希值的计算方式,生成表征操作系统内核的源码的编译标识,再例如,先采用哈希值值的计算方式再采用crc32或md5值的计算方式,生成表征操作系统内核的源码的编译标识。

需要说明的是,本发明实施例中的动态信息包括编译时间、编译次数、编译状态信息等等与编译时间相关的信息,非动态信息为动态信息的反面,即与编译时间、编译次数、编译状态信息等等无关的信息,也即只与操作系统内核的源码相关,只要操作系统内核的源码没有改变那非动态信息就不会发生改变,只有当操作系统内核的源码发生改了非动态信息才会随之发生改变。

通过本发明实施例的表征操作系统内核的方法,使得生成的表征操作系统内核的源码的编译标识,在与内核的源码相关的非动态信息没有发生改变的情况下,即使内核经过多次的重复编译,所生成的编译标识也不会改变,只有当与操作系统内核的源码相关的非动态信息发生改变时,才会在编译内核时生成不同的编译标识,便于用户根据编译标识一目了然知道操作系统内核发生了改变。

本发明的第二实施例提供了一种表征操作系统内核的方法,本发明第二实施例在第一实施例的基础上做了进一步改进,主要改进之处在于:在本发明第二实施例中,进一步保存或更新存储生成得到的表征操作系统内核的源码的编译标识,具体如图2所示。

其中,步骤210至步骤230与本发明第一实施例的步骤110至步骤130基本一致,在此不再赘述。

步骤240:判断生成得到的表征操作系统内核的源码的编译标识与预存储的源码的编译标识是否相同。

具体地,判断本次编译内核生成得到的表征操作系统内核的源码的编译标识与先前存储的编译标识是否相同,如果相同,则说明内核的源码没有发生改变,本次编译为对具有同一源码的内核的重复编译,由于之前已经存储了该编译标识,因此不需要再次存储该编译标识;如果不同,则说明内核的源码发生了改变,本次编译为对具有不同源码的内核的编译,由于之前没有对该具有不同源码的内核进行过编译,因此在本次编译内核过程中,将会生成不同的编译标识,需要更新存储生成得到的表征操作系统内核的源码的编译标识,也即执行步骤250。

步骤250:更新存储生成得到的表征操作系统内核的源码的编译标识。

具体地,当判定生成得到的表征操作系统内核的源码的编译标识与预存储的源码的编译标识不相同时,需要更新存储生成得到的表征操作系统内核的源码的编译标识,以代表该内核的源码发生过改变。

进一步地,在更新存储生成得到的表征操作系统内核的源码的编译标识时,记录该编译标识对应的生成时间,从而使得用户在查看编译标识时,能够知道该编译标识的生成时间,在一定程度上便于用户基于该生成时间推算出更改内核的源码的时间。

本发明实施例,在生成得到的表征操作系统内核的源码的编译标识与预存储的源码的编译标识不相同时,更新存储生成得到的表征操作系统内核的源码的编译标识,从而使得用户在查看编译标识时,能够知道该编译标识的生成时间,在一定程度上便于用户基于该生成时间推算出更改内核的源码的时间。

本发明的第三实施例涉及一种表征操作系统内核的装置,如图3所示,具体包括:加载模块31、编译模块32与生成模块33。其中,

加载模块31,用于加载与当前操作系统内核的编译需求相匹配的编译文件;编译模块32,用于基于所述编译文件对操作系统内核进行相应的编译;生成模块33,用于在编译过程中,基于部分或全部非动态信息生成表征所述操作系统内核的源码的编译标识。

优选地,该装置还包括第一获取模块34,具体如图4所示,第一获取模块34用于从第一存储区域获取第一编译文件,并从第二存储区域获取第二编译文件,第一存储区域与第二存储区域相隔离;以及,加载模块31具体用于通过加载第一编译文件与第二编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,第一编译文件包括当前操作系统内核的源码,第二编译文件包括除源码外的与当前操作系统内核的编译相关的附加信息。

优选地,生成模块33包括第一编译结果生成子模块331与第一编译标识生成子模块332,第一编译结果生成子模块331,用于基于第一编译文件生成第一编译结果;第一编译标识生成子模块332,用于根据部分或全部第一编译结果生成表征操作系统内核的源码的编译标识。

优选地,该装置还包括第二获取模块35,具体如图4所示,第二获取模块35,用于从第一存储区域获取第三编译文件;以及,加载模块s3具体用于通过加载第三编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,第三编译文件同时包括当前操作系统内核的源码及与当前操作系统内核的编译相关的附加信息。

优选地,生成模块33包括:第二编译结果生成子模块333、滤除子模块334与第二编译标识生成子模块335,具体如图4所示;第二编译结果生成子模块333,用于基于第三编译文件生成第二编译结果;滤除子模块334,用于根据预定的滤除方式从第二编译结果中滤除动态信息;第二编译标识生成子模块335,用于基于部分或全部滤除动态信息后的第二编译结果生成表征操作系统内核的源码的编译标识;其中,动态信息包括以下至少一项:编译时间,编译次数,编译状态信息。

优选地,生成表征操作系统内核的源码的编译标识的方式,包括以下至少一项:crc32值,哈希值,md5值。

优选地,该装置还包括:判断模块36与更新模块37,具体如图4所示;判断模块36,用于判断生成得到的表征操作系统内核的源码的编译标识与预存储的源码的编译标识是否相同;更新模块37,用于当生成得到的表征操作系统内核的源码的编译标识与预存储的源码的编译标识不同时,更新存储生成得到的表征操作系统内核的源码的编译标识。

优选地,更新模块37还用于当更新存储生成得到的表征操作系统内核的源码的编译标识时,记录该编译标识对应的生成时间。

本发明实施例,加载与当前操作系统内核的编译需求相匹配的编译文件,可以准确获取到当前操作系统内核的编译所需要的编译文件,便于后续根据该编译文件执行相应的编译工作,基于编译文件对操作系统内核进行相应的编译,从而完成用户所需求的编译工作,在编译过程中,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识,从而在编译内核时,只基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识,只要与内核的源码相关的非动态信息不发生改变,即使经过多次重复性编译,每次编译也会生成相同的编译标识,只有当与内核的源码相关的非动态信息发生了改变,才会在编译时生成不同的编译标识,使得用户能够一目了然基于编译标识知道操作系统内核发生了改变。

本发明第四实施例提供了一种终端设备,如图5所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以为包括台式电脑、平板电脑、pda(personaldigitalassistant,个人数字助理)、手机、pos(pointofsales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:

图5示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图5,手机包括:射频(radiofrequency,rf)电路510、存储器520、输入单元530、显示单元540、传感器550、音频电路560、无线保真(wirelessfidelity,wifi)模块570、处理器580、以及电源590等部件。本领域技术人员可以理解,图5中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图5对手机的各个构成部件进行具体的介绍:

rf电路510可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器580处理;另外,将设计上行的数据发送给基站。通常,rf电路510包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(lownoiseamplifier,lna)、双工器等。此外,rf电路510还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystemofmobilecommunication,gsm)、通用分组无线服务(generalpacketradioservice,gprs)、码分多址(codedivisionmultipleaccess,cdma)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、长期演进(longtermevolution,lte)、电子邮件、短消息服务(shortmessagingservice,sms)等。

存储器520可用于存储软件程序以及模块,处理器580通过运行存储在存储器520的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器520可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器520可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元530可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元530可包括触控面板531以及其他输入设备532。触控面板531,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板531上或在触控面板531附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板531可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器580,并能接收处理器580发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板531。除了触控面板531,输入单元530还可以包括其他输入设备532。具体地,其他输入设备532可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。

显示单元540可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元540可包括显示面板541,可选的,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板541。进一步的,触控面板531可覆盖显示面板541,当触控面板531检测到在其上或附近的触摸操作后,传送给处理器580以确定触摸事件的类型,随后处理器580根据触摸事件的类型在显示面板541上提供相应的视觉输出。虽然在图5中,触控面板531与显示面板541是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板531与显示面板541集成而实现手机的输入和输出功能。

手机还可包括至少一种传感器550,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板541的亮度,接近传感器可在手机移动到耳边时,关闭显示面板541和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路560、扬声器561,传声器562可提供用户与手机之间的音频接口。音频电路560可将接收到的音频数据转换后的电信号,传输到扬声器561,由扬声器561转换为声音信号输出;另一方面,传声器562将收集的声音信号转换为电信号,由音频电路560接收后转换为音频数据,再将音频数据输出处理器580处理后,经rf电路510以发送给比如另一手机,或者将音频数据输出至存储器520以便进一步处理。

wifi属于短距离无线传输技术,手机通过wifi模块570可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图5示出了wifi模块570,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。

处理器580是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器520内的软件程序和/或模块,以及调用存储在存储器520内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器580可包括一个或多个处理单元;优选的,处理器580可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器580中。

手机还包括给各个部件供电的电源590(比如电池),优选的,电源可以通过电源管理系统与处理器580逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。

在本发明实施例中,该终端所包括的处理器580还具有以下功能:

加载与当前操作系统内核的编译需求相匹配的编译文件;

基于编译文件对操作系统内核进行相应的编译;

在编译过程中,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识。

优选地,在加载与当前操作系统内核的编译需求相匹配的编译文件的步骤之前,还包括:从第一存储区域获取第一编译文件,并从第二存储区域获取第二编译文件,第一存储区域与第二存储区域相隔离;其中,加载与当前操作系统内核的编译需求相匹配的编译文件的步骤,包括:通过加载第一编译文件与第二编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,第一编译文件包括当前操作系统内核的源码,第二编译文件包括除源码外的与当前操作系统内核的编译相关的附加信息。

优选地,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识,包括:基于第一编译文件生成第一编译结果;根据部分或全部第一编译结果生成表征操作系统内核的源码的编译标识。

优选地,在加载与当前操作系统内核的编译需求相匹配的编译文件的步骤之前,还包括:从第一存储区域获取第三编译文件;其中,加载与当前操作系统内核的编译需求相匹配的编译文件的步骤,包括:通过加载第三编译文件,加载与当前操作系统内核的编译需求相匹配的编译文件,第三编译文件同时包括当前操作系统内核的源码及与当前操作系统内核的编译相关的附加信息。

优选地,基于部分或全部非动态信息生成表征操作系统内核的源码的编译标识,包括:基于第三编译文件生成操作系统内核的第二编译结果;根据预定的滤除方式从第二编译结果中滤除动态信息;基于部分或全部滤除动态信息后的第二编译结果,生成表征操作系统内核的源码的编译标识;其中,动态信息包括以下至少一项:编译时间,编译次数,编译状态信息。

优选地,生成表征操作系统内核的源码的编译标识的方式,包括以下至少一项:crc32值,哈希值,md5值。

优选地,还包括:判断生成得到的表征操作系统内核的源码的编译标识与预存储的源码的编译标识是否相同;若不同,更新存储生成得到的表征操作系统内核的源码的编译标识。

优选地,还包括:当更新存储生成得到的表征操作系统内核的源码的编译标识时,记录该编译标识对应的生成时间。

本发明第五实施例,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现上述的表征操作系统内核的方法。

本发明第六实施例,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;存储器用于存放至少一可执行指令,可执行指令使处理器执行上述的表征操作系统内核的方法对应的操作。

本技术领域技术人员可以理解,本发明包括涉及用于执行本申请中所述操作中的一项或多项的设备。这些设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中,所述计算机可读介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、cd-rom、和磁光盘)、rom(read-onlymemory,只读存储器)、ram(randomaccessmemory,随即存储器)、eprom(erasableprogrammableread-onlymemory,可擦写可编程只读存储器)、eeprom(electricallyerasableprogrammableread-onlymemory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,可读介质包括由设备(例如,计算机)以能够读的形式存储或传输信息的任何介质。

本技术领域技术人员可以理解,可以用计算机程序指令来实现这些结构图和/或框图和/或流图中的每个框以及这些结构图和/或框图和/或流图中的框的组合。本技术领域技术人员可以理解,可以将这些计算机程序指令提供给通用计算机、专业计算机或其他可编程数据处理方法的处理器来实现,从而通过计算机或其他可编程数据处理方法的处理器来执行本发明公开的结构图和/或框图和/或流图的框或多个框中指定的方案。

本技术领域技术人员可以理解,本发明中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本发明中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本发明中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。

以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1