图像处理设备及其控制方法和存储介质与流程

文档序号:19730346发布日期:2020-01-18 03:52阅读:146来源:国知局
图像处理设备及其控制方法和存储介质与流程

本发明涉及图像处理设备及其控制方法和存储介质。



背景技术:

当设备的程序已被改变时(例如,当登录应用的程序已被改变时),如果该登录程序停止,则由于不再进行通过认证的限制,因此可以自由使用该设备。在这种情况下,当检测到程序的改变时,需要重新安装程序或者需要使用其它程序以便使用该设备。日本特开2015-69403公开了如下技术:在信息处理设备中,当检测到第二存储区域中保持的程序信息的改变时,基于第一存储区域中保持的程序信息来重新启动程序。这样,即使程序信息已被改变,也可以使用存储在其它存储区域中的预定程序,并且可以确保用户友好性。

然而,上述已知技术具有以下问题。例如,为了在程序信息被改变时启动其它存储区域中的程序,程序和程序信息需要保持在设备中所设置的第一存储区域和第二存储区域中的每一个中。然而,在具有有限容量的存储区域的低成本图像处理设备等中,从存储器资源的角度,难以预先将各程序和各程序信息保持在其它存储区域中以应对程序信息的改变。另一方面,如果在检测到程序的改变时重新安装程序,则用户需要进行繁琐的任务,这需要时间和精力。



技术实现要素:

本发明使得能够实现如下机制:当检测到预安装应用的改变时,可以通过使用设备中的信息适当地重写安装应用来使用该应用。

本发明的一个方面提供一种图像处理设备,包括:存储器装置,用于存储指令集;以及至少一个处理器,用于执行所述指令集以使得:检测所述图像处理设备中所保持的应用的改变;在检测到改变时,判断已经检测到改变的应用是否是预安装应用;以及在作为判断结果、已经检测到改变的应用是所述预安装应用的情况下,使得能够通过使用预先保持的信息安装所述应用来使用所述应用。

本发明的另一方面提供一种图像处理设备的控制方法,包括:检测所述图像处理设备中所保持的应用的改变;在所述检测中检测到改变时,判断已经检测到改变的应用是否是预安装应用;以及在作为所述判断的判断结果已经检测到改变的应用是所述预安装应用的情况下,使得能够通过使用预先保持的信息安装所述应用来使用所述应用。

本发明的又一方面提供一种非暂时性计算机可读存储介质,其存储用于使计算机执行图像处理设备的控制方法的步骤的计算机程序,所述控制方法包括:检测所述图像处理设备中所保持的应用的改变;在所述检测中检测到改变时,判断已经检测到改变的应用是否是预安装应用;以及在作为所述判断的判断结果已经检测到改变的应用是所述预安装应用的情况下,使得能够通过使用预先保持的信息安装所述应用来使用所述应用。

本发明的又一方面提供一种图像处理设备,包括:操作单元;存储单元:验证单元,用于验证所述图像处理设备中所保持的应用;以及控制单元,用于在所述验证单元检测到所述应用的改变并且用于安装所述应用的数据被保持在所述存储单元中的情况下,在无需接受用户通过所述操作单元给出的指令的状态下使用所述存储单元中所保持的用于安装的数据来安装所述应用。

根据以下参考附图对典型实施例的描述,本发明的其它特征将变得明显。

附图说明

图1是示出根据一个实施例的mfp的硬件配置的框图。

图2是示出根据一个实施例的mfp的软件配置的框图。

图3是示出根据一个实施例的扩展应用单元210的各应用的数据结构和摘要文件的数据结构的图。

图4是示出根据一个实施例的当启动设备时显示的主画面的示例的图。

图5是示出根据一个实施例的用于显示表示已经检测到通用应用的改变的消息的画面的示例的图。

图6是示出根据一个实施例的用于检测应用的改变的子例程处理的流程的流程图。

图7是示出根据一个实施例的当启动设备时的应用管理处理的流程的流程图。

图8是示出根据一个实施例的扩展应用单元210的程序的执行处理的流程的流程图。

具体实施方式

现在将参考附图来详细描述本发明的优选实施例。应当注意,除非另有具体说明,否则这些实施例中阐述的组件的相对布置、数值表达和数值不限制本发明的范围。注意,将描述多功能外围设备(数字mfp/mfp)作为根据实施例的图像处理设备的示例。然而,应用范围不限于mfp,并且可以应用本发明的设备仅需要包括图像处理功能。

