首页 / 专利库 / 医疗服务 / 医疗程序 / 一种基于数字医疗的数字家庭中间件系统

一种基于数字医疗的数字家庭中间件系统

阅读:1019发布:2020-07-06

专利汇可以提供一种基于数字医疗的数字家庭中间件系统专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于数字医疗的数字家庭 中间件 系统,包括:底层 硬件 层, 操作系统 以及驱动层,应用程序 接口 API层,java平台层,应用程序层;底层硬件层包括物理链接模 块 ,操作系统层包括驱动适配模块、传输模块,应用程序借口层包括服务模块、模板模块,而将原来的应用模块拆分为2层;Java平台层可由3个具体小模块组成,分别为java 虚拟机 ,窗口图形系统,java本地接口。实施本发明 实施例 ,本发明所述的基于Java虚拟机的按层次划分的数字家庭中间件系统,能使现有已经开发出的应用能够直接应用于数字家庭中间件系统的服务需求,减少应用的重复性开发,减少人 力 开销。合理的层次划分使中间件系统的可扩展性强,能满足不同层次不同需求的人群的需要。,下面是一种基于数字医疗的数字家庭中间件系统专利的具体信息内容。

1.一种基于数字医疗的数字家庭中间件系统,其特征在于,包括:底层硬件层,操作系统以及驱动层,应用程序接口API层,java平台层,应用程序层;底层硬件层包括物理链接模,操作系统层包括驱动适配模块、传输模块,应用程序借口层包括服务模块、模板模块,而将原来的应用模块拆分为2层;Java平台层可由3个具体小模块组成,分别为java虚拟机,窗口图形系统,java本地接口。
2.如权利要求1所述的基于数字医疗的数字家庭中间件系统,其特征在于,操作系统和驱动层则负责协调不同的底层硬件,向上提供相对应的接口,这样可以对操作系统的内核进行动态的裁剪,使资源的使用效率到达最高;
应用程序接口API层则负责衔接操作系统层,屏蔽操作系统复杂的功能操作,向上一层提供统一而又简洁的API函数应用接口;在应用层增加Java平台,借用java虚拟机与平台无关性的优势屏蔽底层的差异,可以给上层提供一个一致合理的应用程序开发接口,充分发挥它内在的优势,更大程度的简化大而复杂的软件系统开发的难度。

说明书全文

一种基于数字医疗的数字家庭中间件系统

技术领域

[0001] 本发明涉及数字医疗技术领域,具体涉及一种基于数字医疗的数字家庭中间件系统。

背景技术

[0002] 数字家庭网络在一些发达国家或地区发展较快,如美欧和日本这些地区的一些著名的大公司首先进入该市场,他们不仅研制和开发了数字家庭网络的平台和制定了相关的标准,而且推出了一系列的数字家庭网络的产品,如接口卡,家庭网关,小型服务器,各种物理量的传感器。各种电器/设备的控制器驱动器!信息的收发器等″丰富的网络产品,不仅支持了数字家庭网络系统,而且进一步推动了数字家庭网络技术的发展,开拓了数字家庭网络系统的大市场″目前国内也出现了一些致于家庭网络技术研究和推广的企业,但国内家庭网络的发展较慢。到目前为止,在家庭里拥有多台PC的情况还不多见。随着嵌入式系统的快速发展,嵌入式产品已经在数字家庭领域得到了应用。一方面,随着嵌入式Internet时代的到来,嵌入式设备与网络相结合,实时自动的互换信息已经慢慢的蓬勃发展。但由于各种原因,应用系统之间甚至同一个应用系统之内都存在着很大的异质性。那么如何在由众多不同的嵌入式系统(不同的体系结构、不同的微处理器、不同的支撑软件、不同的接口协议)所构成的分布异构的动态网络环境下,解决基于多嵌入式系统的跨平台的应用互连和互操作问题呢?亦即如何构建一个标准的通用性支撑软件平台,可以满足若干个相互异构的嵌入式系统与嵌入式系统、嵌入式系统与PC机之间的互通互连和互操作的特殊要求呢?目前看来,中间件(middleware)技术向数字家庭嵌入式系统作迁移,才能担此重任。另一方面,随着嵌入式系统在各行业中的深入应用,嵌入式软件的开发越来越受瞩目。如何高效率地开发数字家庭系统中的应用软件,是一个关键问题。将中间件技术引入到嵌入式应用软件的开发中,能最大限度地支持上层应用软件的开发。因为中间件技术可以屏蔽各类硬件平台和操作系统的结构差异和技术细节,向应用程序开发人员提供简单统一的接口,使他们把精力更多地集中在应用系统的设计开发上,能加快开发进度,降低开发成本,提高产品竞争力。总之,一是嵌入式系统要求互连并接入Intemet,实现分布式的普适计算,二是嵌入式应用软件的开发追求高效率、低成本、高质量、可扩展、可维护,所以有关数字家庭的嵌入式中间件技术应运而生。
[0003] 现有的数字家庭中间件系统有以下模组成,物理连接模块、驱动适配模块、传输模块、服务模块、模板模块、应用模块,物理连接模块通过驱动适配模块与传输模块连接,传输模块通过服务模块与模板模块连接,模板模块连接应用模块。数字家庭中间件系统将信息服务和设备功能服务在数字家庭中无缝结合,从服务层面上解决了家庭设备和信息服务的标准化与融合问题。
[0004] 以上的技术虽然能够很好的将信息服务和设备功能服务结合在一起,也给出了较详细的模块划分,但没有考虑到不同的用户有着不同的需求,首先并不是所有的模块都一定要用上。其次在不同的平台上运行该中间件系统,需要对以上几乎所有的模块做出修改,这样划分出通用性不强,这也决定了未来的数字家庭中间件系统应该能适用于各种平台,并且能够根据需求量体裁衣,应当对可能修改的模块做一些整合。

