CN111258679B - 应用于智能电表上的app生命周期管理方法 - Google Patents
应用于智能电表上的app生命周期管理方法 Download PDFInfo
- Publication number
- CN111258679B CN111258679B CN202010063938.3A CN202010063938A CN111258679B CN 111258679 B CN111258679 B CN 111258679B CN 202010063938 A CN202010063938 A CN 202010063938A CN 111258679 B CN111258679 B CN 111258679B
- Authority
- CN
- China
- Prior art keywords
- app
- state
- program
- management method
- running
- 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.)
- Active
Links
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/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/62—Uninstallation
-
- 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/4403—Processor initialisation
-
- 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/4418—Suspend and resume; Hibernate and awake
-
- 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/442—Shutdown
-
- 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/445—Program loading or initiating
- G06F9/44594—Unloading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种应用于智能电表上的APP生命周期管理方法,包括以下步骤:电表上电,程序启动,Bootloader程序运行;Bootloader程序运行完跳转应用层程序,初始化APP调度器;APP调度器检测当前电表是否已安装APP,如果已有APP安装,则初始化APP,将APP信息挂载到调度队列中,置为APP状态为就绪态;若没有APP安装,则APP调度器进入等待状态,准备接收安装APP;通过外部通信方式可对已安装的APP进行操作;APP调度器接收到操作命令后,从执行列表中查找到对应的APP,并执行相应操作,置为相应状态;操作执行完后,APP调度器进入等待状态,等待下次操作。有益之处在于当某一功能需求变更或更新程序时,仅需对该功能的APP进行卸载、重新下载、安装运行即可,升级颗粒度更小。
Description
技术领域
本发明涉及一种应用于智能电表上的APP生命周期管理方法。
背景技术
目前智能电表的程序主要由bootloader和业务应用程序组成,内部功能调度固化。现有的智能电表通常将Bootloader与业务应用层程序组合成一个,然后将程序烧录到表中,实现表计功能。当需求变更或因为bug需要更新程序时,利用通讯或者插入存储介质等方式将新的业务应用程序告知表,表内的Bootloader启动升级流程,擦除原有业务应用层程序,写入新的,实现程序的更新。
但表计的计量、显示、通讯、结算、事件等所有功能均在业务应用层程序中,所有功能无法单独更新,只能整体升级;同时表内的计量、显示、通讯、结算、事件等所有功能的调度逻辑代码在程序中已固化,外部不可控。
发明内容
为了解决现有技术的不足,本发明提供了一种应用于智能电表上的APP生命周期管理方法,可以通过外部通信方式对表进行多APP的下载、安装、运行、停止、卸载等操作,以在有限资源的电表上实现功能的多样性,易更新。
为了实现上述目标,本发明采用如下方案:
一种应用于智能电表上的APP生命周期管理方法,包括以下步骤:
电表上电,程序启动,Bootloader程序运行;
Bootloader程序运行完跳转应用层程序,初始化APP调度器;
APP调度器检测当前电表是否已安装APP,如果已有APP安装,则初始化APP,将APP信息挂载到调度队列中,置为APP状态为就绪态;若没有APP安装,则APP调度器进入等待状态,准备接收安装APP;
通过外部通信方式可对已安装的APP进行操作;
APP调度器接收到操作命令后,从执行列表中查找到对应的APP,并执行相应操作,置为相应状态;
操作执行完后,APP调度器进入等待状态,等待下次操作。
进一步地,通过外部通信方式对已安装的APP进行的操作包括运行、停止和卸载。
进一步地,APP的状态包括下载状态、安装状态、就绪状态、运行状态、停止状态和卸载状态。
进一步地,APP下载后状态为下载状态;
下载后的APP通过APP调度器进行安装后置为安装状态;
处于安装状态的APP初始化成功后变为就绪状态;
处于就绪状态的APP可以被运行,运行时为运行状态。
进一步地,运行的APP可以一直处于运行状态也可以运行一次后进入到就绪状态。
进一步地,APP运行时发生错误或外部干预,APP可以进入到停止状态。
进一步地,处于安装状态、就绪状态、停止状态的APP可直接卸载进入卸载状态。
进一步地,处于运行状态的APP在要卸载时需要先进入到停止状态然后进行卸载进入卸载状态。
进一步地,电表的管理芯程序包括bootloader程序和APP调度器程序。
进一步地,不同业务功能分别设置不同的APP程序。
本发明的有益之处在于采用应用于智能电表上的APP生命周期管理方法可将电表的计量、显示、通讯、结算、事件等功能分成独立的APP进行开发,对APP功能的管理更加灵活。
当某一功能需求变更或出现bug需要更新程序时,仅需对该功能的APP进行卸载、重新下载、安装运行即可,升级颗粒度更小。
附图说明
图1是本发明的应用于智能电表上的APP生命周期管理方法的流程图;
图2是图1中应用于智能电表上的APP生命周期管理方法的APP状态切换示意图。
具体实施方式
以下结合附图和具体实施例对本发明作具体介绍。
如图1和图2所示,一种应用于智能电表上的APP生命周期管理方法,包括以下步骤:
电表上电,程序启动,Bootloader程序运行;
Bootloader程序运行完跳转应用层程序,初始化APP调度器;
APP调度器检测当前电表是否已安装APP,如果已有APP安装,则初始化APP,将APP信息挂载到调度队列中,置为APP状态为就绪态;若没有APP安装,则APP调度器进入等待状态,准备接收安装APP;
通过外部通信方式可对已安装的APP进行操作;
APP调度器接收到操作命令后,从执行列表中查找到对应的APP,并执行相应操作,置为相应状态;
操作执行完后,APP调度器进入等待状态,等待下次操作。
具体而言,通过外部通信方式对已安装的APP进行的操作包括运行、停止和卸载等。
作为一种具体的实施方式,APP的状态包括下载状态、安装状态、就绪状态、运行状态、停止状态和卸载状态。状态件的切换具有一定的限制关系。具体如下:
APP下载后状态为下载状态;
下载后的APP通过APP调度器进行安装后置为安装状态;
处于安装状态的APP初始化成功后变为就绪状态;
处于就绪状态的APP可以被运行,运行时为运行状态;
运行的APP可以一直处于运行状态也可以运行一次后进入到就绪状态;
APP运行时发生错误或外部干预,APP可以进入到停止状态;
处于安装状态、就绪状态、停止状态的APP可直接卸载进入卸载状态;
处于运行状态的APP在要卸载时需要先进入到停止状态然后进行卸载进入卸载状态。
在基于IR46规范的智能电表中,管理芯程序采用Bootloader+APP调度器的结构,将业务功能按计量、通讯、显示、结算、事件、继电器控制、费率时段等进行分解,然后单独开发,最终将程序装载到管理中,实现管理芯完整的功能需求,并可通过上位机与表通信,采用合适的协议,对APP的生命周期进行管控。
以上显示和描述了本发明的基本原理、主要特征和优点。本行业的技术人员应该了解,上述实施例不以任何形式限制本发明,凡采用等同替换或等效变换的方式所获得的技术方案,均落在本发明的保护范围内。
Claims (8)
1.一种应用于智能电表上的APP生命周期管理方法,其特征在于,包括以下步骤:
电表上电,程序启动,Bootloader程序运行;
Bootloader程序运行完跳转应用层程序,初始化APP调度器;
APP调度器检测当前电表是否已安装APP,如果已有APP安装,则初始化APP,将APP信息挂载到调度队列中,置为APP状态为就绪态;若没有APP安装,则APP调度器进入等待状态,准备接收安装APP;
通过外部通信方式可对已安装的APP进行操作;
APP调度器接收到操作命令后,从执行列表中查找到对应的APP,并执行相应操作,置为相应状态;
操作执行完后,APP调度器进入等待状态,等待下次操作;
电表的管理芯程序包括Bootloader程序和APP调度器程序;
不同业务功能分别设置不同的APP程序。
2.根据权利要求1所述的应用于智能电表上的APP生命周期管理方法,其特征在于,
通过外部通信方式对已安装的APP进行的操作包括运行、停止和卸载。
3.根据权利要求1所述的应用于智能电表上的APP生命周期管理方法,其特征在于,
APP的状态包括下载状态、安装状态、就绪状态、运行状态、停止状态和卸载状态。
4.根据权利要求3所述的应用于智能电表上的APP生命周期管理方法,其特征在于,
APP下载后状态为下载状态;
下载后的APP通过APP调度器进行安装后置为安装状态;
处于安装状态的APP初始化成功后变为就绪状态;
处于就绪状态的APP可以被运行,运行时为运行状态。
5.根据权利要求4所述的应用于智能电表上的APP生命周期管理方法,其特征在于,
运行的APP可以一直处于运行状态也可以运行一次后进入到就绪状态。
6.根据权利要求4所述的应用于智能电表上的APP生命周期管理方法,其特征在于,
APP运行时发生错误或外部干预,APP可以进入到停止状态。
7.根据权利要求6所述的应用于智能电表上的APP生命周期管理方法,其特征在于,
处于安装状态、就绪状态、停止状态的APP可直接卸载进入卸载状态。
8.根据权利要求7所述的应用于智能电表上的APP生命周期管理方法,其特征在于,
处于运行状态的APP在要卸载时需要先进入到停止状态然后进行卸载进入卸载状态。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010063938.3A CN111258679B (zh) | 2020-01-20 | 2020-01-20 | 应用于智能电表上的app生命周期管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010063938.3A CN111258679B (zh) | 2020-01-20 | 2020-01-20 | 应用于智能电表上的app生命周期管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111258679A CN111258679A (zh) | 2020-06-09 |
CN111258679B true CN111258679B (zh) | 2023-09-26 |
Family
ID=70949019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010063938.3A Active CN111258679B (zh) | 2020-01-20 | 2020-01-20 | 应用于智能电表上的app生命周期管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111258679B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101311895A (zh) * | 2007-05-23 | 2008-11-26 | 上海申瑞电力科技股份有限公司 | 用于电力调度自动化系统的进程内组件实现方法 |
CN101833465A (zh) * | 2010-04-23 | 2010-09-15 | 中国科学院声学研究所 | 一种支持应用程序动态加载运行的嵌入式系统 |
CN102479097A (zh) * | 2010-11-26 | 2012-05-30 | 中国科学院声学研究所 | 一种支持多级加载的安全嵌入式操作系统 |
CN103634643A (zh) * | 2013-12-06 | 2014-03-12 | 乐视致新电子科技(天津)有限公司 | 遥控智能电视卸载应用程序的方法及装置 |
JP2014154059A (ja) * | 2013-02-13 | 2014-08-25 | Mitsubishi Electric Corp | 時空管理装置及び時空管理プログラム |
CN105487917A (zh) * | 2015-12-07 | 2016-04-13 | 郑州轻工业学院 | 一种虚拟机实现验证码系统修复的方法及装置 |
WO2016101572A1 (zh) * | 2014-12-23 | 2016-06-30 | 中兴通讯股份有限公司 | 一种移动终端短生命周期的业务应用方法及装置 |
CA2956103A1 (en) * | 2016-02-02 | 2017-08-02 | Blackberry Limited | Application lifecycle operation queueing |
WO2019179779A1 (de) * | 2018-03-20 | 2019-09-26 | Audi Ag | Verfahren zum durchführen eines updates einer softwareapplikation in einem gerät, das sich im betrieb befindet, sowie gerät und kraftfahrzeug |
WO2019190767A1 (en) * | 2018-03-29 | 2019-10-03 | Qualcomm Incorporated | Using machine learning to optimize memory usage |
CN110430231A (zh) * | 2019-06-24 | 2019-11-08 | 中国电力科学研究院有限公司 | 一种对泛在电力物联网智能终端app的管理方法及系统 |
CN110445863A (zh) * | 2019-08-09 | 2019-11-12 | 成都千立网络科技有限公司 | docker应用程序远程加载的方法 |
-
2020
- 2020-01-20 CN CN202010063938.3A patent/CN111258679B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101311895A (zh) * | 2007-05-23 | 2008-11-26 | 上海申瑞电力科技股份有限公司 | 用于电力调度自动化系统的进程内组件实现方法 |
CN101833465A (zh) * | 2010-04-23 | 2010-09-15 | 中国科学院声学研究所 | 一种支持应用程序动态加载运行的嵌入式系统 |
CN102479097A (zh) * | 2010-11-26 | 2012-05-30 | 中国科学院声学研究所 | 一种支持多级加载的安全嵌入式操作系统 |
JP2014154059A (ja) * | 2013-02-13 | 2014-08-25 | Mitsubishi Electric Corp | 時空管理装置及び時空管理プログラム |
CN103634643A (zh) * | 2013-12-06 | 2014-03-12 | 乐视致新电子科技(天津)有限公司 | 遥控智能电视卸载应用程序的方法及装置 |
WO2016101572A1 (zh) * | 2014-12-23 | 2016-06-30 | 中兴通讯股份有限公司 | 一种移动终端短生命周期的业务应用方法及装置 |
CN105487917A (zh) * | 2015-12-07 | 2016-04-13 | 郑州轻工业学院 | 一种虚拟机实现验证码系统修复的方法及装置 |
CA2956103A1 (en) * | 2016-02-02 | 2017-08-02 | Blackberry Limited | Application lifecycle operation queueing |
WO2019179779A1 (de) * | 2018-03-20 | 2019-09-26 | Audi Ag | Verfahren zum durchführen eines updates einer softwareapplikation in einem gerät, das sich im betrieb befindet, sowie gerät und kraftfahrzeug |
WO2019190767A1 (en) * | 2018-03-29 | 2019-10-03 | Qualcomm Incorporated | Using machine learning to optimize memory usage |
CN110430231A (zh) * | 2019-06-24 | 2019-11-08 | 中国电力科学研究院有限公司 | 一种对泛在电力物联网智能终端app的管理方法及系统 |
CN110445863A (zh) * | 2019-08-09 | 2019-11-12 | 成都千立网络科技有限公司 | docker应用程序远程加载的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111258679A (zh) | 2020-06-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110851145B (zh) | 一种基于容器编排的边缘云安装维护方法及系统 | |
CN103797436B (zh) | 用于计算装置的动态电力优化 | |
CN102622241B (zh) | 一种软件升级方法及装置 | |
CN102880505B (zh) | 用于后台工作执行的事件聚合 | |
EP1872606B1 (en) | Method and system for centralized memory management in wireless terminal devices | |
CN102023881B (zh) | 一种软件升级方法、装置及嵌入式设备 | |
CN101346714B (zh) | 在计算机系统中用于保证内容映像的执行的方法 | |
CN103617058B (zh) | 基于qnx的应用软件安装、卸载系统及方法 | |
EP1872230B1 (en) | Centralized memory management in wireless terminal devices | |
US20120272204A1 (en) | Uninterruptible upgrade for a build service engine | |
EP2701059A1 (en) | Method and apparatus for loading application program | |
CN114995811B (zh) | 支持多种机载嵌入式操作系统的容器接口架构系统 | |
CN110633091A (zh) | 一种电子模块及其软件无线升级方法 | |
CN102571860A (zh) | 一种管理插件的方法、装置及系统 | |
CN103106083B (zh) | 一种固件的加载方法及装置 | |
EP2805233B1 (en) | Installation engine and package format for parallelizable, reliable installations | |
CN104468638A (zh) | 一种分布式数据处理方法及系统 | |
CN101430647A (zh) | 一种硬件设备及其驱动安装方法 | |
CN109656528A (zh) | 基于标准的组件化软件开发方法 | |
CN111258679B (zh) | 应用于智能电表上的app生命周期管理方法 | |
CN105183657A (zh) | 一种web界面的测试系统及方法 | |
CN102768628A (zh) | 一种预安装第三方应用的方法及装置 | |
CN113849399A (zh) | 多国产化平台下的多机协同软件的自动化测试系统和方法 | |
CN114356367A (zh) | 一种终端设备用智能化固件批量升级方法、系统及介质 | |
CN114064083A (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 |