第一实施例

图像读取设备的配置

在下文中,将参考附图来描述本发明的第一实施例。首先,将参考图1来描述本实施例中的mfp的硬件配置。

如图1所示,mfp10包括cpu101、rom102、ram103、显示控制器104、显示单元105、操作控制器106和操作单元107。此外,mfp10还包括emmc主控制器108、emmc109、读取控制器110、读取单元111、记录控制器112和记录单元113。此外,mfp10还包括usb主控制器114、调制解调器115、网络控制单元(ncu)116和网络接口卡(nic)117。

cpu101对连接到系统总线118的装置进行整体控制。cpu101在被供电时执行存储在rom102中的引导程序。通常,引导程序将保存在emmc109的特定区域中的主程序加载到ram103,并将指针设置在所加载的主程序的开头。ram103不仅用作加载主程序的位置,还用作主程序的工作区等。cpu101通过执行后面描述的图6至8中描述的控制程序,来控制图4和5中所示的画面显示之间的切换。

显示控制器104控制针对显示单元105的绘制。显示单元105是wvga尺寸的全位图lcd。另一方面,操作控制器106控制来自mfp10中所设置的操作单元107的输入。操作单元107包括层叠在显示单元105上的触摸面板。

读取单元111进行原稿的读取。读取单元111设置有自动文档给送器(省略图示)作为选项,并且可以在逐一输送原稿的多个薄片的同时自动读取薄片。读取单元111连接到读取控制器110,并且cpu101可以经由读取控制器110与读取单元111交换信息。

此外,记录单元113使用电子照相方法在记录薄片上形成图像。本实施例中的记录薄片包括在表面上要形成图像的薄片。记录单元113连接到记录控制器112,并且cpu101经由记录控制器112与记录单元113交换信息。

usb主控制器114进行usb协议控制,并且中介对诸如usb存储器等的usb装置(省略图示)的访问。调制解调器115进行传真通信所需的信号的调制/解调。此外,调制解调器115连接到ncu(网络控制单元)116。由调制解调器115调制的信号经由ncu116发送到公共网络(pstn)。

nic(网络接口卡)117经由lan双向地向邮件和文件服务器等发送数据和从邮件和文件服务器等接收数据。此外,nic117双向地向web服务器等发送数据和从web服务器等接收数据。本实施例的mfp10包括emmc109作为存储器。cpu101经由emmc主控制器108访问emmc109。

软件配置

接着,将参考图2来描述根据本实施例的mfp10的软件配置。由图2中的实线表示的单元是可以通过cpu101执行使用上述引导程序加载到ram103的主程序来实现的软件模块。

主程序利用os(操作系统)单元201来管理/控制后面描述的模块的执行。装置驱动器单元208包括在os单元201中。装置驱动器单元208中介与诸如显示控制器104、操作单元控制器106和读取控制器110等的硬件装置的信息交换。

ui(用户界面)单元202经由显示单元105向用户提供各种类型的信息,并接受用户在操作单元107上进行的各种类型的指令。可以通过ui单元202来改变用于切换mfp10的行为的各种设置。通过ui单元202改变的各种设置经由数据库单元213物理地存储在emmc109中。可以通过ui单元202改变的显示语言的设置是各种设置之一。

作业控制器单元203接受诸如复印、打印、传真和发送等的作业,并经由诸如打印机单元212、发送器单元205、传真单元204和扫描器单元207等的功能单元来控制所接受的作业的执行。存储单元206是用于将通过传真发送或接收的图像和诸如由扩展应用单元210请求的应用设置等的数据物理地存储到emmc109并管理这些数据的软件模块。

例如,在本实施例的mfp10中,当作业控制器单元203已经接受了传真发送作业时,扫描器单元207响应于作业请求,通过控制读取单元111来扫描原稿。然后,扫描器单元207将通过扫描获得的传真图像数据存储到存储单元206。存储在存储单元206中的传真图像数据由传真单元204读出,并通过传真经由调制解调器115和ncu116发送到另一方。可选地,通过传真经由调制解调器115和ncu116从另一方接收到的图像数据由传真单元204接收,并存储在存储单元206中。

本实施例的mfp10包括vm(虚拟机)/fw(框架)单元209。扩展应用单元210物理地布置在emmc109中,并且存储来自使用脚本语言描述的任何程序的多个应用程序等。例如,可以使用作为解释和执行字节码的解释器的诸如java(注册商标)和lua等的程序语言。