发明内容

[0005] 本发明就是要解决目前的数字家庭中间件系统模块划分以及通用性问题。为解决这一问题,设计一种基于java虚拟机,按层次划分为主的数字家庭中间件系统。划分模块,使面向上层应用的模块与底层硬件的模块的分层更加的合理,既便于根据需求合理增减功能模块,提高资源的利用率,同时利用java虚拟机的优势尽量屏蔽底层的差异给上层提供一个一致合理的应用程序开发接口。Java平台可以发挥它内在的优势,简化大而复杂的软件系统开发的难度。
[0006] 本发明实施例提供了一种基于数字医疗的数字家庭中间件系统,包括:底层硬件层,操作系统以及驱动层,应用程序接口API层,java平台层,应用程序层;底层硬件层包括物理链接模块,操作系统层包括驱动适配模块、传输模块,应用程序借口层包括服务模块、模板模块,而将原来的应用模块拆分为2层;Java平台层可由3个具体小模块组成,分别为java虚拟机,窗口图形系统,java本地接口。
[0007] 操作系统和驱动层则负责协调不同的底层硬件,向上提供相对应的接口,这样可以对操作系统的内核进行动态的裁剪,使资源的使用效率到达最高;
[0008] 应用程序接口API层则负责衔接操作系统层,屏蔽操作系统复杂的功能操作,向上一层提供统一而又简洁的API函数应用接口;在应用层增加Java平台,借用java虚拟机与平台无关性的优势屏蔽底层的差异,可以给上层提供一个一致合理的应用程序开发接口,充分发挥它内在的优势,更大程度的简化大而复杂的软件系统开发的难度。
[0009] 本发明具有如下有益效果,本发明所述的基于Java虚拟机的按层次划分的数字家庭中间件系统,能使现有已经开发出的应用能够直接应用于数字家庭中间件系统的服务需求,减少应用的重复性开发,减少人力开销。合理的层次划分使中间件系统的可扩展性强,能满足不同层次不同需求的人群的需要。附图说明
[0010] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
[0011] 图1是本发明实施例中的一种基于数字医疗的数字家庭中间件系统。

具体实施方式

