CN106919391B - 面向智能手机的可定制操作系统组件的嵌入式系统 - Google Patents
面向智能手机的可定制操作系统组件的嵌入式系统 Download PDFInfo
- Publication number
- CN106919391B CN106919391B CN201710109560.4A CN201710109560A CN106919391B CN 106919391 B CN106919391 B CN 106919391B CN 201710109560 A CN201710109560 A CN 201710109560A CN 106919391 B CN106919391 B CN 106919391B
- Authority
- CN
- China
- Prior art keywords
- layer
- customizable
- interface
- operating system
- module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/545—Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/541—Client-server
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种面向智能手机的可定制操作系统组件的嵌入式系统。本系统保持适合嵌入式系统的软、硬件可裁切特性,将嵌入式系统划分为基础内核和可定制组件,预装或升级操作系统的过程中,在加载基础内核之后,根据对该硬件平台配置参数的检测,下载与嵌入式系统的硬件平台相匹配的可定制组件;在运行过程中,基础内核通过插入可定制组件的进程来实现操作系统在硬件驱动、中间件和应用层上面的功能;并且针对可能存在的可定制组件与硬件平台不完全兼容的问题,通过虚拟硬件机制,降低了系统报错的风险。
Description
技术领域
本发明涉及智能手机技术,尤其涉及一种面向智能手机的可定制操作系统组件的嵌入式系统。
背景技术
智能手机提供强大的数据处理能力和随时随地的移动网络数据通信,可以实现语音和视频通话、网络浏览、即时通讯、拍照、多媒体播放等丰富的功能应用,已经成为广大消费者必不可少的信息化工具。高性能的硬件平台和开放性的操作系统软件体系是智能手机所具有的主要特点。
智能手机的硬件平台是以处理器为核心的嵌入式系统。嵌入式处理器多采用ARM处理器架构,将针对特定应用场景所设计的功能部件集成在处理器内部,从而提高了针对性和集成度,具有处理能力强,能耗低,体积小,成本可控的优点。智能手机的硬件平台以嵌入式处理器为中心,集成移动通信模组、SDRAM/FLASH存储器、触控面板、显示屏、摄像头、音频输出、蓝牙、红外、外围接口、电源适配管理等基本部件,可以支持多种功能应用。
目前,投入智能手机研发和生产的企业越来越多,产品类型日益丰富,相应地,智能手机的硬件平台配置呈现多样化趋势。高端智能手机的嵌入式硬件平台除了基本部件以外,还可以集成压感触控元件、指纹识别元件、辅助摄像头、计步器芯片、GPS定位芯片、近场通讯模块等增强部件,以满足用户在移动支付、导航定位、运动健康、高质量拍照等方面实际需求。而中低端智能手机从成本考虑,一般不会在硬件平台中加入太多的增强部件,而且,中低端智能手机的处理器计算能力、内存容量等指标也明显低于高端智能手机。
每台智能手机的嵌入式系统都必须具备相应的硬件和软件体系。智能手机的嵌入式系统软硬件体系如图1所示,在硬件平台100的基础上,由底层至上层依次包括操作系统层1001、中间件1002以及应用层1003。操作系统层1001可以划分为硬件驱动以及系统内核;硬件驱动为调用硬件平台中的各个功能部件提供驱动接口程序;系统内核实现电源管理、操作系统快速启动、进程调度的操作。中间件1002包括图形用户接口(GUI),无线应用接口,媒体库,图形引擎、数据库引擎,向上提供操作系统的运行环境并提供核心库的支持。应用层1003包括一个向各个应用程序提供可供调用功能块的公共库,应用程序可调用该公共库中的功能块而实现相应的功能。应用层1003的应用程序包括操作系统预装应用程序以及第三方应用程序。目前,不同厂家、品牌、档次的智能手机虽然纷纷推出独立定制的操作系统,但主要表现为图形界面形式、人机交互手法和预装应用程序功能上的差异,各种操作系统均采用了如图1所示的统一架构。
出于节约开发成本、提高系统和服务的可靠性、简化管理维护等方面的考虑,同一厂家针对自身不同时间推出的、不同档次的智能手机都采用统一的操作系统版本。为了保持系统运行的持续优化、修复操作系统中的BUG、增加新的软件功能以及改进界面和人机交互,智能手机厂家的服务后台会定期向本厂家的智能手机推送操作系统升级包,由用户自主选择对操作系统进行版本升级,以达到统一的操作系统版本。这就造成同一厂家不同档次的新旧手机虽然其在硬件平台配置方面存在明显的差异,但经过升级之后,所运行的都是同一版本的操作系统,在操作系统层1001、中间件1002以及应用层1003的公共库上均是一样的。一般来说,当厂家开发了新款高端手机之后,操作系统的新版本也会以适应和服务于新的硬件平台配置为主,同时保持对其它档次手机以及原有手机软硬件上的兼容性。
由于现有技术中采用上述统一化的操作系统开发和升级方式,新版本的操作系统又按照较高级的硬件平台配置加以设计,对于中低端手机硬件平台或较旧的硬件平台来说,升级后的新版操作系统往往包含大量实际不需要的驱动程序、中间件、功能块以及预装应用程序。这就造成新版本的操作系统相对于这些不适用的硬件平台来说,占用大量的存储空间,运行后新开无用进程消耗内存和处理器的负载能力,使得手机的运行速度缓慢,而且由于操作系统与硬件平台的不匹配易于发生报错、宕机等异常状况。
针对不同的手机硬件平台配置分别开发对应版本的操作系统会显著增加开发成本,操作系统版本过多也不利于后台的云服务支持、信息安全保障和数据管理维护。因而,现有的智能手机厂商普遍没有采取多操作系统的方式。当较旧的智能手机或低端的智能手机的硬件明显无法支持新版本操作系统的运行要求时,厂家会在操作系统升级包当中提示用户不再升级。但是这也使得用户操作系统不能继续得以优化,存在的漏洞持续影响用户的使用过程,甚至存在信息安全方面的隐患。
可见,现有技术忽略了不同手机在硬件平台配置上的差异性,造成操作系统缺乏可定制的特性,违背了嵌入式开发需保持灵活可裁切的原则。
发明内容
针对现有技术的上述问题,本发明提出一种面向智能手机的可定制操作系统组件的嵌入式系统。本系统保持适合嵌入式系统的软、硬件可裁切特性,将嵌入式系统划分为基础内核和可定制组件,并且在嵌入式系统的寄存器中记录硬件平台配置参数;预装或升级操作系统的过程中,在加载系统的基础内核之后,根据对该硬件平台配置参数的检测,下载与嵌入式系统的硬件平台相匹配的可定制组件;在运行过程中,基础内核通过插入可定制组件的进程来实现操作系统在硬件驱动、中间件和应用层上面的功能;并且针对可能存在的可定制组件与硬件平台不完全兼容的问题,通过虚拟硬件机制,降低了系统报错的风险。
具体来说,本申请提供一种面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,包括操作系统层、中间件层和应用层的基础内核和可定制组件;
其中,操作系统层的基础内核包括必要硬件驱动以及系统内核;必要硬件驱动包括智能手机的硬件平台必需的移动通信模组、触控面板、显示屏、音频输出、外围接口、电源适配管理电路等基本功能部件的驱动接口程序;系统内核包括电源管理模块、操作系统快速启动模块、进程调用模块、专用寄存器读取模块以及硬件驱动管理模块;电源管理模块用于通过电源适配管理电路的驱动接口实现电源状态侦测及管理;操作系统快速启动模块用于实现在内存中的加载和启动;进程调用模块用于实现内存进程的生成、保持、调用和杀死,并且在操作系统的系统内核在内存中启动后自动生成和保持系统内核所具有的基本进程,以实现移动通信、内核界面显示、电源状态检测、基本音频输出等基本功能;专用寄存器读取模块用于按照预先指定寻址来读取智能手机嵌入式系统中的一专用寄存器,该专用寄存器专门用于保存智能手机嵌入式系统的硬件平台配置参数;其中,进程调用模块响应专用寄存器读取模块获得的硬件平台配置参数,启动一预定的组件下载进程;组件下载进程用于实现操作系统层、中间件以及应用层的可定制组件的下载;硬件驱动管理模块用于登记和管理当前所获得的驱动接口程序,包括必要硬件驱动和作为可定制组件的增强驱动接口,以及响应进程调用模块所保持的各种进程的调用,通过驱动接口程序实现与硬件平台各种功能部件的数据与指令交互;
操作系统层的可定制组件包括与硬件平台的增强功能部件对应的增强驱动接口;
中间件层的基础内核为基本中间接口,用于向上提供操作系统的运行环境,以便实现嵌入式系统在人机交互接口和无线通信功能方面的基础支撑,基本中间接口包括图形用户接口和无线应用接口;所述图形用户接口通过加载可定制图形引擎库的图形引擎向应用层提供所支持的基本输入输出操作集;无线应用接口向应用层提供所支持的通信应用接口集;
中间件层的可定制组件是可定制基本库,用于匹配底层硬件平台的配置和能力而为上层各种应用功能的实现提供核心库的支持,可定制基本库具体包括可定制媒体库、可定制图形引擎库;可定制媒体库通过图形用户接口向应用层提供所支持的媒体功能集;
应用层的基础内核包括供本层的各个应用调用的公共功能接口集以及必要应用程序集;公共功能接口集包括由操作系统层和中间件层提供的可以由应用层的各个应用调用的功能接口;必要应用程序集包含操作系统中基础性的必需应用;
应用层的可定制组件包括可扩展功能接口集以及可扩展应用程序;可扩展功能接口集包含了由中间件层提供的基本输入输出操作集、通信应用接口集、媒体功能集;随着中间件层可定制组件当中与硬件适配的不同加载方案,该可扩展功能接口集中的可调用功能接口的数量和内容随之更新;可扩展应用程序提供了与硬件平台的不同硬件配置相适配的可加载应用程序。
优选的是,操作系统层的系统内核进一步包括:内存管理模块、进程间通信模块以及进程调用上层接口;内存管理模块负责为进程调用模块所保持的各个进程进行硬件平台内存空间的动态识别、分配、维护和回收;进程间通信模块负责进程调用模块所保持的各个进程之间数据相互传输;进程调用上层接口负责进程调用模块所保持的各个进程与中间件层和应用层之间的数据传输交互,包括接受并向进程传递中间件层和应用层下达的指令和数据,以及向中间件层和应用层反馈进程执行的结果。
进一步优选的是,进程调用模块用于组件下载进程启动之后将组件下载进程设置为具有最高优先的级别;内存管理模块根据最高优先级别而将该组件下载进程设定为常驻内存并分配相应的固定内存空间。
优选的是,中间件层基本中间接口的图形用户接口具体包括:图形设备驱动接口以及图形引擎加载模块; 图形设备驱动接口是面向硬件平台中支持图形化操作的设备的向下驱动接口,用于将中间件层的图形化交互指令转化为面向硬件平台中支持图形化操作的设备的实际操作指令;图形引擎加载模块用于加载可定制图形引擎库当中的图形引擎,基于可定制图形引擎库当中所下载的各类图形引擎,适应性地进行图形引擎的加载和调用,并且根据图形引擎的加载情况而生成并向应用层提供图形用户接口所支持的基本输入输出操作集。
优选的是,中间件层基本中间接口的无线应用接口屏蔽硬件平台和操作系统底层为了实现智能手机的无线通信功能而执行的各种信令及数据处理、控制等具体的实现方式,而给应用层提供了统一的通信应用接口。
优选的是,中间件层的可定制基本库包括可定制图形引擎库,由所述组件下载进程根据所述硬件平台配置参数反映出来的硬件平台配置状况而下载相适应的可以得到支持的图形引擎。
优选的是,中间件层的可定制基本库包括可定制媒体库,所述组件下载进程根据所述硬件平台配置参数,下载能够得到硬件平台支持的媒体功能单元,加入该可定制媒体库。
优选的是,应用层的可扩展功能接口集包括一个可调用功能接口管理列表,应用层的应用可以通过查询该可调用功能接口管理列表获得可供调用的功能接口,并基于该可调用功能接口管理列表给出的链接实现对可扩展功能接口集中的可调用功能接口的调用。
优选的是,硬件驱动管理模块包含一虚拟硬件响应模块,当来自应用层或中间件层的调用指令涉及硬件驱动管理模块未登记的驱动接口程序时,该虚拟硬件响应模块响应该调用指令而反馈一模拟硬件响应。
本发明进而提供了基于上述面向智能手机的可定制操作系统组件的嵌入式系统实现在硬件平台裸机之上加载或更新软件的方法,其特征在于,包括以下步骤:
步骤1,根据智能手机的硬件平台所配置的增强功能部件,在硬件平台的专用寄存器当中写入与增强功能部件的类型、型号、执行协议标准等配置相对应的硬件平台配置参数;
步骤2,向硬件平台的非易失性存储空间中保存操作系统层、中间件层和应用层的基础内核;
步骤3,,通过操作系统快速启动模块向硬件平台的内存加载操作系统层的基础内核,进而启动进程调用模块建立操作系统运行所需要的基本进程;
步骤4,启动专用寄存器读取模块,读取硬件平台配置参数,将所检测获得的硬件平台配置参数提供给进程调用模块;
步骤5,进程调用模块启动一预定的组件下载进程,组件下载进程实现操作系统层、中间件以及应用层的可定制组件的下载;
步骤6,实现操作系统层、中间件层以及应用层已下载的可定制组件的加载。
可见,本申请充分保持了适合嵌入式系统的软、硬件可裁切特性,使得智能手机相关软件部分与其硬件平台的模块配置充分适应,避免了不能得到硬件平台支持的系统层、中间件层和应用层的软件组件给系统的存储与运行带来不必要的负荷;例如,在厂商为不同配置级别的智能手机采用统一化的操作系统的现状下,非与最新操作系统完全适配的智能手机硬件平台可以通过下载和插入与自身硬件配置相适应的可定制组件,来实现操作系统在硬件驱动、中间件和应用层上面的功能,从而保持操作系统功能的安装和更新,同时减缓了完整版操作系统对智能手机平台自身资源和处理能力的过度占用和消耗;并且针对可能存在的可定制组件与硬件平台不完全兼容的问题,通过虚拟硬件机制,降低了系统报错的风险。
说明书附图
图1是现有技术的嵌入式系统软硬件体系结构示意图;
图2是本发明的智能手机嵌入式系统体系结构示意图;
图3是本发明的嵌入式系统操作系统层系统内核结构示意图;
图4是本发明的嵌入式系统中间件层图形用户接口具体结构示意图;
图5是在本发明的嵌入式系统基础上执行加载或更新必要操作系统软件的过程示意图。
具体实施方式
下面通过实施例,对本发明的技术方案做进一步具体的说明。
图2是本发明提出的智能手机嵌入式系统体系结构示意图。本发明提出的智能手机嵌入式系统由基础内核1和可定制组件2组成。基础内核1和可定制组件2由底层至上层也分别依次包括操作系统层、中间件以及应用层。
基础内核1在操作系统层包括必要硬件驱动10以及系统内核11。必要硬件驱动10是硬件平台中必需的基本功能部件的驱动接口程序,包括移动通信模组、触控面板、显示屏、音频输出、外围接口、电源适配管理电路的驱动接口程序。系统内核11如图3所示,包括电源管理模块110、操作系统快速启动模块111以及进程调用模块112;电源管理模块110用于通过电源适配管理电路的驱动接口实现电源状态侦测及管理;操作系统快速启动模块111用于在Boot Loader的调用下实现在内存中的加载和启动;进程调用模块112用于实现内存进程的生成、保持、调用和杀死,并且在操作系统的系统内核11在内存中启动后自动生成和保持系统内核11所具有的基本进程,以实现移动通信、内核界面显示、电源状态检测、基本音频输出等功能。系统内核11还包括专用寄存器读取模块113;专用寄存器读取模块113用于按照预先指定寻址来读取智能手机嵌入式系统中的一专用寄存器,该专用寄存器专门用于保存智能手机嵌入式系统的硬件平台配置参数;硬件平台配置参数包括除上述基本功能部件外,智能手机嵌入式系统硬件平台所包括的其它增强功能部件的类型、型号、执行协议标准等配置参数;专用寄存器读取模块113将所检测获得的硬件平台配置参数提供给进程调用模块112。进程调用模块112响应专用寄存器读取模块113,启动一预定的组件下载进程;组件下载进程用于实现操作系统层、中间件以及应用层的可定制组件2的下载;组件下载进程根据所获得的硬件平台配置参数,下载与增强功能部件对应的增强驱动接口20,这些增强驱动接口20作为操作系统层的可定制组件2;例如,增强驱动接口20具体包括压感触控元件、指纹识别元件、辅助摄像头、计步器芯片、GPS定位芯片、近场通讯模块这些增强部件的硬件驱动接口程序。系统内核11还包括硬件驱动管理模块114;硬件驱动管理模块114用于登记和管理当前所获得的驱动接口程序,包括必要硬件驱动10和作为可定制组件2的增强驱动接口;以及,响应进程调用模块112所保持的各种进程的调用,通过驱动接口程序实现与硬件平台各种功能部件的数据与指令交互。
如图3所示,系统内核11进一步包括内存管理模块115、进程间通信模块116以及进程调用上层接口117。内存管理模块115负责为进程调用模块112所保持的各个进程进行硬件平台内存空间的动态识别、分配、维护和回收。进程间通信模块116负责进程调用模块112所保持的各个进程之间数据相互传输。进程调用上层接口117负责进程调用模块112所保持的各个进程与中间件层和应用层之间的数据传输交互,包括接受并向进程传递中间件层和应用层下达的指令和数据,以及向中间件层和应用层反馈进程执行的结果。其中,对于实现操作系统层、中间件以及应用层的可定制组件2下载的组件下载进程,进程调用模块112将该进程启动之后设置为具有最高优先的级别;内存管理模块115根据最高优先级别而将该组件下载进程设定为常驻内存并分配相应的固定内存空间;该内存空间可以用于对下载数据的暂存,以便在将下载的可定制组件2存储至非易失性存储卡之前实现完整性校验等操作。并且,进程调用上层接口117负责将来自中间件层和应用层的可定制组件下载指令传输给组件下载进程,并且根据组件下载进程对中间件层和应用层相应的可定制组件2的下载进度,向中间件层和应用层反馈可定制组件下载状态。
回到图2,中间件层的基础内核1是基本中间接口12,具体包括图形用户接口121(GUI)和无线应用接口122,中间件层的基础内核1用于向上提供操作系统的运行环境,以便实现嵌入式系统在人机交互接口和无线通信功能方面的基础支撑。中间件层的可定制组件2是可定制基本库22,具体包括可定制媒体库221,可定制图形引擎库222,以上中间件层的可定制组件22匹配底层硬件平台的配置和能力而为上层各种应用功能的实现提供核心库的支持。
图形用户接口121(GUI)中间件目标是屏蔽硬件平台的下层差异,向上层应用提供统一和易用的窗口界面控件,窗口界面控件体现为各种常用的窗口界面元素,应用层生成图形化人机交互接口的过程中可以对图形用户接口121(GUI)所提供的窗口界面控件进行直接应用。为了适应本申请根据底层硬件配置而动态加载可定制组件的特性,如图4所示,该图形用户接口121(GUI)具体包括图形设备驱动接口1211以及图形引擎加载模块1212。图形设备驱动接口1211是面向硬件平台中支持图形化操作的设备的向下驱动接口,其功能是将中间件层的图形化交互指令转化为面向屏幕、触控面板的实际操作指令,从而实现从软件到硬件的图形化输入输出控制机能;如果硬件平台系统还具有其它的支持图形化操作的增强功能部件,例如触控笔、外接图形输入设备等,则图形设备驱动接口1211也能够针对增强功能部件实现图形化交互指令到面向硬件的实际操作指令的转化。图形设备驱动接口1211可以将调用硬件平台的屏幕、触控面板、触控笔、外接图形输入设备等图形化硬件部件的实际操作指令传递给操作系统层的系统内核当中负责响应该类型的实际操作指令的响应进程,并进而由该响应进程通过硬件驱动管理模块114调用必要硬件驱动或者是增强驱动接口,以实际通过硬件部件实现图形输出以及图形化的输入采集。图形引擎加载模块1212用于加载可定制图形引擎库222当中的图形引擎;图形引擎的作用是根据应用层的点击、画线、多点缩放、多点滑动、填充区域、颜色操作、亮度操作、透明混合操作等基本输入输出操作而映射对应的图形化交互指令,并将所对应的图形化交互指令提供给所述图形设备驱动接口1211以实现向操作系统层中硬件驱动接口的传递。由于硬件平台不同的图形硬件设备配置,智能手机所能够支持的基本输入输出操作是与各个平台的图形硬件设备配置相匹配的,例如,支持多点触摸识别的触控面板才能够支持多点缩放、多点滑动等输入输出操作,故需要加载与多点缩放和多点滑动对应的图形引擎。因而,可定制图形引擎库222当中的图形引擎可以作为中间件层的可定制组件2,由所述组件下载进程根据所述硬件平台配置参数反映出来的硬件平台配置状况而下载相适应的可以得到支持的图形引擎。进而,图形引擎加载模块1212可基于可定制图形引擎库222当中所下载的各类图形引擎,适应性地进行图形引擎的加载和调用,并且根据图形引擎的加载情况而生成并向应用层提供图形用户接口121(GUI)所支持的基本输入输出操作集。
无线应用接口122屏蔽硬件平台和操作系统底层为了实现智能手机的无线通信功能而执行的各种信令及数据处理、控制等具体的实现方式,而给应用层提供了统一的通信应用接口。应用层的应用并不必关心智能手机的无线通信部分采用了何种结构和协议,只需通过调用统一的通信应用接口就可以实现对无线通信功能的访问,从而实现对GSM,GPRS,WCDMA,CDMA2000,TD-CDMA,LTE等无线通信协议的支持。无线应用接口122具体可以分为通信应用接口集、电话业务服务模块和通信处理模块三个部分。通信应用接口集提供一组供应用层的应用调用的接口函数,从而能够使应用不介入底层而实现无线通信功能。应用通过消息方式与电话业务服务模块进行通信,电话业务服务模块对上层应用提供统一和并行的通信功能的具体实现,一方面接受应用的通信请求,并将通信请求转换成相应的控制命令发送给操作系统层的无线通信响应进程,以便调用相应的硬件模块进行信号收发;另一方面,电话业务服务模块接受从操作系统层的无线通信响应进程传入的数据和指令,进行解析后通过标准的接口通知应用。通信处理模块负责对执行通信传输协议的硬件设备进行管理,从而电话业务服务模块就可以通过一致的方式与硬件平台的无线通信设备进行交互,当硬件平台更新为采用其他无线通信设备时,只需通过通信处理模块重新生成一个对象单位,依旧可以采用原有方式实现对硬件平台的无线通信设备进行管理,使得平台具有很好的可扩展性。
中间件层的可定制组件2是可定制基本库22,具体包括可定制媒体库221,可定制图形引擎库222。前文提到,可定制图形引擎库222当中的图形引擎作为中间件层的可定制组件2,可以由操作系统层的所述组件下载进程根据所述硬件平台配置参数进行下载;图形引擎加载模块1212可基于可定制图形引擎库222当中所下载的各类图形引擎,适应性地进行图形引擎的加载和调用,并且根据图形引擎的加载情况而生成并向应用层提供图形用户接口121(GUI)所支持的基本输入输出操作集。
可定制媒体库221可以提供支持流媒体编解码及播放的媒体功能单元;相类似地,操作系统层的所述组件下载进程根据所述硬件平台配置参数,下载能够得到硬件平台支持的媒体功能单元,加入该可定制媒体库221;例如,在硬件平台具有支持3D裸眼显示或3D投影显示的硬件配置的情况下,可以下载执行3D媒体解码、视差处理和播放的媒体功能单元,加入该可定制媒体库221;并且,可定制媒体库221允许基本中间接口12中的图形用户接口121对媒体功能单元的加载和调用,从而响应应用层的请求而向上提供流媒体形式的数据;图形用户接口121面向应用层提供一个对应用可用的媒体功能集,以便通过对该媒体功能集中的媒体功能的调用而实现对可定制媒体库221当中媒体功能单元的加载和调用。
参见图2,应用层的基础内核包括可供本层的各个应用调用的公共功能接口集13,以及必要应用程序集14。应用层的可定制组件包括弹性的可扩展功能接口集23以及各种适应智能手机功能的可扩展应用程序24。
公共功能接口集13包括由操作系统层和中间件层提供的可以由应用层的各个应用调用的功能接口(API)。应用层的各类应用可以通过调用公共功能接口集13当中包含的功能接口而命令操作系统,通过借助操作系统提供的一些基础功能的运行,为应用自身的功能实现提供服务。必要应用程序集14作为应用层的基础内核,包含操作系统中基础性的必需应用,例如通话服务、短消息服务、电话簿服务、SIM卡访问、时钟、文件管理和访问系统、网络浏览器、手机功能设置程序等。应用层的基础内核在预装或升级操作系统的过程中,作为操作系统的必要组成部分默认加载并存储于智能手机的存储空间。
可扩展功能接口集23包含了由中间件层提供的基本输入输出操作集、通信应用接口集、媒体功能集,因而,可扩展功能接口集23是一个弹性的和动态的可调用功能接口集合;随着中间件层可定制组件当中与硬件适配的不同加载方案的实现,该可扩展功能接口集23中的可调用功能接口的数量和内容是随之更新的。为了适应该功能接口集动态弹性变化的特性,可扩展功能接口集23包括一个可调用功能接口管理列表,应用层的应用可以通过查询该可调用功能接口管理列表获得可供调用的功能接口,并基于该可调用功能接口管理列表给出的链接实现对可扩展功能接口集23中的可调用功能接口的调用。
可扩展应用程序24提供了与硬件平台的不同硬件配置相适配的可加载应用程序,例如,与硬件平台的压感触控元件、指纹识别元件、辅助摄像头、计步器芯片、GPS定位芯片、近场通讯模块等增强部件相适配,作为应用层可定制组件的可扩展应用程序24可以包括压力感应应用、指纹解锁应用、指纹身份识别应用、自拍应用、健康指数应用、定位服务应用、近距离支付应用等。
图2所示的以基础内核加载可定制组件形成的嵌入式体系结构为基础,本申请的智能手机在硬件平台裸机之上加载或更新必要操作系统软件的过程如图5所示。在步骤501中,根据智能手机的硬件平台所配置的增强功能部件,在硬件平台的专用寄存器当中写入与增强功能部件的类型、型号、执行协议标准等配置相对应的硬件平台配置参数。步骤502中,向硬件平台的非易失性存储空间中保存操作系统层、中间件层和应用层的基础内核。基础内核被保存之后,步骤503中,通过操作系统快速启动模块111向硬件平台的内存加载操作系统层的基础内核,进而启动进程调用模块建立操作系统运行所需要的基本进程。步骤504,启动专用寄存器读取模块,读取硬件平台配置参数,将所检测获得的硬件平台配置参数提供给进程调用模块。步骤505,进程调用模块启动一预定的组件下载进程,组件下载进程实现操作系统层、中间件以及应用层的可定制组件的下载;具体来说,组件下载进程通过无线应用接口的网络连接功能与预定的组件下载服务器网络地址建立通信连接,内存管理模块为组件下载进程分配相应的固定内存空间,依次实现操作系统层增强驱动接口、中间件层的可定制基本库以及应用层可扩展应用程序的下载。步骤506中,实现操作系统层、中间件层以及应用层已下载的可定制组件的加载;具体来看,在操作系统层,通过硬件驱动管理模块实现增强驱动接口的调用;在中间件层,通过图形引擎加载模块对可定制图形引擎库中的图形引擎予以加载和调用,并且通过图形用户接口进行可定制媒体库中媒体功能单元的加载和调用;应用层的可扩展功能接口集根据中间件层对可定制组件的加载生成可调用功能接口集合并写入可调用功能接口管理列表。进而,在嵌入式系统的实际运行中,通过各层的基础内核和可定制组件实现智能手机的软硬件平台功能。
虽然根据硬件平台的配置参数而适应性地进行可定制组件的下载和加载,但鉴于硬件平台的多样性,可能存在可定制组件与硬件平台不完全兼容的问题。通过虚拟硬件机制,降低了系统报错的风险。具体来说,在硬件驱动管理模块包含一虚拟硬件响应模块,当来自应用层或中间件层的调用指令涉及硬件驱动管理模块未登记的驱动接口程序时,该虚拟硬件响应模块响应该调用指令而反馈一模拟硬件响应;例如,当应用层或中间件层的调用指令涉及辅助摄像头,而智能手机的硬件平台并未包括辅助摄像头作为增强功能部件的情况下,由于硬件驱动管理模块未登记与辅助摄像头对应的驱动接口程序,则由虚拟硬件响应模块反馈一模拟的预制图片作为模拟硬件响应;通过这一机制,虽然不能实现辅助摄像头相关的应用功能,但可以避免相关应用发生报错的情况。
可见,本申请充分保持了适合嵌入式系统的软、硬件可裁切特性,使得智能手机相关软件部分与其硬件平台的模块配置充分适应,避免了不能得到硬件平台支持的系统层、中间件层和应用层的软件组件给系统的存储与运行带来不必要的负荷;例如,在厂商为不同配置级别的智能手机采用统一化的操作系统的现状下,非与最新操作系统完全适配的智能手机硬件平台可以通过下载和插入与自身硬件配置相适应的可定制组件,来实现操作系统在硬件驱动、中间件和应用层上面的功能,从而保持操作系统功能的安装和更新,同时减缓了完整版操作系统对智能手机平台自身资源和处理能力的过度占用和消耗;并且针对可能存在的可定制组件与硬件平台不完全兼容的问题,通过虚拟硬件机制,降低了系统报错的风险。
以上实施例仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
Claims (10)
1.一种面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,包括操作系统层、中间件层和应用层的基础内核和可定制组件;
其中,操作系统层的基础内核包括必要硬件驱动以及系统内核;必要硬件驱动包括智能手机的硬件平台必需的移动通信模组、触控面板、显示屏、音频输出、外围接口、电源适配管理电路的基本功能部件的驱动接口程序;系统内核包括电源管理模块、操作系统快速启动模块、进程调用模块、专用寄存器读取模块以及硬件驱动管理模块;电源管理模块用于通过电源适配管理电路的驱动接口实现电源状态侦测及管理;操作系统快速启动模块用于实现在内存中的加载和启动;进程调用模块用于实现内存进程的生成、保持、调用和杀死,并且在操作系统的系统内核在内存中启动后自动生成和保持系统内核所具有的基本进程,以实现移动通信、内核界面显示、电源状态检测、基本音频输出的基本功能;专用寄存器读取模块用于按照预先指定寻址来读取智能手机嵌入式系统中的一专用寄存器,该专用寄存器专门用于保存智能手机嵌入式系统的硬件平台配置参数;其中,进程调用模块响应专用寄存器读取模块获得的硬件平台配置参数,启动一预定的组件下载进程;组件下载进程用于实现操作系统层、中间件层以及应用层的可定制组件的下载;硬件驱动管理模块用于登记和管理当前所获得的驱动接口程序,包括必要硬件驱动和作为可定制组件的增强驱动接口,以及响应进程调用模块所保持的各种进程的调用,通过驱动接口程序实现与硬件平台各种功能部件的数据与指令交互;
操作系统层的可定制组件包括与硬件平台的增强功能部件对应的增强驱动接口;
中间件层的基础内核为基本中间接口,用于向上提供操作系统的运行环境,以便实现嵌入式系统在人机交互接口和无线通信功能方面的基础支撑,基本中间接口包括图形用户接口和无线应用接口;所述图形用户接口通过加载可定制图形引擎库的图形引擎向应用层提供所支持的基本输入输出操作集;无线应用接口向应用层提供所支持的通信应用接口集;
中间件层的可定制组件是可定制基本库,用于匹配底层硬件平台的配置和能力而为上层各种应用功能的实现提供核心库的支持,可定制基本库具体包括可定制媒体库、可定制图形引擎库;可定制媒体库通过图形用户接口向应用层提供所支持的媒体功能集;
应用层的基础内核包括供本层的各个应用调用的公共功能接口集以及必要应用程序集;公共功能接口集包括由操作系统层和中间件层提供的可以由应用层的各个应用调用的功能接口;必要应用程序集包含操作系统中基础性的必须应用;
应用层的可定制组件包括可扩展功能接口集以及可扩展应用程序;可扩展功能接口集包含了由中间件层提供的基本输入输出操作集、通信应用接口集、媒体功能集;随着中间件层可定制组件当中与硬件适配的不同加载方案,该可扩展功能接口集中的可调用功能接口的数量和内容随之更新;可扩展应用程序提供了与硬件平台的不同硬件配置相适配的可加载应用程序。
2.根据权利要求1所述的面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,操作系统层的系统内核进一步包括:内存管理模块、进程间通信模块以及进程调用上层接口;内存管理模块负责为进程调用模块所保持的各个进程进行硬件平台内存空间的动态识别、分配、维护和回收;进程间通信模块负责进程调用模块所保持的各个进程之间数据相互传输;进程调用上层接口负责进程调用模块所保持的各个进程与中间件层和应用层之间的数据传输交互,包括接收并向进程传递中间件层和应用层下达的指令和数据,以及向中间件层和应用层反馈进程执行的结果。
3.根据权利要求2所述的面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,进程调用模块用于组件下载进程启动之后将组件下载进程设置为具有最高优先的级别;内存管理模块根据最高优先级别而将该组件下载进程设定为常驻内存并分配相应的固定内存空间。
4.根据权利要求1所述的面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,中间件层基本中间接口的图形用户接口具体包括:图形设备驱动接口以及图形引擎加载模块;图形设备驱动接口是面向硬件平台中支持图形化操作的设备的向下驱动接口,用于将中间件层的图形化交互指令转化为面向硬件平台中支持图形化操作的设备的实际操作指令;图形引擎加载模块用于加载可定制图形引擎库当中的图形引擎,基于可定制图形引擎库当中所下载的各类图形引擎,适应性地进行图形引擎的加载和调用,并且根据图形引擎的加载情况而生成并向应用层提供图形用户接口所支持的基本输入输出操作集。
5.根据权利要求1所述的面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,中间件层基本中间接口的无线应用接口屏蔽硬件平台和操作系统底层为了实现智能手机的无线通信功能而执行的各种信令及数据处理、控制的具体的实现方式,而给应用层提供了统一的通信应用接口。
6.根据权利要求1所述的面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,中间件层的可定制基本库包括可定制图形引擎库,由所述组件下载进程根据所述硬件平台配置参数反映出来的硬件平台配置状况而下载相适应的可以得到支持的图形引擎。
7.根据权利要求1所述的面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,中间件层的可定制基本库包括可定制媒体库,所述组件下载进程根据所述硬件平台配置参数,下载能够得到硬件平台支持的媒体功能单元,加入该可定制媒体库。
8.根据权利要求1所述的面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,应用层的可扩展功能接口集包括一个可调用功能接口管理列表,应用层的应用可以通过查询该可调用功能接口管理列表获得可供调用的功能接口,并基于该可调用功能接口管理列表给出的链接实现对可扩展功能接口集中的可调用功能接口的调用。
9.根据权利要求1所述的面向智能手机的可定制操作系统组件的嵌入式系统,其特征在于,硬件驱动管理模块包含一虚拟硬件响应模块,当来自应用层或中间件层的调用指令涉及硬件驱动管理模块未登记的驱动接口程序时,该虚拟硬件响应模块响应该调用指令而反馈一模拟硬件响应。
10.基于上述任意一项权利要求所述面向智能手机的可定制操作系统组件的嵌入式系统,实现在硬件平台裸机之上加载或更新软件的方法,其特征在于,包括以下步骤:
步骤1,根据智能手机的硬件平台所配置的增强功能部件,在硬件平台的专用寄存器当中写入与增强功能部件的类型、型号、执行协议标准的配置相对应的硬件平台配置参数;
步骤2,向硬件平台的非易失性存储空间中保存操作系统层、中间件层和应用层的基础内核;
步骤3,通过操作系统快速启动模块向硬件平台的内存加载操作系统层的基础内核,进而启动进程调用模块建立操作系统运行所需要的基本进程;
步骤4,启动专用寄存器读取模块,读取硬件平台配置参数,将所检测获得的硬件平台配置参数提供给进程调用模块;
步骤5,进程调用模块启动一预定的组件下载进程,组件下载进程实现操作系统层、中间件层以及应用层的可定制组件的下载;
步骤6,实现操作系统层、中间件层以及应用层已下载的可定制组件的加载。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710109560.4A CN106919391B (zh) | 2017-02-27 | 2017-02-27 | 面向智能手机的可定制操作系统组件的嵌入式系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710109560.4A CN106919391B (zh) | 2017-02-27 | 2017-02-27 | 面向智能手机的可定制操作系统组件的嵌入式系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106919391A CN106919391A (zh) | 2017-07-04 |
CN106919391B true CN106919391B (zh) | 2020-08-21 |
Family
ID=59453854
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710109560.4A Expired - Fee Related CN106919391B (zh) | 2017-02-27 | 2017-02-27 | 面向智能手机的可定制操作系统组件的嵌入式系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106919391B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107479482B (zh) * | 2017-08-21 | 2023-02-28 | 上海博泰悦臻网络技术服务有限公司 | 一种应用于汽车电子的操作系统和实现方法 |
CN107704282B (zh) * | 2017-09-15 | 2021-02-02 | 北京东土科技股份有限公司 | 一种应用于嵌入式系统的加载方法及装置 |
CN110377330B (zh) * | 2019-07-22 | 2023-07-04 | 国美视界(北京)科技有限公司 | 电子设备的操作系统配置方法及设备 |
CN114115822B (zh) * | 2022-01-25 | 2022-04-15 | 深圳市微克科技有限公司 | 一种基于云边结合的智能穿戴操作系统的生成方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104199674A (zh) * | 2014-09-23 | 2014-12-10 | 浪潮电子信息产业股份有限公司 | 一种基于软件复用的嵌入式操作系统的定制方法 |
CN104885092A (zh) * | 2012-11-13 | 2015-09-02 | 奥克兰服务有限公司 | 用于操作系统的安全系统和方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160323143A1 (en) * | 2015-05-02 | 2016-11-03 | Hyeung-Yun Kim | Method and apparatus for neuroplastic internet of things by cloud computing infrastructure as a service incorporating reconfigurable hardware |
-
2017
- 2017-02-27 CN CN201710109560.4A patent/CN106919391B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104885092A (zh) * | 2012-11-13 | 2015-09-02 | 奥克兰服务有限公司 | 用于操作系统的安全系统和方法 |
CN104199674A (zh) * | 2014-09-23 | 2014-12-10 | 浪潮电子信息产业股份有限公司 | 一种基于软件复用的嵌入式操作系统的定制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106919391A (zh) | 2017-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11853820B2 (en) | Cross-process communication method, apparatus, and device | |
CN106919391B (zh) | 面向智能手机的可定制操作系统组件的嵌入式系统 | |
CN104281478B (zh) | 更新应用程序的方法及装置 | |
CN114461239B (zh) | 软件升级系统和软件升级方法 | |
CN110865837B (zh) | 一种进行系统升级的方法和终端 | |
CN114816167B (zh) | 应用图标的显示方法、电子设备及可读存储介质 | |
WO2022161024A1 (zh) | 升级提示方法、终端设备及计算机可读存储介质 | |
CN113485709B (zh) | 应用优化方法、装置以及电子设备 | |
US20230236714A1 (en) | Cross-Device Desktop Management Method, First Electronic Device, and Second Electronic Device | |
CN116467221B (zh) | 一种基于解释器的插桩方法、系统及相关电子设备 | |
CN116483734B (zh) | 一种基于编译器的插桩方法、系统及相关电子设备 | |
CN112817610A (zh) | cota包安装方法及相关装置 | |
CN116700601B (zh) | 内存优化方法、设备及存储介质 | |
CN116662270B (zh) | 文件解析方法及相关装置 | |
CN116321106A (zh) | 更新用户身份识别模块卡系统数据的方法及装置 | |
CN114675786A (zh) | 一种大容量存储挂载方法、装置、终端及介质 | |
CN114443117A (zh) | 一种应用程序的处理方法及电子设备 | |
CN113253905A (zh) | 基于多指操作的触控方法及智能终端 | |
CN117111965B (zh) | 应用程序的安装方法、电子设备和可读存储介质 | |
CN117971305B (zh) | 操作系统的升级方法、服务器及电子设备 | |
CN116700813B (zh) | 微件的加载方法、电子设备及可读存储介质 | |
CN115981576B (zh) | 共享数据的方法、电子设备及存储介质 | |
CN116886808B (zh) | 一种高清图标显示方法、装置及电子设备 | |
CN117130627B (zh) | 配件升级方法及电子设备 | |
CN116055715B (zh) | 编解码器的调度方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200821 |
|
CF01 | Termination of patent right due to non-payment of annual fee |