vm/fw单元209在扩展应用单元210中安装使用脚本语言或预定高级语言描述的任何程序。可选地,vm/fw单元209具有从扩展应用单元210卸载程序的功能。同时,vm/fw单元209在存储单元206中保持已安装的应用的状态信息,该状态信息包括与应用是否是有效有关的信息。此外,vm/fw单元209具有在压缩多个预安装应用的预安装包216存在于rom102中的情况下根据需要在扩展应用单元210中提取并安装预安装应用的能力。省略对其的详细描述。期望在设备从工厂出厂时已经存储了预安装包216。也就是说,根据本实施例,对于预安装在设备中的应用,mfp10保持应用的安装包以便在检测到应用的改变时验证应用并重新安装应用。这样,当检测到应用的改变时,可以自动重新安装应用,并且可以提高用户友好性。此外,与针对各应用将程序存储在其它存储区域中的方法相比,可以有效地使用存储器资源。

此外,vm/fw单元209具有在由安装在扩展应用单元210中的任何程序实现的功能与现有功能之间进行仲裁的功能等。此外,vm/fw单元209在选择了显示单元105中显示的按钮时,将相应应用的脚本语言加载到ram103,并解释和执行其内容。这样,本实施例的mfp10可以容易地实现诸如登录应用214或语言切换应用215等的任何功能,同时保持对功能的可拆卸性。此外,vm/fw单元209在接收到来自安装在扩展应用单元210中的任何程序的请求时,参考并改变数据库单元213的各种设置值。

ui装置控制器211中介从ui单元202和扩展应用单元210向显示单元105各种类型的信息的输出以及从操作单元107向ui单元202和扩展应用单元210的用户操作的发送。

数据结构

接着,将参考图3来描述根据本实施例的保存在扩展应用单元210中的各应用的配置、各应用的文件配置和摘要文件的数据结构。

应用340包括应用文件300和数据341。应用中使用的诸如设置值等的信息记录在数据341中。应用文件300包括属性文件310、程序文件320和摘要文件330。除了应用340的名称和版本信息之外,表示包括在应用中的程序的类型的信息(类型信息)记录在属性文件310中。具体地,可以判断程序是否是预安装在设备中的程序的信息(预安装属性)记录在属性文件310中。程序文件320存储以上述脚本语言描述的程序。

摘要文件330是用于保持要检测改变的摘要值(下文中也称为散列值)的文件。摘要文件330包括属性文件的摘要(第一摘要)331、程序文件的摘要(第二摘要)332、以及摘要331和332的摘要(第三摘要)333。将预期通过对属性文件310的散列计算所获得的摘要文件记录在属性值的摘要331中。类似地,将预期通过对程序文件320的散列计算所获得的摘要值记录在程序文件的摘要332中。此外,将预期通过对属性文件的摘要331和程序文件的摘要332的散列计算所获得的摘要值记录在摘要的摘要333中。

改变检测

接着,将参考图6来描述根据本实施例的用于检测(验证)应用的改变的子例程处理的过程。下面描述的检测处理是构成vm/fw单元209的处理,并且由cpu101执行。在下文中,将由cpu101执行稍后将描述的所有处理。例如,cpu101通过将存储在诸如rom102等的存储器中的控制程序读出到ram103并执行该控制程序来实现以下处理。

首先,在步骤s601中,vm/fw单元209通过计算来获取摘要文件330的属性文件的摘要331和程序文件的摘要332的散列值。接着,在步骤s602中,vm/fw单元209通过比较在步骤s601中获取到的散列值和摘要的摘要333来判断所获取到的散列值是否与记录的摘要值一致。如果这些值一致,则vm/fw单元209判断为不存在异常,并且使处理进入步骤s603,否则vm/fw单元209使处理进入步骤s610。

在步骤s603中,vm/fw单元209通过计算来获取属性文件310的散列值。接着,在步骤s604中,vm/fw单元209通过比较在步骤s603中获取到的散列值和属性文件的摘要331来判断所获取到的散列值是否与记录的摘要值一致。如果这些值一致,则vm/fw单元209判断为不存在异常,并且使处理进入步骤s605,否则vm/fw单元209使处理进入步骤s609。

