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

技术编号:11663096 阅读:98 留言:0更新日期:2015-06-29 18:19
本发明专利技术涉及适用于由底层,中间件层,用户体验层组成的软件架构开发的方法,尤其是一种操作系统开发添加私有服务体系的方法,是将不同的模块写成各类私有服务,这些私有服务需要调用内核的接口或要提供接口给上层使用,所有的私有服务需要保持独立,可配置;建立主服务;所述主服务包括一个用来管理所有私有服务的服务管理单元;另一个用来给这些服务设置用户权限的用户权限单元。

【技术实现步骤摘要】

本专利技术涉及适用于由底层,中间件层,用户体验层组成的软件架构开发的方法。尤其适用于封闭的系统开发,也适用于开源系统开发,比如当前被广泛使用的android开源OS开发。
技术介绍
OEM在做开源系统开发的时候,因为自身芯片特性不同、方案需求不同会在开源代码上做大量的改动来适应自己。如图1通常会有如下几种处理方法。如P11,添加一个新的模块,自定义新的接口。如P12,在原有的模块上增加几个新的接口。如P13,在原有的模块自身的接口上修改问题。以上以种处理方法又以第二、第三种最为常用。这样看上去是比较节省开发的开销的。以android系统开发为例,开发者需要有更好的电源管理能力,需要更多的显示设置功能,因为这些功能模块系统原先就已经有了,开发者常会用第二、第三种方法增加接口或者增强接口功能。这样的开发虽然能满足开发的设计需求,但是由于开发的不标准性,不能通过标准的测试(google的官方测试CTS,GTS等);另外在开发的过程中很容易修改或者添加接口功能,导致对第三方软件兼容性也有可能出现问题。采用上述开发方法,会存在如下问题: 1、经过一段时间的累计,过于零散的修改会影响原生代码的可读性。在开源源码更新版本之后这些改动移植变得十分的困难。2、繁多的修改可能会破坏原生代码的兼容性。导致一些第三方软件甚至官方软件无法在开源平台上运行。3、没有统一的方法能够让这些改动移除,添加。4、对接口的使用者缺乏权限管理,降低一些关键模块的安全性。
技术实现思路
本专利技术就是为解决
技术介绍
之中介绍的开发方法的负面作用提供一种可执行的解决方案。主要有如下几个目的: 1、避免破坏原生代码,保持代码的可读性。2、降低自身代码与原生代码的耦合度,增强代码可移植性。3、增强用户的权限控制。本专利技术的具体技术方案是: ,是将不同的模块写成各类私有服务,这些私有服务需要调用内核的接口或要提供接口给上层使用,所有的私有服务需要保持独立,可配置;建立主服务来管理所有的私有服务;所述主服务要有两个核心功能:一个是私有服务管理单元,用来管理所有私有服务;一个是用户权限管理单元t,用来给这些服务设置用户权限。下面详细讲述主服务的两个主要功能: 1、管理私有服务。包括启动服务的时机,关闭服务的时机,监控服务的运行状态,对私有服务进行容错处理等。图3描述本专利技术如何启动所有的私有服务,图4描述本专利技术如何监控服务。a) p31启动主服务。启动服务的时机由开发者决定。一般而言,开发者需要根据这个服务在整个开源系统中的优先级来决定什么时候起主服务。b) p32遍历当前系统我们自己实现的私有服务。遍历的方法根据不同的平台可以有不同的实现方法。c) p34如果存在某服务,那么确认是否要启动该服务。如果需要启动该服务那么就P35启动该服务,直至遍历完所有的服务。d)如图4所示,最常规的监控任务就是监控服务是否处于异常状态。如P41可以主动获取服务状态;或者如P42私有服务的状态变化之后主动的通知主服务,实施时可以两种方式都运用或者只运用其中一种。然后如P43由主服务决定是否需要重启服务。2、用户权限管理。提供用户对私有服务使用权限的控制方案,避免一些安全级别比较高的服务接口被无限制的调用。本专利技术通过主服务定义好所有服务的使用权限,并在启动主服务之后将其设置给所有的私有服务,用户在使用这些服务的接口的时候,私有服务再判断用户权限。有益效果 通过本专利技术的实现,开发者的私有改动具有以下优点: 1、模块之间的独立性强。各个小的服务以插件的形式存在,开发不同的服务模块互相没有任何干扰。2、可移植性强。开源系统版本更新,移植也比较方便,而且不会破坏原生代码的兼容性。3、加载服务的可配置。可以预先配置哪些服务不加载,以适应不同的产品方案需求。4、可以管理用户权限。本专利技术可以灵活的定义服务的使用权限,保障设备的安全性。【附图说明】图1常见源代码开发方法。图2本专利技术私有服务体系开发模型。图3启动私有服务。图4私有服务监控。图5 Infotmic server 简易模型。图6 CTS测试结果。【具体实施方式】上述方法已在infotmic自主芯片的Android方案上实现,并成功应用于平板电脑等终端产品中。按照本专利技术的方法,将部分私有改动整合成Infotmic server。1、Infotmic server的基本模型分析。图5为Infotmic server简易模型。android的开源系统基本可以将其分为驱动层,中间件层,应用层,本方案的主体部分就是在中间件层。Infotmic Server需要管理多个私有服务,比如Infotmic display服务(实现了诸多显示功能的服务,比如系统外接显示设备管理,分辨率设置,屏幕缩放设置等功能)、Infotmic Items服务(硬件配置信息读取的服务,通过该服务可以方便的知道Infotmic方案的设备的所有硬件配置)等。这些服务的使用者是自主开发应用程序,也有可能是与第三方合作的时候接口对接。所有的私有服务是按照android标准的c_s架构实现的,这不是唯一的实现方式,这样做是为了更加的适用于android的平台。为了给上层用户更加方便的使用,本方案对服务进行了 JNI封装,这也是由于android平台自身的特性决定的。Linux kernel也实现了相应的驱动。以上是一个完整的功能的结构模型,实际上也有不少当前第1页1 2 本文档来自技高网...

【技术保护点】
一种操作系统开发添加私有服务体系的方法,是将不同的模块写成各类私有服务,这些私有服务需要调用内核的接口或要提供接口给上层使用,所有的私有服务需要保持独立,可配置;建立主服务;所述主服务包括一个用来管理所有私有服务的服务管理单元;另一个用来给这些服务设置用户权限的用户权限单元。

【技术特征摘要】

【专利技术属性】
技术研发人员:常玉成刘棨王胜王海波
申请(专利权)人:上海盈方微电子有限公司
类型:发明
国别省市:上海;31

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

1