专利名称:信息提供系统的利记博彩app
技术领域:
本发明涉及提供各种信息服务的信息提供系统。
背景技术:
现有的信息提供系统由如导航服务的基本功能模块、如在Java(登录商标,以下相同)假象设备(JavaVM(Virtual Machine))上运作的Java应用的扩充功能模块构成,由于该基本功能模块以及扩充功能模块具有与对方侧通信的接口,因此,能够使得该基本功能模块和扩充功能模块互相联合地运作。(例如,参照专利文献1)专利文献1特开2002-318702号公报(段号 ,图2)因为现有的信息提供系统如上所述那样构成,所以能使基本功能模块与Java应用相联合地运作。但是,由于不存在管理Java应用动作的模块,一旦在Java假象设备上组入同时运作的多个Java应用,则就有多个Java应用相争系统资源的问题。
发明内容
该发明是为了解决上述问题,其目的在于,提供不会引起资源的相争、能使多个服务应用同时运作的信息提供系统。
该发明的信息提供系统是使得在扩充功能模块上同时运作的应用管理模块管理多个服务应用的动作。
图1是表示该发明的实施方式1的信息提供系统的硬件结构图。
图2是表示该发明的实施方式1的信息提供系统的软件结构图。
图3是表示该发明的实施方式2的信息提供系统的软件结构图。
图4是表示该发明的实施方式2的信息提供系统的软件结构图。
图5是表示Java应用的追加处理的流程图。
图6是表示应用管理表的一例的说明图。
图7是表示追加应用列表的一例的说明图。
图8是表示Java应用的删除处理的流程图。
图9是表示菜单画面的一例的说明图。
图10是表示Java应用的启动处理的流程图。
图11是表示应用管理模块的输入管理处理的流程图。
图12是表示应用管理模块的输入管理处理的流程图。
图13是表示模块分割画面的一例的说明图。
图14是表示Java应用分割画面的一例的说明图。
图15是表示应用管理模块的输出管理处理的流程图。
图16是表示应用管理模块的输出管理处理的流程图。
图17是表示分割表示时的画面输出表示区域的管理信息的说明图。
图18是表示分割表示时的Java应用画面输出表示区域的管理信息的说明图。
图19是表示应用管理模块的输入管理处理的流程图。
图20是表示应用管理模块的输出管理处理的流程图。
图21是表示该发明的实施方式3的信息提供系统的软件结构图。
图22是表示该发明的实施方式4的信息提供系统的软件结构图。
图23是表示Java应用启动命令的追加处理的流程图。
图24是表示命令识别处理的流程图。
图25是表示存储容量不足时的应用停止处理的流程图。
图26是表示JavaVM的自动更新处理的流程图。
图27是表示应用管理模块的自动更新处理的流程图。
1 ROM2 外部存储媒体
3 外部存储装置驱动器4 外部存储装置I/F5 外围设备6 外围设备I/F7 使用者操作部8 操作部I/F9 CPU10 RAM11 图形控制电路12 显示器21 H/W22 设备驱动器23 OS24 基本功能模块25 导航服务器26 JavaVMI/F模块27 扩充功能模块28,29 Java应用(服务应用)30 JavaVM31 应用管理模块接口模块31a 导航服务接口模块32 应用管理模块33 JavaVMI/F模块34 应用管理模块41 LinuxOS42,43 Linux应用44 应用管理模块45 LinuxI/F模块51 声音识别设备模块
52 JavaVMI/F模块53 声音识别设备模块接口模块具体实施方式
以下,说明该发明的一实施方式。
实施方式1图1是表示该发明的实施方式1的信息提供系统的硬件结构图,在图1中,ROM1记录有基本功能模块以及扩充功能模块的程序。外部存储媒体2由如DVD-ROM、CD-ROM、硬盘构成,存储地图数据库及扩充车载服务应用。外部存储驱动器3从外部存储媒体2中读出例如地图数据并且通过外部存储装置I/F向CPU9输出该地图数据。
外围设备5是如GPS接收器、旋转器、车速脉冲感应器、喇叭、手机等,例如,通过如外围设备I/F(接口)6向CPU9输出GPS信号。
使用者操作部7是如遥控器、各种开关、触摸屏等,例如,通过操作部I/F8向CPU9输出操作信号。CPU9按照从使用者操作部7输出的操作信号,一边参照如地图数据、GPS信号,一边实行基本功能模块以及扩充功能模块的程序。在RAM10中暂时存放CPU9实行程序时使用的数据等。
图形控制电路11按照从CPU9输出的描绘命令在显示器12上描绘图像。
图2是表示该发明的实施方式1的信息提供系统的软件结构图,在图中,H/W21相当于图1的信息提供系统的硬件。设备驱动器22控制H/W21的各处理部(例如,CPU9、外部存储装置驱动器3)。OS23在用设备驱动器22控制H/W21的各处理部的同时,提供基本功能模块24及扩充功能模块27的动作环境并实行程序。
基本功能模块24作为基本的车载信息服务器,由提供如车辆的当前位置及设施信息的导航服务器25构成。在导航服务器25与Java应用28、29相联合时,Java模块26实施与JavaVM30内的应用管理模块接口模块31的通信。
一旦组入用Java语言编程的服务应用即Java28,29,扩充功能模块27就与基本功能模块24相联合,并且同时由使Java28,19启动的Java假象设备(JavaVM)30构成。这里的JavaVM30是由Sun Microsystems定义的满足CDC(Connected Device Configuration,连接设备配置)以及FP(FoundationProfile)的Java假象设备,由Java应用28,29作为JavaVM30的操作过程内线程的运作而得以实现。
Java应用28是例如预报天气的服务应用,Java应用29是例如占卜运气的服务应用。
应用管理模块32作为基本功能模块24的子模块被装载,具有与JavaVM30内的应用管理模块接口模块31进行通信的JavaVMI/F模块33。应用管理模块34作为组入于扩充功能模块27中的Java应用之一被装载。还有,分散并配置于基本功能模块24和扩充功能模块27的应用管理模块32,34互相联合地管理Java应用28,29的动作。
应用管理模块32,34具有如下的管理功能。
(1)Java应用的登录(追加)/删除/更新(2)Java应用的启动/停止/状态管理(3)Java应用的输入管理(4)Java应用的画面输出管理其次对动作作说明。
(1)关于Java应用的追加/删除/更新Java应用的追加/删除/更新是由安装于扩充功能模块27的应用管理模块34来进行。图5是表示Java应用的追加处理的流程图。
首先,应用管理模块34进行内藏的应用管理表的初始化(步骤ST1)。
这里,应用管理表如图6所示是记载有组入于信息提供系统中的Java应用的名称、Java应用分类名、安装Java应用分类的RAM10的地址(Java应用分类的指针)的表。在该实施方式1中,为了便于说明,各Java应用分类的存储尺寸为一定的尺寸,而也可以是不定的尺寸。
其次,应用管理模块34从外部存储媒体2中读出记载于预先设定的追加应用列表(参照图7)的Java应用(Java应用分类)(步骤ST2),为了在H/W21上的RAM10中配置该Java应用分类,对JavaVM30进行要求(步骤ST3)。
由此,JavaVM30在H/W21上的RAM10中配置Java应用分类,向应用管理模块34返回该Java应用分类的RAM地址(指针)。
这里,追加应用列表如图7所示是记述有Java应用的名称、Java应用分类名、和表示存放有Java应用分类的场所的目录名的表,应用管理模块34通过参照追加应用列表,掌握追加的Java应用的存放场所。
应用管理模块34一旦从JavaVm30中取得Java应用分类的RAM地址(指针),则通过在应用管理表中追加记述该Java应用的应用名称、Java应用分类名、和Java应用分类的RAM地址(指针),就能更新应用管理表(步骤ST4)。
还有,关于应用管理表的更新方法是由通过在应用管理表的最后的行上进行逐次追加记述而得以实现。即,参照追加应用列表,判断是否有要进一步追加的Java应用(步骤ST5),在有进一步追加的Java应用的情况下,返回步骤ST2的Java应用读出处理并反复进行处理,在没有追加的Java应用的情况下,结束追加处理。
还有,在上述说明中,虽然把追加的Java应用作为记载于预先设定的追加应用列表的Java应用,也可以从外部存储媒体2中检索Java应用分类,灵活地作成追加应用列表并实行追加处理。
图8是表示Java应用的删除处理的流程图。
应用管理模块34由于取得删除对象的Java应用的指定,在显示器12上表示如图9所示的菜单画面。
信息提供系统的使用者从表示于菜单画面的Java应用中,指定删除对象的Java应用。例如,使用作为使用者操作部7的触摸屏并指定删除对象的Java应用(步骤ST11)。在图9的例中,作为删除对象的Java应用指定“Java应用1”。
应用管理模块34一旦从使用者操作部7的操作内容中识别删除对象的Java应用,就从应用管理表中检索对应于删除对象的Java应用(Java应用名称)的Java应用分类名(步骤ST12),为了删除该Java应用分类,对JavaVM30进行要求(步骤ST13)。
由此,JavaVM30从应用管理表中删除记述有删除对象的Java应用的行,实行把已删除行的下行往上靠的处理,结束删除处理(步骤ST14)。
在实施方式1中,展示了关于使用者指定删除对象的Java应用的这一情况,也可以是其他的Java应用指定删除对象的Java应用。又,也可以是基本功能模块24的导航服务器25指定删除对象的Java应用。作为指定方法有指定Java应用名称的方法、指定Java应用分类名的方法。
Java应用的更新处理实行如下。
应用管理模块34一旦与删除对象的Java应用同样地指定更新对象的Java应用,就与删除对象的Java应用同样地删除更新对象的Java应用。
然后,应用管理模块34从外部存储媒体2中检索更新对象的Java应用,利用用上述方法来追加该Java应用以完成更新处理。
还有,在这里,虽然是从外部存储媒体2中检索更新对象的Java应用,也可以是使用作为外围设备5的手机,从例如网络上的服务器装置等下载更新对象的Java应用而进行追加。而且,也可以检索ROM上记录的Java应用并进行追加。
(2)关于Java应用的启动/停止/状态管理Java应用的启动/停止/状态管理是由配置于扩充功能模块27的应用管理模块34调用各Java应用的方法(函数,以下相同)而得以实现的。图10是表示Java应用的启动处理的流程图。
一旦与删除对象的Java应用同样地指定启动对象的Java应用(步骤ST21),应用管理模块34就从应用管理表中检索启动对象的Java应用的Java应用分类名、Java应用分类的RAM地址(指针)(步骤ST22)。
其次,应用管理模块34从记述于Java应用分类的首部的Java分类信息中,读出来自与配置作为各Java应用的开始程序定义的start方法的RAM地址对应的开始地址中的偏移值(步骤ST23),为了从该start方法的RAM地址中实行Java程序,依赖JavaVM30,结束Java应用的启动处理。
在这里,虽然是从Java应用分类信息中读出start方法的RAM地址,也可以在有一定的偏移值的地址中配置start方法。
虽然上述的说明是Java应用的启动方法,基本上,通过调用作为服务应用的Java应用的方法,用同样的方法也能够实现Java应用的停止(定义为stop方法)、Java应用的状态管理(定义为isAlive方法)。
还有,Java应用的isAlive方法向应用管理模块34返回表示Java应用是否正在正常地运作的信息。
(3)关于Java应用的输入管理对于信息提供系统的使用者的输入,因为有对于导航服务器25等的基本功能模块24的输入和对于Java应用28,29等的扩充功能模块27的输入,输入管理处理是应用管理模块32,34双方联合地进行。
首先,对配置于基本功能模块24中的应用管理模块32的输入管理处理作说明。图11是表示应用管理模块32的输入管理处理的流程图。
但是,在这里,图1中的使用者操作部7是触摸屏,在操作部I/F8中把使用者接触触摸屏的位置的坐标传递给CPU9(关于触摸屏的处理,因为与作为公知技术的附有触摸屏功能的车导航的触摸屏的动作相同,所以省略其说明)。
首先,应用管理模块32通过设备驱动器22以及OS23,接收由操作部I/F8传递给CPU9的坐标(步骤ST31)。
其次,应用管理模块32判断当前正在输出画面的模块是导航服务器25等的基本功能模块24、还是Java应用28,29等的扩充功能模块27(步骤ST32)。关于画面输出管理方法在以后进行说明。
假设,正在输出画面的模块是导航服务器25的话,把该接收到的坐标提供给导航服务器25(步骤ST33)。
另外,如正在输出画面的模块是Java应用28,29等的扩充功能模块27的话,利用JavaVMI/F模块33以及应用管理模块接口模块31,将该接收到的坐标发送给应用管理模块34(步骤ST34)。
以后,应用管理模块32返回到坐标的接收处理(步骤ST31)。
其次,对配置于扩充功能模块27的应用管理模块34的输入管理处理作说明。图12是表示应用管理模块34的输入管理处理的流程图。
应用管理模块34一旦从基本功能模块24的应用管理模块32中接收到所发送的坐标时(步骤ST41),就检索当前画面表示的Java应用(步骤ST42)。
例如,当前画面表示的Java应用是Java应用28的话,把该接收到的坐标提供给Java应用28(步骤ST43)。关于Java应用28的坐标的发送处理,可采用Java程序的事件处理而得以实现。
以后,应用管理模块34返回到从应用管理模块32发送的坐标的接收处理。
在上述说明中,表示了画面输出的是基本功能模块24或者扩充功能模块27的其中之一的情况,然而,也可以如图13所示,基本功能模块24的导航服务器25和扩充功能模块27的Java应用28等同时地进行画面输出。关于画面管理方法在以后进行说明。
在该情况下,可以根据坐标来改变发送对象的模块。又,在扩充功能模块27侧也同样地,不只是仅单一的Java应用进行画面显示,也可以多个Java应用同时地进行画面显示(参照图14)。
又,在上述说明中,虽然只表示了将输入的触摸屏的坐标先提供给配置于基本功能模块24中的应用管理模块32的情况,相反,也可以是先提供给配置于扩充功能模块27中的应用管理模块34。
又,在上述说明中,虽然作为使用者操作部7采用触摸屏,然而,同样地也可以采用作为当前的车导航的使用者操作部7的经常被利用的操纵杆(在画面输出中,用辉亮部分表示正成为输出对象是哪个模块)。
(4)Java应用的画面输出管理关于服务应用的画面输出,由于从基本功能模块24和扩充功能模块27两者进行画面输出,因此,与输入管理相同地,输出管理处理是应用管理模块32,34的双方联合地进行的。
还有,关于画面输出处理,由于基本功能模块24、扩充功能模块27的各模块通过OS23以及设备驱动器22控制H/W21的图形控制电路11,因此能够进行画面输出。
首先,对配置于基本功能模块24的应用管理模块32的画面输出管理作说明。图15是表示应用管理模块32的输出管理处理的流程图。
应用管理模块32管理正在进行画面输出的是导航服务器25等的基本功能模块24、还是Java应用28,29等的扩充功能模块27。
应用管理模块32在默认阶段(default)(信息提供系统启动之后)中,使基本功能模块24的导航服务器25的画面输出有效。
然后,扩充功能模块27的JavaVM30一旦从Java应用28,29中取得画面输出要求,则扩充功能模块27的应用管理模块34就向基本功能模块24的应用管理模块32发行画面输出许可要求。
基本功能模块24的应用管理模块32一旦从扩充功能模块27中接收到画面输出许可要求(步骤ST51),则就对导航服务器25输出画面输出变更许可询问(步骤ST52)。
基板功能模块24的应用管理模块32一旦从导航服务器25中取得不许可画面输出变更的响应(步骤ST53),就向扩充功能模块27的应用管理模块34发送画面输出变更否决通知(步骤ST54)。
基本功能模块24的应用管理模块32一旦从导航服务器25中取得许可画面输出变更的响应(步骤ST53),就向扩充功能模块27的应用管理模块34发送画面输出变更许可通知(步骤ST55)。
基本功能模块24的应用管理模块32一旦发送画面输出变更许可通知,就改变当前画面输出模块信息(管理当前是哪个模块进行画面输出的信息)(步骤ST56)。即,把当前画面输出模块信息从基本功能模块24的导航服务器25向扩充功能模块27的JavaVM30变更。
还有,扩充功能模块27的应用管理模块34在应用管理模块34本身进行画面输出的情况下,只在从基本功能模块24的应用管理模块32接收到画面输出变更许可通知时对OS23进行画面输出处理。
相反,在扩充功能模块27的JavaVM30正在进行画面输出的情况下,如希望基本功能模块24的导航服务器25画面输出的情况下,通过与上述相同的处理也可进行画面输出变更。
其次,对配置于扩充功能模块27中的应用管理模块34的输出管理处理作说明。图16是表示应用管理模块24的输出管理处理的流程图。
但是,关于基本功能模块24的画面输出切换,为了如上说明,在这里,对于扩充功能模块27的应用管理模块34对正在同时动作的多个Java应用28,29中的哪个Java应用正在进行画面输出的管理处理作说明。
正在同时动作的多个Java应用28,29中,例如,当Java应用28希望进行画面输出时,Java应用28向应用管理模块34发行画面输出要求(步骤ST61)。
扩充功能模块27的应用管理模块34,在JavaVM30没有正在进行画面输出的情况下,即,在基本功能模块24的导航服务器25正在进行画面输出的情况下(步骤ST62),如上所述,为了在扩充功能模块27侧能够进行画面输出,向基本功能模块24的应用管理模块32发送画面输出许可要求(步骤ST63)。
由此,扩充功能模块27的应用管理模块34一旦从基本功能模块24的应用管理模块32中取得画面输出变更许可通知(步骤ST64),就对发行画面输出要求的Java应用28输出画面输出许可通知(步骤ST67)。
扩充功能模块27的应用管理模块34,在当前JavaVM30正在进行画面输出的情况下(步骤ST62),参照画面输出Java应用信息(表示当前哪个Java应用正在进行画面输出的信息(用Java(登录商标,以下相同)应用名称管理)),确定当前正在进行画面输出的Java应用。在这里,便于说明,把Java应用29作为当前正在进行画面输出的Java应用。
扩充功能模块27的应用管理模块34对于当前正在进行画面输出的Java应用29询问是否可以将画面输出变更到其他的Java应用(步骤ST65)。
扩充功能模块27的应用管理模块34一旦从当前正在进行画面输出的Java应用29中取得许可画面输出变更的响应(步骤ST66),就对发行画面输出要求的Java应用28输出画面输出许可通知(步骤ST67)。
另一方面,一旦从当前正在进行画面输出的Java应用29中取得不许可画面输出变更的响应(步骤ST66),就对发行画面输出要求的Java应用28输出画面输出否决通知(步骤68)。
还有,在上述说明中,在Java应用间变更进行画面输出的Java应用的情况下,虽然向当前正在进行画面输出的Java应用询问变更许可,也可以不询问而强制地进行切换。又,在Java应用中持有优先权(优先度),通过在应用管理表中加入优先权,也可以优先优先度高的Java应用的画面输出要求。
如以上的说明可知,根据实施方式1,在扩充功能模块27上组入同时动作的多个Java应用28,29的情况下,构造上由应用管理模块32,34管理多个Java应用28,29的动作,所以不会引起信息提供系统的资源竞争,起到能同时使多个Java应用28,29动作的效果。
因此,多个Java应用28,29相联合地启动/停止成为可能,提高扩充车载信息服务的价值。例如,能够容易地实现在启动游戏之前使得显示表示销售服务等广告的宣传应用。
又,根据该实施方式1,构成为应用管理模块32,34能够实施对于扩充功能模块27的Java应用的追加处理、删除处理以及更新处理,因此,能够不重复同一Java应用而组入到信息提供系统中,起到可避免多余的资源(RAM容量或者磁盘容量)的使用的效果。
又,根据该实施方式1,构成为应用管理模块32,34当从基本功能模块24的导航服务器25或者Java应用28,29中取得画面输出要求,则向对应于该画面输出要求的基本功能模块24的导航服务器25或者Java应用28,29提供画面输出许可,在多个Java应用28,29进行画面输出的情况下,起到能够实现所望Java应用的画面输出的效果。
进一步,根据该实施方式1,构成为应用管理模块32,34按照由使用者给出的输入信息管理多个Java应用28,29的动作,在多个Java应用28,29正在动作时,也起到能够对于使用者所望的Java应用进行输入的效果。
还有,根据该实施方式1,在基本功能模块24或者扩充功能模块27显示全部画面的情况之外,也表示在基本功能模块24和扩充功能模块27之间进行画面分割的情况(参照图13),在该情况下,从扩充功能模块27的应用管理模块34中发行画面分割要求,与上述处理同样地,可以根据许可/否决来变更处理(导航服务器25为能够进行分割表示)。
又,作为分割表示时的相互表示区域,如图17所示只要管理左上和右下的坐标,在上述的输入管理处理中就能区别触摸屏的接触位置是对于哪个模块的输入。
又,如上所述,在扩充功能模块27的JavaVM30侧也可进行分割画面表示(参照图14),该处理因相同于上述的基本功能模块24的处理,故省略其说明。还有,为了在Java应用侧从触摸屏的接触位置中判别是对于哪个Java应用的输入,管理如图18所示的画面输出Java应用信息。
实施方式2在上述实施方式1中,虽然在基本侧·扩充侧的双方都有(3)的输入管理以及(4)的画面输出管理,也可以在基本功能模块24侧设置所有功能。在该情况下,意味着在扩充功能模块27上运作的Java应用28,29与导航服务器25相同地由基本功能模块24的应用管理模块32来管理(参照图19以及图20)。但是,在图20中,步骤ST71意味着基本功能模块24的应用管理模块32中的画面输出要求的接收处理,步骤ST72意味着应用管理模块32中的画面输出要求元的判断处理。而且,步骤ST73意味着对于导航服务器25的许可通知处理,步骤ST74意味着对于导航服务器25的否决通知处理。
相反,关于(3)的输入管理以及(4)的画面输出管理,也可以在扩充功能模块27侧实行全部处理。在该情况下,导航服务器25与Java应用28,29相同(与Java应用同列),意味着由扩充功能模块27的应用管理模块34来管理。
进一步,关于(1)的登录处理等以及(2)的启动处理等,也可以由基本功能模块24的应用管理模块32来管理全部处理(可以在各接口模块配置追加·删除·启动·停止·状态管理所必要的I/F)。在该情况下,基本功能模块24的应用管理模块32实行全部的应用管理,软件结构如图3所示。
由此,若能够使得基本功能模块24比扩充功能模块27更优先动作,则由于优先运作的基本功能模块24管理Java应用28,29,因此,就能起到加快Java应用28,29的启动/停止的效果。
相反,也可以由扩充功能模块27的应用管理模块34来管理全部的处理等。在该情况下,扩充功能模块27的应用管理模块34实行全部的应用管理,软件结构如图4所示。
由此,因为管理应用管理的扩充功能模块27的应用管理模块34管理Java应用28,29,能够起到省去基本功能模块24与扩充功能模块27之间的通信的效果。
实施方式3在上述实施方式1中,表示了扩充功能模块27由启动Java应用28,29的JavaVM30构成的情况,但不只限于该结构,例如,如图21所示,在OS23上装载有LinuxOS41,通过LinuxOS41作为过程动作,由此能够起到与JavaVM30相同的功能。在该情况下,Linux应用42,43相当于服务应用,应用管理模块44管理Linux应用42,43的动作。又,LinuxI/F模块45进行与应用管理模块接口模块31的通信。
实施方式4在上述实施方式1中,虽然表示了使用者操作部7是触摸屏或操纵杆等的设备的情况,也可以使用者操作部7备有话筒,使用者操作部I/F8把通过话筒输入的使用者的声音变换为规定的声音输入命令的声音识别设备。
还有,硬件结构除话筒以外,与上述实施方式1的相同。
图22是该发明的实施方式4的信息提供系统的软件结构图,在图中,与图2同一记号是表示相同或者相当部分,省略其说明。
声音识别设备模块51作为基本功能模块运作,识别使用者的声音。JavaVMI/F模块52在声音识别设备模块51与Java应用28,29相联合时,实行与JavaVM30内的声音识别设备模块接口模块53的通信。
其次对动作作说明。
该实施方式2的声音识别设备模块51对于在初始值设定中登录的声音识别命令,能够追加·删除命令。还有,关于声音识别设备模块51本身的动作,因为可以采用与现有的车导航系统中的声音识别设备相同的处理,所以省略其说明。还有,关于命令的追加·删除,在现有的系统中,导航服务器25在数据库登录·删除登录地点时,因为与追加·删除登录地点命令的情况相同,所以省略其说明。
在这里,对下述的2个声音识别设备的控制作说明。
(1)Java应用追加时的Java应用启动命令的追加(2)Java应用启动时的Java应用内使用的声音识别命令的追加。
(1)关于Java应用启动命令的追加图23是表示Java应用启动命令的追加处理的流程图,图24是表示命令识别处理的流程图。
首先,扩充功能模块27的应用管理模块34在上述实施方式1中的Java应用的追加处理中,在读出Java应用时(图5的步骤ST2),作为读出对象的Java应用的附加信息,同时也读出应用启动命令信息(例如,读出对象的Java应用若是进行预报天气的,则写有“テンキヨホウ”那样的假名的信息)(步骤ST81),通过声音识别设备模块接口模块53和JavaVMI/F模块52,把向RAM10的展开处理时读出的应用启动命令信息和应用启动命令ID(表示是应用管理表的哪一行应用的信息)发送到基本功能模块24的声音识别设备模块51中(步骤ST82)。
声音识别设备模块51一旦从应用管理模块34接收到应用启动命令信息和应用启动命令ID(步骤ST83)时,就向声音识别数据库登录表示是该应用启动命令和应用启动命令ID和Java应用的启动命令的识别插塞(例如,如JAVA_CMD的字符串)。
在是登录有使用者对着话筒讲话的声音命令的命令的情况中(步骤ST91,ST92),声音识别设备模块51通过接口模块,向扩充功能模块27的应用管理模块34发送应用启动命令ID和识别插塞(步骤ST93)。还有,在声音命令不是由扩充功能模块的应用管理模块34登录的命令的情况下,向导航服务器25发送该识别结果(步骤ST94)。
扩充功能模块27的应用管理模块34在判断该识别插塞是应用启动命令的基础上,用与上述实施方式1相同的方法启动对应于接收的应用启动命令ID的Java应用。
还有,在删除Java应用的情况下,扩充功能模块27的应用管理模块34对于声音识别设备模块51,通过接口模块向声音识别设备模块51发送应用启动命令和应用启动ID的删除请求,由声音识别设备模块51从声音识别数据库中删除启动命令而得以实现。
(2)关于声音识别命令的追加扩充功能模块27的应用管理模块34在上述实施方式1中的Java应用的画面管理中,在向Java应用发送画面输出许可时,实行读出Java应用所存有的应用声音命令信息(例如,若Java应用为进行预报天气的应用,则表示[オオサカ]和「ヒョウゴケンナンブ」的地名、「キョウ」和「アシタ」等日期时间的文字串)以及应用声音命令ID(用于指示声音命令文字列的ID)的处理。
扩充功能模块27的应用管理模块34通过接口模块,向声音识别设备模块发送该读出的应用声音命令信息、用于一个一个地识别该读出的应用声音命令的应用声音命令ID和表示登录的命令是应用声音命令的识别插塞(例如,JAVAAPL_CMD这样的文字列)。
声音识别设备模块51一旦接收应用声音命令信息和应用声音命令ID和识别插塞,就向声音识别数据库登录该信息。
在使用者对着话筒讲话的声音命令是由扩充功能模块27的应用管理模块34登录的命令的情况下,声音识别设备模块51通过接口模块向扩充功能模块27的应用管理模块34发送识别插塞和声音命令ID。
扩充功能模块27的应用管理模块34在判别从声音识别设备模块51中发送的识别插塞是应用声音命令之后,向正在进行画面输出的Java应用发送该接收到的声音命令ID。然后,Java应用进行对应于接收到的声音命令ID的处理。
还有,在Java应用停止画面输出或者向其他的Java应用变更画面输出的情况下,为了消除登录的全部的应用声音命令,通知声音识别设备模块51,该声音识别设备模块51从声音识别数据库中消除声音命令。
在上述说明中,虽然表示进行画面输出的Java应用是1个的情况,然而,在2个以上的Java应用同时进行画面显示的情况下,将向读出的应用声音命令ID增加了表示位于应用管理表的哪一行的应用ID(与上述的应用启动命令ID相同)的ID作为命令ID(例如,在声音命令是0x0002(2字节数据),应用ID是0x0002(2字节数据)情况下,可以为如0x00020001的4字节数据),则在同时表示的Java应用中能够区别是对于哪个Java应用的声音识别命令。
还有,也可以由基本功能模块24的应用管理模块32中上述的启动命令追加处理以及声音识别命令追加处理。
如上上述,根据该实施方式4,构成为应用管理模块34利用识别使用者声音的声音识别设备模块51,以接收Java应用使用的声音输入命令的登录,因此,使用者只要发出声音就能起到操作Java应用的效果。
实施方式5由于多个Java应用28,29同时运作,在用有限的存储资源运作的信息提供系统中,可能造成存储容量的不足。因此,在应用管理模块34中,Java应用28,29管理使用的存储资源,一旦发生存储容量不足,实行让任意的Java应用停止等的控制。
具体如下,图25是表示存储容量不足时的Java应用停止处理的流程图。
但是,硬件结构以及软件结构与上述实施方式1相同。又,JavaVM30确保启动时的规定量的存储资源,对应于从Java应用输出的分类生成等的要求,作为存储使用量信息具有JavaVM30正在使用的总的存储资源。
又,作为为了从扩充功能模块27的应用管理模块34获得JavaVM30确保的存储资源的空容量的API,准备getFreeMemory这样的函数,JavaVM30对于调用该函数的Java应用,实行从启动时确保的存储资源中减去正在使用的总的存储资源后的值的处理。
首先,扩充功能模块27的应用管理模块34每一规定时间(例如,每隔1分钟),调用上述函数,获得存储资源的空容量信息(步骤ST101,ST102)。
扩充功能模块27的应用管理模块34一旦获得存储资源的空容量信息,则判断存储资源的空容量是否在规定的存储容量以下(步骤ST103),存储资源的空容量是在规定的存储容量以下的情况下,用与上述实施方式1相同的方法使得任意的Java应用停止,可避免存储容量不足(步骤ST104)。
如上所述可知,根据该实施方式5,由于构成为应用管理模块34考虑到能够使用的资源并且管理多个Java应用28,29的动,因此,能够起到使得信息提供系统的动作稳定效果。
在上述说明中,虽然把JavaVM30确保的存储资源作为对象,然而,也可以把信息提供系统整体的存储资源(DRAM全部容量)作为对象。在该情况下,JavaVM30准备用于在OS23上获得与JavaVM30同样的存储资源的空容量的API,在从Java应用中调用JavaVM30的API时,JavaVM30通过上述API实现获得信息提供系统的空容量。
又,在上述说明中,虽然是停止了任意的Java应用,但是,也可以将启动Java应用的顺序作为信息进行存并停止最后启动的Java应用或者最初启动的Java应用。又,与上述实施方式1相同,也可以使Java应用持有优先度并且从优先度低的Java应用开始停止。
又,在上述说明中,如在规定的存储容量以下的话,停止Java应用,然而,也可以在存储容量有余量产生的情况下再启动被强制停止的Java应用。
进一步,在上述说明中,作为对象的信息提供系统的资源仅是存储资源,但是,也可以是对如硬盘驱动器那样的记录媒体的写入。在该情况下,在硬盘容量不足的情况下,也可以对于Java应用请求删除Java应用正在使用的文件。
还有,在该实施方式5中,展示了有关扩充功能模块27的应用管理模块34实行Java应用的停止处理的情况下,也可以通过基本功能模块24的应用管理模块32通过接口模块获得存储资源的空容量,实行Java应用的停止处理。
实施方式6在上述实施方式1中,通过应用管理模块32,34删除·追加各Java应用,进行Java应用的更新,也可以更新应用管理模块本身。
具体如下。图26是表示JavaVM的自动更新处理的流程图,图27时表示应用管理模块34的自动更新的流程图。
但是,硬件结构以及软件结构与上述实施方式1相同,在JavaVM30中,把Java应用的指针(DRAM地址)和读入目的(DVD-ROM等)作为自变量,准备自动更新用的API。在该API被调用的情况下,在使指定的指针的Java应用停止的同时,并从DRAM上删除(步骤ST111,ST112),又,从指定的读入目的读出Java应用,在DRAM上展开之后(步骤ST113),启动展开的Java应用(步骤ST114)。
扩充功能模块27的应用管理模块34当接收到管理模块更新要求(步骤ST121),就停止管理的全部Java应用(步骤ST122),在规定的场所记录应用管理表(步骤ST123)。
然后,用this变量由JavaVM30获得自己的指针(步骤ST124),向JavaVM30作为上述API的自变量发送该获得的自己的指针和规定的读入目的(步骤ST125)。
JavaVM30通过上述的处理步骤,更新应用管理模块34并自动启动。启动之后,应用管理模块34读出记录于规定的场所的应用管理表并开始应用管理处理。
由该实施方式6可知,由于构成为扩充功能模块27的JavaVM30更新应用管理模块34,能够起到很容易地扩充Java应用的管理方法的效果。
还有,在上述说明中,把更新的应用管理模块34的读入目的作为规定的读出目的,然而,也可以让使用者输入。又,与上述实施方式1同样地,读出目的不限于外部记录媒体2,也可以通过连接的手机等的网络连接设备下载设置于网络上的应用管理模块。
如上所述,根据该发明,由于构成为在扩充功能模块上同时运作的应用管理模块管理多个服务应用的动作,因此,不会引起信息提供系统资源的竞争并且能够起到使多个服务应用同时运作的效果。
权利要求
1.一种信息提供系统,具有提供基本信息服务的基本功能模块;当组入提供在上述基本功能模块中没有的扩充功能的服务应用时,能与上述基本功能模块相联合并同时使上述服务应用启动的扩充功能模块,其特征在于,装载有管理在上述扩充功能模块上同时动作的多个服务应用的动作的应用管理模块。
2.如权利要求1所述的信息提供系统,其特征在于,作为基本功能模块的子模块装载有应用管理模块。
3.如权利要求1所述的信息提供系统,其特征在于,作为组入于扩充功能模块的服务应用的一个装载有应用管理模块。
4.如权利要求3所述的信息提供系统,其特征在于,扩充功能模块更新应用管理模块。
5.如权利要求1所述的信息提供系统,其特征在于,在作为基本功能模块的子模块装载有应用管理模块的同时,作为组入于扩充功能模块的服务应用的一个装载有应用管理模块,双方的应用管理模块联合并管理多个服务应用的动作。
6.如权利要求1至5的任何一项所述的信息提供系统,其特征在于,应用管理模块实行对于扩充功能模块的服务应用的追加处理、删除处理以及更新处理。
7.如权利要求1至5的任何一项所述的信息提供系统,其特征在于,当从基本功能模块或服务应用接收画面输出要求时,应用管理模块对应于该画面输出要求向基本功能模块或服务应用提供画面输出许可。
8.如权利要求1至5的任何一项所述的信息提供系统,其特征在于,应用管理模块按照使用者提供的输入信息管理多个服务应用的动作。
9.如权利要求1至5的任何一项所述的信息提供系统,其特征在于,应用管理模块利用识别使用者声音的声音识别设备,接收服务应用使用的声音输入命令的登录。
10.如权利要求1至5的任何一项所述的信息提供系统,其特征在于,应用管理模块考虑能够使用的资源,管理多个服务应用的动作。
11.如权利要求1至5的任何一项所述的信息提供系统,其特征在于,应用管理模块考虑多个服务应用的优先度,管理多个服务应用的动作。
12.如权利要求1至5的任何一项所述的信息提供系统,其特征在于,应用管理模块考虑能够使用的资源与多个服务应用的优先度,管理多个服务应用动作。
全文摘要
以不会引起资源的竞争、得到能同时使多个服务应用运作的信息提供系统为目的。当组入在扩充功能模块(27)上同时动作的多个Java(登录商标,以下相同)应用(28,29)的情况下,应用管理模块(32,34)管理多个Java应用(28,29)的动作。因此,不会引起资源的竞争,能使多个Java应用(28,29)同时动作。
文档编号G06F9/445GK1581087SQ200410063650
公开日2005年2月16日 申请日期2004年7月9日 优先权日2003年7月11日
发明者河野篤, 梅津正春, 下谷光生, 金子和磨, 佐藤史尚, 浅井陽介, 上川哲生, 峯村治实 申请人:三菱电机株式会社