在步骤s605中,vm/fw单元209通过计算来获取程序文件320的散列值。接着,在步骤s606中,vm/fw单元209通过比较在步骤s605中获取到的散列值和程序文件的摘要332来判断所获取到的散列值是否与记录的摘要值一致。如果这些值一致,则vm/fw单元209判断为不存在异常,并且使处理进入步骤s607,否则vm/fw单元209使处理进入步骤s608。

在步骤s607中,vm/fw单元209将表示未检测到应用的改变、并且应用处于正常状态的结果返回给子例程的调用方,并且结束改变检测处理。另一方面,如果在步骤s606中检测到异常,则在步骤s608中,vm/fw单元209将表示检测到程序文件的改变的结果返回给子例程的调用方,并且结束改变检测处理。此外,如果在步骤s604中检测到异常,则在步骤s609中,vm/fw单元209将表示检测到属性文件的改变的结果返回给子例程的调用方,并且结束改变检测处理。此外,如果在步骤s602中检测到异常,则在步骤s610中,vm/fw单元209将表示检测到摘要文件的改变的结果返回给子例程的调用方,并且结束改变检测处理。

设备启动时的处理

接着,将参考图7来描述根据本实施例的设备启动时的应用管理的处理的流程。这里的应用管理的处理是在vm/fw单元209中所进行的处理,并且由cpu101执行。在下文中,将由cpu101执行稍后将描述的所有处理。例如,cpu101通过将存储在诸如rom102等的存储器中的控制程序读出到ram103并执行该控制程序来实现以下处理。

首先,在步骤s701中,vm/fw单元209将变量i设置为1,并进行控制,使得从安装在扩展应用单元210中的第一应用执行后续处理。接着,在步骤s702中,vm/fw单元209调用使用图8描述的用于检测应用的改变的子例程处理,并执行该子例程以确认安装在扩展应用单元210中的第i应用是否被改变。

然后,在步骤s703中,vm/fw单元209判断改变检测处理的返回值是否表示摘要文件被改变。如果未检测到摘要文件的改变,则vm/fw单元209使处理进入步骤s704。另一方面,如果检测到摘要文件的改变,则vm/fw单元209使处理进入步骤s709。

在步骤s704中,vm/fw单元209判断来自改变检测处理的返回值是否表示属性文件的改变。如果未检测到属性文件的改变,则vm/fw单元209使处理进入步骤s705。另一方面,如果检测到属性文件的改变,则vm/fw单元209使处理进入步骤s709。

在步骤s705中,vm/fw单元209判断来自改变检测处理的返回值是否表示程序文件的改变。如果未检测到程序文件的改变,则vm/fw单元209使处理进入步骤s706,否则vm/fw单元209使处理进入步骤s709。在步骤s706中,vm/fw单元209将第i应用处于正常状态的事实登记在ram103中准备的应用管理数据9000中,并使处理进入步骤s707。此外,vm/fw单元209还同时在应用管理数据9000中登记第i应用中所包括的程序的属性信息。

接着,在步骤s707中,vm/fw单元209判断安装在扩展应用单元210中的所有应用的登记是否已经完成。如果登记已经完成,则vm/fw单元209结束应用登记的处理。另一方面,如果存在尚未登记的应用,则vm/fw单元209使处理进入步骤s708,将变量i加1,并且使处理返回至步骤s702。

如果在步骤s703、s704或s705中检测到文件的改变,则在步骤s709中,vm/fw单元209确认应用的属性文件310,并判断程序是否具有预安装属性。如果该程序具有预安装属性,则vm/fw单元209使处理进入步骤s710,否则vm/fw单元209使处理进入步骤s712。

在步骤s710中,vm/fw单元209展开压缩的预安装包216,并将所提取的应用重写安装到扩展应用单元210。这里,重写安装意味着在保持数据341的状态重新安装应用340。在步骤s711中,vm/fw单元209将第i应用处于正常状态登记在ram103中准备的应用管理数据9000中,并使处理进入步骤s707。也就是说,当重写安装预安装应用时,vm/fw单元209进行控制使得可以启动该应用。这里,将稍后描述的图4中的主画面显示在ui单元202中,并且可以正常使用各应用(功能)。注意,当重新安装完成时,vm/fw单元209可以请求ui单元202显示表示给定应用被改变并且使用预安装包216重新安装了给定应用的消息。

