一种将内核和应用分离的BMC软件开发方法技术

技术编号:23445328 阅读:64 留言:0更新日期:2020-02-28 19:38
本发明专利技术公开一种将内核和应用分离的BMC软件开发方法,本方法将BMC需要使用到的操作系统的内核部分和应用层单独进行开发,将与应用层调用相关的驱动嵌入操作系统内核部分,在操作系统中设置好对应用层可执行文件的开机自启功能,应用层生成的可执行文件更新到操作系统中,进行开机自启运行应用层功能。本发明专利技术将系统底层驱动和应用层代码分离,方便开发人员进行代码规划与管理,并且能够减少代码的编译过程,节约开发时间。

A BMC software development method separating kernel and Application

【技术实现步骤摘要】
一种将内核和应用分离的BMC软件开发方法
本专利技术涉及一种将内核和应用分离的BMC软件开发方法,将操作系统内核和上层应用软件分别进行开发,属于BMC软件开发

技术介绍
BMC全称为基板控制器,它通过监控系统的电源、温度等来保证系统处于正常运行状态。目前使用的BMC芯片大都是AST2400和AST2500系列芯片,软件开发方面,主要是用MeaRACDevelopmentStudio来进行开发。这种开发方式需要将操作系统内核相关的代码和应用层相关的代码同时进行编译,虽然对操作系统内核进行了裁剪,但是在编译时因为每次都要编译内核文件,所以每次编译工程都需要花费较长的时间。
技术实现思路
针对现有技术的缺陷,本专利技术提供一种将内核和应用分离的BMC软件开发方法,将系统底层驱动和应用层代码分离,方便开发人员进行代码规划与管理,并且能够减少代码的编译过程,节约开发时间。为了解决所述技术问题,本专利技术采用的技术方案:一种将内核和应用分离的BMC软件开发方法,本方法将BMC需要使用到的操作系统的内核部分和应用层单独进行开发,将与应用层调用相关的驱动嵌入操作系统内核部分,在操作系统中设置好对应用层可执行文件的开机自启功能,应用层生成的可执行文件更新到操作系统中,进行开机自启运行应用层功能。作为优选方案,与应用层调用相关的驱动包括I2C驱动、SPI驱动、串口驱动以及芯片各个管脚的驱动。作为优选方案,在操作系统的内核部分添加一个服务器,从而进行应用层更新。作为优选方案,所述服务器为嵌入式服务器或者ftp服务器。作为优选方案,应用层可执行文件的开机自启功能通过在内核中添加应用层开机自启的脚本实现。作为优选方案,编译好的内核做版本固化,对内核部分进行单独烧录。作为优选方案,应用层功能包括传感器数据处理、系统开关机、日志记录、FRU和数据库,数据库部分的代码需要内核中做数据库支持。作为优选方案,所述操作系统为嵌入式操作系统。本专利技术的有益效果:本专利技术将BMC需要使用到的操作系统内核和应用层代码分别进行开发,从而在项目开发过程中,一方面能够将系统底层驱动和应用层代码分离,方便开发人员进行代码规划和管理,另一方面能够减少代码的编译过程,大大节约了开发时间。本专利技术将芯片底层驱动嵌入操作系统内核,在芯片中能正常启动操作系统;将应用层代码单独进行编译,在操作系统内核中设置好应用层可执行文件的开机自启功能,应用层生成的可执行文件更新到操作系统中,进行开机自启即可运行;在操作系统中嵌入一个服务器,通过网络的方式进行应用层代码的更新,更新方便,而且更改应用层代码不会影响到内核部分,所以无需担心更改应用层代码后网络不通、需要进行拆卸flash的问题。附图说明图1为本方法的流程图。具体实施方式下面结合附图和具体实施例对本专利技术作进一步说明。实施例1本实施例公开一种将内核和应用分离的BMC软件开发方法,如图1所示,本方法包括以下步骤:S01)、对现有芯做一个定制版的内核,将系统的代码编译成内核形式;S02)、在系统中添加为应用层服务的固件;S03)、对应用层进行代码开发。本方法的主要创新点在于将BMC需要使用到的操作系统内核和应用层代码分别进行开发。上述步骤中,S01、S02对应操作系统内核部分的开发,步骤S03对应应用层代码的开发,即通过上述步骤就能实现内核和应用层的单独开发。步骤S02中,添加的为应用服务的固件包括应用层调用固件、应用层代码更新固件和应用层开机自启固件。应用层调用固件为与芯片底层相关的驱动,包括I2C驱动、SPI驱动、串口驱动以及芯片各个管脚的驱动,将这些驱动嵌入内核,方便应用层调用,并且在芯片中能正常驱动操作系统。应用层代码更新固件为嵌入操作系统中一个服务器,每次更新应用层代码,通过服务器以网络的方式进行,不会影响到内核部分,所以无需担心更改应用层代码后网络不通、需要进行拆卸flash的问题。本实施例中,所述服务器为嵌入式服务器,在其他实施例里,服务器也可以为tfp服务器。应用层开机自启固件为添加在内核中的应用层代码开机自启的脚本,在操作系统中设置好对应用层可执行文件的开机自启功能,应用层将生成的可执行文件更新到嵌入式操作系统中,进行开机自启即可运行。本实施例中,编译好的内核做版本固化,对内核部分进行单独烧录。在项目开发过程中一般涉及不到内核部分的更改,所以内核部分的烧录一般只进行一次即可。将应用层单独进行开发,BMC涉及到的常用应用层功能包括传感器数据的处理、系统开关机、日志记录、FRU以及和网页相关的代码作为独立的部分进行开发,涉及到数据库部分的代码还需要内核中做数据库支持。将编译好的应用层可执行代码通过内核提供的更新方式,更新到嵌入式系统的指定位置,通过系统的开机自启脚本和服务等来运行应用层的代码。本实施例所述操作系统均是嵌入式操作系统。实施例2本实施例中,嵌入操作系统的服务器是tfp服务器,其他同实施例1相同,此处不再累述。以上描述的仅是本专利技术的基本原理和优选实施例,本领域技术人员根据本专利技术做出的改进和替换,属于本专利技术的保护范围。本文档来自技高网...

【技术保护点】
1.一种将内核和应用分离的BMC软件开发方法,其特征在于:本方法将BMC需要使用到的操作系统的内核部分和应用层单独进行开发,将与应用层调用相关的驱动嵌入操作系统内核,在操作系统中设置好对应用层可执行文件的开机自启功能,应用层生成的可执行文件更新到操作系统中,进行开机自启即可运行。/n

【技术特征摘要】
1.一种将内核和应用分离的BMC软件开发方法,其特征在于:本方法将BMC需要使用到的操作系统的内核部分和应用层单独进行开发,将与应用层调用相关的驱动嵌入操作系统内核,在操作系统中设置好对应用层可执行文件的开机自启功能,应用层生成的可执行文件更新到操作系统中,进行开机自启即可运行。


2.根据权利要求1所述的将内核和应用分离的BMC软件开发方法,其特征在于:与应用层调用相关的驱动包括I2C驱动、SPI驱动、串口驱动以及芯片各个管脚的驱动。


3.根据权利要求1所述的将内核和应用分离的BMC软件开发方法,其特征在于:在操作系统的内核部分添加一个服务器,从而进行应用层更新。


4.根据权利要求3所述的将内核和应用分离的BMC软件开发方法,其特征在...

【专利技术属性】
技术研发人员:张黎明陈亮甫马晓光
申请(专利权)人:山东超越数控电子股份有限公司
类型:发明
国别省市:山东;37

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

1