一种操作系统开发添加私有服务体系的方法_2

文档序号:8412347阅读:来源:国知局
的功能不需要驱动的实现,或者不需要对接到用户层,这视不同的功能需求而定。本方案最初是在android4.4的版本上实现的,android5.0版本发布之后需要做移植,移植的工作量比较小。说明本发明提出服务体系,确实有很强的可移植性。
[0034]2、服务的启动流程。基于本发明的方法,按照图2,android系统起来之后,先启动服务infotmicServer。服务启动时间比较早,因为在该方案下这些服务启动优先级比较高。Infotmic Server起来之后遍历所有的私有服务。关于遍历方法,兼容性测试。在集成了本方案的改动之后,我们用android官方提供的CTS工具进行测试。如图6测试结果显示并没有因为infotmic server而导致增加测试用例出错。因此在本发明指导下的实施方案的确没有破坏原声代码的兼容性。本方案借鉴了 android开源代码对hal(硬件抽象层)的实现方法。自定义一个结构体,其包含启动服务方法,关闭服务方法,月艮务ID等信息。这个结构体我们可以用过静态方法获取。Infotmic server通过通过私有服务的库的名字特征加载这些动态库,通过ID来区分具体的服务内容,通过启动服务方法来启动服务。这样的方法,保证了所有的私有服务的插件性。因此,所有的私有服务之间基本是零耦合的,不同开发者开发不同的模块,也不会互相影响;模块的私有服务之间独立性很好。此外,为了增强这些服务的可配置性,还通过android的system property(android原生的一种软件配置的读写方案)添加是否加载这些私有服务的配置。这样在启动服务的时候,还需要确认system property配置。这样保障了方案的灵活性。
[0035]3、Infotmic Server对私有服务的监控管理。Infotm Server设置一个服务通知回调函数给所有的子服务,私有服务可以及时的将自身的状态报告给Infotmic Server?比如如果私有服务运行出错,贝1J可以通知Infotmic Server,Infotmic server可以根据设定好的策略,决定重启服务或者其他操作。此外Infotmic server也可以主动调用服务接口查看服务状态。通过Infotmic Server对私有服务的监控管,让Infotmic server有更好的容错能力。
[0036]4、Infotmic server的权限管理。本发明的实施方法,在Infotmic server中启动私有服务的时候,就设置好每个服务使用权限,然后私有服务自已判断自己的使用者是否有权限。权限的定义,在封装到用户层的时候,结合了 android已经定义好的用户权限。这样也是遵循android原生的一些规则。
[0037]5、兼容性测试。在集成了本方案的改动之后,我们用android官方提供的CTS工具进行测试。如图6测试结果显示并没有因为infotmic server而导致增加测试用例出错。因此在本发明指导下的实施方案的确没有破坏原声代码的兼容性。
[0038]综上,开发者不在源码模块上添加或者修改接口,而是按照本发明实现一个服务模块。开发者按照自己的开发内容,将不同的模块写成各类私有服务,这些私有服务可能需要调用内核的接口,也有可能要提供接口给上层使用,这个视具体情况而定。按照本发明的模型,所有的私有服务需要保持独立,可配置;其实现方法根据不同的操作系统肯定会有区别。
[0039]以上是对本发明的实施例进行的详细描述,但本领域的普通技术人员应该意识到,在本发明的范围内和精神指导下,各种改进、添加和替换都是可能的。例如更改私有服务的实现方式可以是本方案中提及c-s架构也可以是其他任何实现方式;主服务的启动关闭策略用户也可以根据实际的开发需求调整;权限管理的方式也可以是直接由主服务来判定用户权限或者其他可行方式。这些都在本发明的权利要求所限定的保护范围内。
【主权项】
1.一种操作系统开发添加私有服务体系的方法,是将不同的模块写成各类私有服务,这些私有服务需要调用内核的接口或要提供接口给上层使用,所有的私有服务需要保持独立,可配置;建立主服务;所述主服务包括一个用来管理所有私有服务的服务管理单元;另一个用来给这些服务设置用户权限的用户权限单元。
2.根据权利要求1所述一种操作系统开发添加私有服务体系的方法,其特征在于服务管理单元包括启动服务的时机,关闭服务的时机,监控服务的运行状态,对私有服务进行容错处理;具体步骤是: a)p31启动主服务;所述启动服务的时机由开发者决定;开发者根据该服务在整个开源系统中的优先级来决定启动主服务的时机; b)p32遍历当前系统实现的私有服务; c)p34如果存在某服务,那么确认是否要启动该服务;如果需要启动该服务那么就P35启动该服务,直至遍历完所有的服务; d)监控服务是否处于异常状态。
3.根据权利要求1所述一种操作系统开发添加私有服务体系的方法,其特征在于用户权限单元包括用户对私有服务使用权限的控制方案,避免一些安全级别比较高的服务接口被无限制的调用。
4.根据权利要求2所述一种操作系统开发添加私有服务体系的方法,其特征在于P41可主动获取服务状态;和/或P42私有服务的状态变化之后主动的通知主服务;然后P43由主服务决定是否需要重启服务。
5.根据权利要求3所述一种操作系统开发添加私有服务体系的方法,其特征在于通过主服务定义好所有服务的使用权限,并在启动主服务之后将其设置给所有的私有服务,用户在使用这些服务的接口的时候,私有服务再判断用户权限。
【专利摘要】本发明涉及适用于由底层,中间件层,用户体验层组成的软件架构开发的方法,尤其是一种操作系统开发添加私有服务体系的方法,是将不同的模块写成各类私有服务,这些私有服务需要调用内核的接口或要提供接口给上层使用,所有的私有服务需要保持独立,可配置;建立主服务;所述主服务包括一个用来管理所有私有服务的服务管理单元;另一个用来给这些服务设置用户权限的用户权限单元。
【IPC分类】G06F21-57, G06F9-44
【公开号】CN104731601
【申请号】CN201510147269
【发明人】常玉成, 刘棨, 王胜, 王海波
【申请人】上海盈方微电子有限公司
【公开日】2015年6月24日
【申请日】2015年3月31日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1