另一方面,在步骤s712中,vm/fw单元209请求ui单元202进行表示应用已被改变的错误显示。图5中示出接收到该请求的ui单元202所显示的操作画面的示例。本实施例中的mfp10在画面下部分配的状态区域501中显示表示已经检测到应用的改变的消息。图5示出当检测到语言切换应用215的改变时在状态区域501中显示这种消息的示例。这里,稍后描述的图4中的按钮401,即用于启动应用的按钮不显示在主画面中。另一方面,显示各种按钮以使得能够接受使用mfp10的其它功能的操作。

在步骤s712中,vm/fw单元209在请求ui单元202进行错误显示之后,使处理进入步骤s713。在步骤s713中,除了程序的属性之外,vm/fw单元209针对第i应用还将应用处于异常状态的事实登记到ram103中准备的应用管理数据9000,并使处理进入步骤s707。已经描述了步骤s707中的处理并且将省略该处理。

扩展应用的执行

接着,将参考图8来描述安装在扩展应用单元210中的应用的程序的执行处理的流程。在按下主画面400中显示的任何应用的按钮(诸如按钮401等)的定时执行程序的执行处理。下面描述的检测处理是构成vm/fw单元209的处理,并且由cpu101执行。在下文中,将由cpu101执行稍后将描述的所有处理。例如,cpu101通过将存储在诸如rom102等的存储器中的控制程序读出到ram103并执行该控制程序来实现以下处理。

首先,在步骤s801中,vm/fw单元209调用使用图6描述的用于检测应用的改变的子例程处理,并检测已经请求执行的程序的改变。接着,在步骤s802中,vm/fw单元209判断来自改变检测处理的返回值是否表示摘要文件的改变。如果未检测到摘要文件的改变,则vm/fw单元209使处理进入步骤s803。另一方面,如果检测到摘要文件的改变,则vm/fw单元209使处理进入步骤s806。

在步骤s803中,vm/fw单元209判断来自改变检测处理的返回值是否表示属性文件的改变。如果未检测到属性文件的改变,则vm/fw单元209使处理进入步骤s804。另一方面,如果检测到属性文件的改变,则vm/fw单元209使处理进入步骤s806。在步骤s804中,vm/fw单元209判断来自改变检测处理的返回值是否表示程序文件的改变。如果未检测到程序文件的改变,则vm/fw单元209使处理进入步骤s805,否则vm/fw单元209使处理进入步骤s806。

在步骤s805中,vm/fw单元209执行所请求的程序,并结束程序执行处理。另一方面,如果在步骤s802、s803或s804中检测到文件的改变,则vm/fw单元209使处理进入步骤s806,并判断所请求的程序的属性。这里,如上所述,程序的属性已经在步骤s706或s714中登记在应用管理数据9000中。因此,即使已经改变了摘要文件或属性文件,也可以在步骤s806中使用应用管理数据9000来指定程序的属性。如果程序具有预安装属性,则vm/fw单元209使处理进入步骤s807,否则vm/fw单元209使处理进入步骤s808。

在步骤s807中,类似于上述步骤s710,vm/fw单元209展开压缩的预安装包216,并将所提取的应用重写安装到扩展应用单元210。然后,vm/fw单元209结束程序执行处理。

另一方面,在步骤s808中,类似于上述步骤s712,vm/fw单元209显示表示已经检测到应用的改变的消息。然后,vm/fw单元209结束程序执行处理。

如上所述,根据本实施例的图像处理设备检测在图像处理设备中保持的任何应用的改变,并且判断已经检测到改变的应用是否是预安装应用。此外,作为判断的结果,如果已经检测到改变的应用不是预安装应用,则图像处理设备执行表示已经检测到应用的改变的错误显示,并且限制启动该应用。另一方面,如果已经检测到改变的应用是预安装应用,则图像处理设备重新安装应用使得使用预先保持的信息来重写该应用,并且使得能够使用该应用。这样,如果改变的应用的程序具有预安装属性,则作为使用预安装包进行重写安装的结果,可以使该应用恢复到正常状态,并且可以提高用户友好性。另一方面,除了存储与各个应用相对应的程序的存储区域之外,不需要提供用于存储相同程序的其它存储区域,并且仅提供用于压缩的预安装包的存储区域就足够了,并且作为结果,可以有效地使用存储器资源。

其它实施例

本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(cpu)、微处理单元(mpu)读出并执行程序的方法。

虽然已经参考典型实施例描述了本发明,但是应该理解,本发明不限于所公开的典型实施例。所附权利要求的范围应被赋予最广泛的解释,以包含所有这些修改和等同的结构和功能。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1