[0012] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0013] 将模块重新划分,可以分为5层,底层硬件层,操作系统以及驱动层,应用程序接口API层,java平台层,应用程序层。具体划分方法:底层硬件层包括物理链接模块,操作系统层包括驱动适配模块、传输模块,应用程序借口层包括服务模块、模板模块,而将原来的应用模块拆分为2层。Java平台层可由3个具体小模块组成,分别为java虚拟机,窗口图形系统,java本地接口。具体结构划分图如1中所示。
[0014] 层次划分使数字家庭中间件的系统结构更加清晰,通用性更强。面对系统平台和需求的多样性,一般只需对其中的一层作修改即可。模块的合理划分给数字家庭中间件系统的设计,增加了更多的灵活性。底层硬件多种多样,除了处理器和内存外,还包括各种各样的外部设备,因此还需要屏蔽下层各种设备的差别,给应用开发提供一个统一的平台。操作系统和驱动层则负责协调不同的底层硬件,向上提供相对应的接口,这样可以对操作系统的内核进行动态的裁剪,使资源的使用效率到达最高。应用程序接口API层则负责衔接操作系统层,屏蔽操作系统复杂的功能操作,向上一层提供统一而又简洁的API函数应用接口。在应用层增加Java平台,借用java虚拟机与平台无关性的优势屏蔽底层的差异,可以给上层提供一个一致合理的应用程序开发接口,充分发挥它内在的优势,更大程度的简化大而复杂的软件系统开发的难度。
[0015] (1)java虚拟机的平台无关性
[0016] Java虚拟机(JVM)一种用于计算机设备的规范,可用不同的方式(软件或硬件)加以实现。编译虚拟机的指令集与编译微处理器的指令集非常类似。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。Java虚拟机(JVM)是可运行Java代码的假想计算机。只要根据JVM规格描述将解释器移植到特定的计算机上,就能保证经过编译的任何Java代码能够在该系统上运行。这些特性决定了java虚拟机的平台无关性。
[0017] (2)java平台系统的效率优化以及移植的实现
[0018] 一般的数字家庭中间件系统没有针对嵌入式系统进行有效优化,导致Java的运行效率不高,造成大量的Java应用无法移植到嵌入式系统,其次基于嵌入式系统的Java计算模式不完善,使得嵌入式系统Java计算形式单一,制约了Java在嵌入式系统的应用。
[0019] Java TV API是基于Personal Java应用环境的应用程序接口,是Java平台面向MHP终端的扩展,它提供了对MHP终端特有功能的控制,包括对业务信息数据库访问、业务选择、TV上的媒体播放器控制等。Java TVAPI是针对终端媒体及接收功能的,不包括其他电子设备共有的API。由于Java TVAPI是独立于硬件和物理线缆传输协议的更抽象的高层协议,因此也可以在一些现存的标准中使用。从整体上讲,Java体系由于语言特点、运行系统、计算模式、平台版本上的独到之处,使之成为应用程序开发的重要的、优秀的工具。
[0020] 1)业务和业务选择
[0021] 业务是指呈现在终端上的各种元素,是可选择的。业务信息(Service Information,SI)表达的是关于视音频数据流的内容的信息。现在使用的SI具有多种不同的标准。在MHP终端的Java TV API中,由于底层的透明性,各种格式的SI可以通用于所有的应用。SI对象模型为应用提供该库的多视图。通过制定一个特定的视图,应用可以仅涉及到SI库的一部分。SI库的视图包括工具(Utility)、导航(Navigation)、指南(Guide)和传输(Transport)。工具视图提供对一般对象和辅助对象(事件和异常等)实例化的手段。导航视图提供的对象用于在业务中导航。指南视图表达与EPG相关的对象。
[0022] 业务选择API支持应用以简单高级的方式控制业务的呈现,而不需了解业务的内部细节。它将多个繁琐的操作封装在简单的方法调用中。业务呈现环境用Service Context来表达,其中的选择方法可以用来呈现一个业务。该选择是异步的,操作的完成通过事件来通知,失败时报异常。终端可以对支持的Service Context类实例数目进行限制。
[0023] 先分配调整栈指针WPTR为前3个参数和局部变量分配保存的临时空间,并保存。接下来,就需要构造一个ST20的调用栈,使得它能够调用本地方法,并且顺利返回。这需要根据Java函数的属性得知其Java参数的个数大小,将Java参数依次弹出Java栈,同时按照ST20C的传参格式压到栈中,同时保证前3个参数是存放在3个寄存器中,完成参数传递后,由本地函数的指针地址调用该函数。如果Java方法有返回值,就将存放在Areg中的返回值存入Java栈顶,这样就完成是Java本地调用。最后为了使本函数正常返回,还需要调整ST20的栈指针到调用前的位置
[0024] 2)文件系统操作的修改
[0025] Java系统包含许多类,其中一些基本的核心类的字节码文件都已经静态编译连接进执行代码中,但是仍然还有许多类需要在运行时,根据类名由不同的类加载器(Class Loader)动态调入字节码,然后分析加载类的各个成员,之后才可以访问,引用类。
[0026] ①本地方法的调用移植
[0027] Java规范中规定了Java虚拟机的5大特性,指令系统,寄存器,栈,方法储存区等。但是仅仅有这几部分,一个Java内核是只能做最基本的运算,程序跳转,调用等功能,它根本不能做最基本的字符打印输出,文件访问等与硬件相关的功能,也不能完成复杂图形绘制,电视节目解析播放等多媒体功能,也不能做任何与平台硬件有关的任务。这一方面也是Java规范所希望的“一次编译,可到处运行”的可移植性。
[0028] 为了能在保持Java虚拟机的独立性同时扩充虚拟机的功能,Java规范引入了Java本地接口JNI的技术。在Java语言中,一个类class可以包含一种特殊的函数方法method,它是受native关键字修饰的。这一类函数是没有具体的实现体的。同时,它与虚函数也不同,调用虚函数在编译和执行时,会静态、动态绑定调用一个子类的同名函数,虚函数的执行的代码最终还是某个之类的Java代码。而native method是与之不同的一类方法,编译器不需要对它做任何函数绑定,它只需要将这个函数的属性标明为native,让解释器动态执行的时候去选择一个对应的本地方法来执行。
[0029] 这个机制使得Java能够访问一些硬件相关的功能,而且这使得同一个Java程序可以在不同的硬件平台上执行,尽管调用的是同一个native method,但是解释器在执行的时候,会根据自己的硬件特性,选择执行具体的本地功能。这也是为什么Java程序编译后的字节码流,可以在不同的平台上勿须重编译就可以运行,而且得到基本相同的结果。这些都依赖与不同平台上Java本地接口的实现的配合。因此,Java本地接口也是Java虚拟机移植过程中的重要的一个环节。
[0030] 可以看出为了访问硬件相关的功能,就必须实现对应的native方法来完成调用。在解释器的实现中,每当发现调用一个类的方法是native类型时,就会通过一个枢纽去查找该虚拟机解释器对应的本地实现的方法。去取出函数的参数,用本地程序调用它,然后将返回值填入指定的位置,使得Java程序能够顺序获得本地方法的执行结果。当解释器准备执行Java调用函数指令的时候时,如果检查发现所调用的函数是native类型,就会由该函数的字符串标识查找对应的本地函数(通常是C语言实现的)作为参数,然后调用CVMjniInvokeNative()枢纽代理函数,由它去调用真正的本地函数。之所以要通过这个代理函数调用真实的本地函数是因为Java的参数传递规则与ST20中C语言的参数传递规则不一样。Java函数调用会把所有的参数压入栈中,而且返回后,其返回值正好在栈顶,这与ST20C语言的规则不一样,所以在C语言中要先从Java栈顶中弹出Java的参数,然后调用本地函数,再把返回值压入Java栈顶。整体移植思路是:整个编译过程涉及到2个交叉编译环境。先是cygwin下为虚拟机编译java库类,其中部分还会转成c文件。再编译虚拟机代码。修改环境变量中编译器的路径和选用编译器的设定。
[0031] 对于虚拟机引擎中的64位的常量,需要定义相对应的(全局)结构变量表示。传常数参数与返回常数值的时候,均需要做相应的修改。
[0032] ②多线程的移植
[0033] Java虚拟机中,也有多线程的概念,有对应的Thread类。每个线程类的实例实现Runnable接口,也就是线程的执行体;同时每个线程实例也有基本的状态,需要有对应的方法函数来实现切换。Thread类中的本地接口yield(),sleep()等需要由本地函数实现。对于线程的初始化,我们可以用其他的函数的实现比较类似的功能。
[0034] ③数据类型的移植
[0035] Java指令中访问的几种数据类型有byte,char,integer,long,float,double等。在存储的时候,大部分都是占用的独立的一个32位的字,但是long,double这2种类型是
64位双字。由于32位的嵌入式cpu,它不支持64位的运算,而且提供的编译器,并没有像GCC那样提供了内建的64位数据类型和运算支持。对于long,double类型的算术、逻辑运算,就无法直接用现有的数据类型替换,因此对于64位整数需要重新定义其类型,并增加函数支持相应的运算。需要移植实现一个文件系统。经过分析Java虚拟机所需的文件系统接口,然后,利用开发包和调试器所提供的一套访问宿主机器文件系统的接口。可以参照嵌入式操作系统所提供的标准文件访问接口,来实现这些接口。需要说明的是,这个接口访问的文件,并不是存储在平台。
[0036] ④实时时间的支持
[0037] 在实时嵌入式系统中,Java解释引擎对时间的处理非常重要,直接影响到其任务调度和执行效率。Java虚拟机经常要调用CVMtimeMillis()来获取64位的时刻值。因此需要编写并优化。优化方案是通过代理,访问Windows宿主开发平台。在试验中,可以胜任文件系统的工作,但是实际应用中,应当在Flash上开发一个非易失性的存储系统。
[0038] ⑤内存管理、信号量、互斥量的移植
[0039] 在Java的实现代码中,有许多需要动态分配、释放内存的地方。代码中调用的是标准C函数malloc,free函数。在一般系统中,也有相似的动态内存管理函数。在配置文件中,新分配独立的1M字节的内存区域,给Java专用。在sections.c中定义全局变量,创建独立的Java内存分区,将原来代码中的内存分配调用的地方修改。
[0040] 本发明所述的基于Java虚拟机的按层次划分的数字家庭中间件系统,能使现有已经开发出的应用能够直接应用于数字家庭中间件系统的服务需求,减少应用的重复性开发,减少人力开销。合理的层次划分使中间件系统的可扩展性强,能满足不同层次不同需求的人群的需要。
[0041] 本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
[0042] 以上对本发明实施例所提供的一种基于数字医疗的数字家庭中间件系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