CN101478832B - 一种移动终端、设备管理客户端及其实现方法 - Google Patents
一种移动终端、设备管理客户端及其实现方法 Download PDFInfo
- Publication number
- CN101478832B CN101478832B CN2009101052623A CN200910105262A CN101478832B CN 101478832 B CN101478832 B CN 101478832B CN 2009101052623 A CN2009101052623 A CN 2009101052623A CN 200910105262 A CN200910105262 A CN 200910105262A CN 101478832 B CN101478832 B CN 101478832B
- Authority
- CN
- China
- Prior art keywords
- protocol stack
- module
- facility management
- control module
- client
- 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
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种设备管理客户端实现方法,包括以下步骤:A.建立监听控制模块和设备管理客户端核心协议栈,设备管理客户端启动时加载监听控制模块,监听控制模块常驻内存;B.监听控制模块监听来自设备管理服务器和用户设备管理的服务请求,当监听到设备管理服务请求时,在内存中加载设备管理客户端核心协议栈。本发明还公开了一种设备管理客户端和包括该设备管理客户端的移动终端,包括监听控制模块和设备管理客户端核心协议栈,监听控制模块用于常驻内存监听来自设备管理服务器或用户的设备管理服务请求,若存在设备管理服务请求,则在内存中加载设备管理客户端核心服务协议栈。本发明节约了内存资源,优化了终端性能,降低了成本。
Description
技术领域
本发明涉及移动通信远程设备管理技术,尤其涉及一种移动终端、设备管理客户端及其实现方法。
背景技术
随着移动数据业务的日趋丰富和复杂化,业务对终端的依赖性越来越高。移动终端作为用户使用移动业务的载体,已成为移动运营服务体系中不可或缺的重要组成部分。为了更好地使终端具备快速提升的能力以应对日益激烈的市场竞争,同时能更方便、高效、快捷地对终端设备进行远程管理,各运营商和终端厂商都致力于提高终端设备的远程管理能力。
开放移动联盟(Open Mobile Alliance,以下简称OMA)的设备管理(Device Management,以下简称DM)技术主要提供对分布式设备和移动设备进行管理的机制,从而优化用户的经验数据,并减少运营商的成本。DM主要用于终端设备的管理、诊断、信息采集、软件管理,它通过OTA(OverThe Air)方式,管理终端设备的参数采集配置、固件下载、软件下载、安装和升级以及终端软件错误的修复。
OMA DM业务平台主要采用C/S业务模式,服务器端部署在运营商或者第三方架构OMA DM服务器及其业务系统中,而在终端上则需要部署OMADM客户端以支持与服务器的通信。传统的OMADM客户端实现方式通常为将其作为一个隐藏进程或者服务,在终端启动时即启动,一直工作在后台模式,对用户不可见,时刻监听服务器侧的通信消息,一旦有业务需要,则进行DM相关的设备管理或者固件升级操作。
但目前这样的客户端实现方案存在一些缺陷:(1)由于终端内存是比较宝贵的资源,这种耦合性极强的常驻内存的实现方式极大地占用了有限的内存资源;(2)在某些特定的平台,运行的进程总数往往有限制,一旦超过限制,系统会随机关闭进程,OMA DM业务存在潜在被关闭的风险,OMA DM客户端存在不稳定的可能;(3)由于与各个平台的具体技术完全耦合,这种常驻方式的实现不利于OMA DM协议栈的扩展升级。
发明内容
本发明的目的是为了克服现有技术的不足,提供一种占用终端内存资源少的DM客户端及其实现方法。
本发明的目的是通过以下技术方案实现的:
一种设备管理客户端,包括监听控制模块和设备管理客户端核心协议栈,所述监听控制模块用于常驻内存监听来自设备管理服务器或用户的设备管理服务请求,若存在设备管理服务请求,则在内存中加载所述设备管理客户端核心服务协议栈。
所述监听控制模块包括加载请求模块和协议栈加载模块;所述加载请求模块用于在监听控制模块监听到设备管理服务请求时,向所述协议栈加载模块发出加载服务请求;所述协议栈加载模块,用于收到加载服务请求后,在内存中加载设备管理客户端核心服务协议栈。
所述监听控制模块还包括卸载请求模块和协议栈卸载模块,所述监听控制模块还用于在加载设备管理客户端核心服务协议栈后监听设备管理服务的完成情况,所述卸载请求模块用于当设备管理服务完成后,向所述协议栈卸载模块发出卸载服务请求;所述协议栈卸载模块,用于收到卸载服务请求后,从内存中卸载设备管理客户端核心服务协议栈。
所述监听控制模块还包括恢复模块,用于在设备管理服务未完成而异常终止时,进行现场状态保存并向所述协议栈加载模块发出加载服务请求。
所述监听模块的运行方式为后台运行方式。
一种包括设备管理客户端的移动终端。
一种设备管理客户端实现方法,包括以下步骤:A.建立监听控制模块和设备管理客户端核心协议栈,设备管理客户端启动时加载监听控制模块,所述监听控制模块常驻内存;B.监听控制模块监听来自设备管理服务器和用户设备管理的服务请求,当监听到设备管理服务请求时,在内存中加载设备管理客户端核心协议栈。
所述步骤B之后还包括步骤:C.监听控制模块监听设备管理服务完成情况,当监听控制模块监听到设备管理服务已经完成时,从内存中卸载设备管理客户端核心协议栈。
在步骤B和C之间还包括监听控制模块监听到设备管理服务未完成被异常中止时,保存现场参数并重新加载设备管理客户端核心协议栈的步骤。
所述步骤A中,所述监听模块以服务或进程的方式加载。
所述步骤A中,所述监听控制模块以系统进程的方式加载。
所述步骤A中,所述监听控制模块以后台方式运行。
本发明同现有技术相比较的有益效果是:
本发明通过分离监听控制功能与OMA DM核心协议栈功能,使其作为两个独立的模块存在,监听模块常驻内存监听服务器端和用户的DM服务请求,在需要进行DM服务会话时动态载入OMA DM客户端核心协议栈,启动OMA DM客户端,在服务完成后,关闭OMA DM客户端,并将OMA DM客户端核心协议栈从内存中卸载,这样就减少了其常驻内存的空间,节约了宝贵的内存资源,优化了终端性能,从技术角度降低了成本。本发明还提供了在DM服务被异常中止时的恢复功能,提高了OMA DM业务的稳定性。
附图说明
图1是本发明DM客户端具体实施方式结构示意图;
图2是本发明DM客户端实现方法具体实施方式功能模块关系图;
图3是本发明具体实施方式用户触发DM服务时序图;
图4是本发明具体实施方式服务器端触发DM服务时序图;
图5是现有技术DM进程异常中止示意图;
图6是本发明具体实施方式解决DM进程异常中止示意图;
图7是本发明具体实施方式解决DM进程异常中止状态迁移图。
具体实施方式
下面通过具体实施方式结合附图对本发明作进一步详细说明。
如图1所示,本发明DM客户端的一种实施方式,DM客户端为移动终端,移动终端包括监听控制模块和DM客户端核心协议栈。监听控制模块用于常驻内存监听来自设备管理服务器或用户的设备管理服务请求,若存在设备管理服务请求,则在内存中加载设备管理客户端核心服务协议栈。监听控制模块在移动终端启动时即被加载,本实施方式中,监听控制模块以服务或进程的方式常驻内存并以后台方式运行,监听控制模块也可以前台方式运行。监听控制模块监听DM服务器发送到客户端的notification和bootstrap消息,以及来自用户的DM服务请求。在一种实施方式中,监听控制模块包括加载请求模块和协议栈加载模块,由加载请求模块向协议栈加载模块发出加载服务请求,协议栈加载模块收到加载请求后,在内存中加载DM客户端核心协议栈。在一种实施方式中,监听控制模块还包括卸载请求模块和协议栈卸载模块,监听控制模块还用于监听DM服务的完成情况,当DM服务完成后,由卸载请求模块向协议栈卸载模块发出卸载服务请求,协议栈卸载模块收到卸载服务请求后,从内存中卸载DM客户端核心服务协议栈。在另一种实施方式中,监听控制模块还可包括恢复模块,当监听到DM服务进程被异常中止时,恢复模块保存现场参数并向加载模块发出加载请求,协议栈加载模块收到加载请求后,在内存中加载DM客户端核心协议栈。监听控制模块也可同时包括加载请求模块、协议栈加载模块、卸载请求模块、协议栈卸载模块和恢复模块。
本发明包括DM客户端的移动终端的一种实施方式,包括DM客户端,DM客户端为移动终端,移动终端包括监听控制模块和DM客户端核心协议栈。监听控制模块用于常驻内存监听来自设备管理服务器或用户的设备管理服务请求,若存在设备管理服务请求,则在内存中加载设备管理客户端核心服务协议栈。监听控制模块在移动终端启动时即被加载,本实施方式中,监听控制模块以服务或进程的方式常驻内存并以后台方式运行,监听控制模块也可以前台方式运行。监听控制模块监听DM服务器发送到客户端的notification和bootstrap消息,以及来自用户的DM服务请求。在一种实施方式中,监听控制模块包括加载请求模块和协议栈加载模块,由加载请求模块向协议栈加载模块发出加载服务请求,协议栈加载模块收到加载请求后,在内存中加载DM客户端核心协议栈。在一种实施方式中,监听控制模块还包括卸载请求模块和协议栈卸载模块,监听控制模块还用于监听DM服务的完成情况,当DM服务完成后,由卸载请求模块向协议栈卸载模块发出卸载服务请求,协议栈卸载模块收到卸载服务请求后,从内存中卸载DM客户端核心服务协议栈。在另一种实施方式中,监听控制模块还可包括恢复模块,当监听到DM服务进程被异常中止时,恢复模块保存现场参数并向加载模块发出加载请求,协议栈加载模块收到加载请求后,在内存中加载DM客户端核心协议栈。监听控制模块也可同时包括加载请求模块、协议栈加载模块、卸载请求模块、协议栈卸载模块和恢复模块。
本发明DM客户端的实现方法,其一种具体实施方式如图2所示。设置监听控制模块的加载,为监听进程(独立的EXE)开机时系统加载方式,即移动终端开机启动之后,监听进程被启动,并且被设置到后台工作方式;一旦用户发起或者DM服务器发起DM会话,监听进程则加载并启动OMADM客户端核心协议栈,本实施方式中加载方式为进程或者线程,优选线程方式,因为大多数平台均以进程为单位独立分配资源,线程方式则与父进程共享资源,这样更加高效。OMA DM客户端核心协议栈进程在处理完DM会话操作之后,被关闭并卸载出内存。
如图3所示,用户触发DM服务请求的具体实施方式,包括如下步骤:
步骤301:用户触发OMA DM会话,这可能是通过用户直接操作终端触发的,也可以是由其它用户设置引起的,比如定时更新等。用户事件被监听进程捕获,监听进程启动OMA DM客户端核心协议栈进程,动态将其加载启动,并将用户事件通知到OMA DM客户端核心协议栈进程;
步骤302:OMA DM客户端核心协议栈进程连接DM服务器,发起OMA DM会话,并且负责与DM服务器的协议通信,如果协议中有用户交互的部分,则以事件方式通知到监听进程,由监听进程完成交互;
步骤303:OMA DM会话结束,DM服务器与OMA DM客户端通信结束;
步骤304:会话结束的事件或者消息被监听进程捕获;
步骤305:监听进程控制关闭OMA DM客户端,卸载核心协议栈进程,释放被占用的所有资源。
DM服务器端触发DM服务请求的具体实施方式,如图4所示,包括如下步骤:
步骤401:DM服务器端发送Notification或者Bootstrap消息到移动终端,移动终端的无线模块解析出此为DM功能的Push消息,将其通知到监听进程;
步骤402:监听进程启动OMA DM客户端核心协议栈进程,动态将其加载启动,并将用户事件通知到OMA DM客户端核心协议栈进程;
步骤403:OMA DM客户端核心协议栈进程连接DM服务器,发起OMA DM会话,并且负责与DM服务器的协议通信,如果协议中有用户交互的部分,则以事件方式通知到监听进程,由监听进程完成交互;
步骤404:OMA DM操作结束,DM服务器与OMA DM客户端通信结束。
步骤405:会话结束的事件或者消息被监听进程捕获。
步骤406:监听进程则控制关闭OMA DM客户端,卸载核心协议栈进程,释放被占用的所有资源。
现有技术的OMA DM客户端实现不同于本发明这种动态控制管理的方法,总是一直驻留在内存中。而OMA DM功能的使用频率相对于其它应用模块而言并不算高,却占据了大量可用的资源,造成了资源浪费以及效率低下,也为内存资源宝贵的移动终端产品增加了成本。本发明的动态控制加载方案,可以极为有效的减少常驻内存的开销,而又能保证OMADM功能的正常稳定运行。
图5描述了现有技术中OMA DM作为普通用户进程的情况下,在某些平台上(如Windows Mobile)存在的一种潜在问题。由于这些平台的限制,当运行的进程数超过一定的限制,则系统会随机选择一个用户进程杀掉,以保证系统的进程数目限制。这样,有可能OMA DM客户端核心协议栈进程会被系统杀掉,因而存在不稳定性。本发明的一种实施方式,如图6所示,以Windows Mobile平台为实例,将监听进程以系统进程的DLL加载启动,保证了监听进程不会被系统杀死。本发明通过图7所描述的一种实施方式保证了监听进程对OMA DM客户端核心协议栈进程的保护和恢复。
图7描述了各个关键状态的迁移和变化情况:
状态1:系统启动后,Service动态加载监听服务DLL。监听服务DLL相对减少常驻内存的方案选择了系统进程作为寄主,还增加了对DM进程的控制管理和异常恢复功能;
状态2:一旦捕获到客户或者服务器触发DM操作,监听服务启动DM进程,将对应事件或者消息发送到DM进程,由其处理DM会话交互和操作;
状态3:如果一旦DM进程被系统选中杀死,监听服务进行现场状态保护和定时启动设置,状态保护的结果可以存储为配置文件或者注册表信息等其它形式;
状态4:一旦DM进程被关闭,则DM进程进入关闭状态。
状态1到状态2迁移描述了监听服务启动DM进程的处理操作,一旦客户或者服务器触发DM操作,监听服务捕获到对应的事件和消息通知则启动DM进程。状态1到状态3的迁移由异常情况引起,一旦DM进程被选中杀死,则监听服务进行当前状态保存和定时恢复启动DM进程的设置。在状态3下,一旦完成保护操作,则执行关闭动作,迁移到状态4。同时,定时器到时则尝试启动和恢复DM进程,此时可能存在两种状况,一种是成功启动恢复DM进程,迁移到状态2,一种则由于目前进程仍然超过限制,启动失败,则继续记时和记数尝试后续启动恢复DM进程。如果在超过规定的时限范围,仍然无法启动DM进程,则服务器端已经超时,此时启动恢复DM进程没有意义,清理掉当前保存的DM状态后,返回状态1。
处于状态2,一旦DM操作结束,监听服务关闭DM进程,则迁移到状态4的关闭状态。
本发明的移动终端为部署有OMA DM客户端的移动终端,包括:2G(GSM,CDMA)移动通信终端、3G(WCDMA/CDMA2000/TD-SCDMA)移动通信终端、PHS无线市话终端、WinMax和WiFi宽带无线数据卡、Modem和移动终端和LTE网络终端等。本发明适用的平台包括Windows Mobile、Brew、大唐、展讯、Linux等。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (12)
1.一种设备管理客户端,其特征在于:包括监听控制模块和设备管理客户端核心协议栈,所述监听控制模块用于常驻内存监听来自设备管理服务器或用户的设备管理服务请求,若存在设备管理服务请求,则在内存中加载所述设备管理客户端核心协议栈。
2.根据权利要求1所述的设备管理客户端,其特征在于:所述监听控制模块包括加载请求模块和协议栈加载模块;所述加载请求模块用于在监听控制模块监听到设备管理服务请求时,向所述协议栈加载模块发出加载服务请求;所述协议栈加载模块,用于收到加载服务请求后,在内存中加载设备管理客户端核心协议栈。
3.根据权利要求1所述的设备管理客户端,其特征在于:所述监听控制模块还包括卸载请求模块和协议栈卸载模块,所述监听控制模块还用于在加载设备管理客户端核心服务协议栈后监听设备管理服务的完成情况,所述卸载请求模块用于当设备管理服务完成后,向所述协议栈卸载模块发出卸载服务请求;所述协议栈卸载模块,用于收到卸载服务请求后,从内存中卸载设备管理客户端核心协议栈。
4.根据权利要求2所述的设备管理客户端,其特征在于:所述监听控制模块还包括恢复模块,用于在设备管理服务未完成而异常终止时,进行现场状态保存并向所述协议栈加载模块发出加载服务请求。
5.根据权利要求1所述的设备管理客户端,其特征在于:所述监听控制模块的运行方式为后台运行方式。
6.一种包括如权利要求1至5中任意一项所述的设备管理客户端的移动终端。
7.一种设备管理客户端实现方法,其特征在于:包括以下步骤:
A.建立监听控制模块和设备管理客户端核心协议栈,设备管理客户端启动时加载监听控制模块,所述监听控制模块常驻内存;
B.监听控制模块监听来自设备管理服务器和用户的设备管理服务请求,当监听到设备管理服务请求时,在内存中加载设备管理客户端核心协议栈。
8.根据权利要求7所述的设备管理客户端实现方法,其特征在于:所述步骤B之后还包括步骤:C.监听控制模块监听设备管理服务完成情况,当监听控制模块监听到设备管理服务已经完成时,从内存中卸载设备管理客户端核心协议栈。
9.根据权利要求8所述的设备管理客户端实现方法,其特征在于:在步骤B和C之间还包括监听控制模块监听到设备管理服务未完成被异常中止时,保存现场参数并重新加载设备管理客户端核心协议栈的步骤。
10.根据权利要求7所述的设备管理客户端实现方法,其特征在于:所述步骤A中,所述监听控制模块以服务或进程的方式加载。
11.根据权利要求10所述的设备管理客户端实现方法,其特征在于:所述步骤A中,所述监听控制模块以系统进程的方式加载。
12.根据权利要求7所述的设备管理客户端实现方法,其特征在于:所述步骤A中,所述监听控制模块以后台方式运行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101052623A CN101478832B (zh) | 2009-01-22 | 2009-01-22 | 一种移动终端、设备管理客户端及其实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101052623A CN101478832B (zh) | 2009-01-22 | 2009-01-22 | 一种移动终端、设备管理客户端及其实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101478832A CN101478832A (zh) | 2009-07-08 |
CN101478832B true CN101478832B (zh) | 2012-07-25 |
Family
ID=40839449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101052623A Active CN101478832B (zh) | 2009-01-22 | 2009-01-22 | 一种移动终端、设备管理客户端及其实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101478832B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3099011B1 (en) * | 2014-02-26 | 2019-07-03 | Huawei Technologies Co., Ltd. | Interface management service entity, functional service entity and network element management method |
CN106095568B (zh) * | 2016-06-01 | 2019-10-29 | 努比亚技术有限公司 | 内存管理装置、移动终端及方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1512335A (zh) * | 2002-12-31 | 2004-07-14 | 北京科泰世纪科技有限公司 | 基于构件的操作系统动态设备驱动的方法 |
CN1859177A (zh) * | 2005-11-10 | 2006-11-08 | 华为技术有限公司 | 一种设备管理中定制任务处理方法 |
US20080195693A1 (en) * | 2005-10-25 | 2008-08-14 | Huawei Technologies Co., Ltd. | Method and Device for Monitoring and Upgrading Software in Device Management |
-
2009
- 2009-01-22 CN CN2009101052623A patent/CN101478832B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1512335A (zh) * | 2002-12-31 | 2004-07-14 | 北京科泰世纪科技有限公司 | 基于构件的操作系统动态设备驱动的方法 |
US20080195693A1 (en) * | 2005-10-25 | 2008-08-14 | Huawei Technologies Co., Ltd. | Method and Device for Monitoring and Upgrading Software in Device Management |
CN1859177A (zh) * | 2005-11-10 | 2006-11-08 | 华为技术有限公司 | 一种设备管理中定制任务处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101478832A (zh) | 2009-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103064716B (zh) | 移动终端设备快速卸载应用程序的方法 | |
CN102375753B (zh) | 移动终端预置应用的方法及移动终端 | |
CN104220985A (zh) | 使用用户空间同步增强休眠和恢复处理的方法和装置 | |
US20110154475A1 (en) | Modem and method for conserving power consumption of an electronic device | |
CN103685391B (zh) | 一种使用静态网络地址的终端设备的自动升级方法 | |
CN101925098B (zh) | 移动终端及其故障恢复方法 | |
CN103729210A (zh) | 一种实现一个刷机包支持多种制式智能终端的方法及装置 | |
US10224972B2 (en) | Systems, methods, and computer-readable media for tracking updates and loading data | |
CN102665010A (zh) | 移动终端和通话方法 | |
CN108156312A (zh) | 一种控制sim卡功能菜单显示的方法、终端及存储装置 | |
CN107211380A (zh) | 呼叫补充业务配置同步方法、装置及系统 | |
CN101217401B (zh) | 一种基站控制器的升级、备份方法及装置 | |
CN101478832B (zh) | 一种移动终端、设备管理客户端及其实现方法 | |
CN111083564B (zh) | 一种智能电视升级方法及智能终端、智能外设和智能电视 | |
CN104572311A (zh) | 一种基于蓝牙的应用程序同步装置及方法 | |
CN102710859A (zh) | 终端定时开机的处理方法及移动终端 | |
CN108874410B (zh) | 补丁管理方法及装置 | |
CN108628705A (zh) | 数据库恢复方法、装置、计算机设备和存储介质 | |
CN101932145A (zh) | 一种无线通信系统中实现软件版本管理的装置及方法 | |
CN104461659B (zh) | 一种高可靠性的计算机启动方法 | |
CN114339721A (zh) | eSIM卡号码管理方法、存储介质、电子设备及装置 | |
CN104581326A (zh) | 操控设备与电视之间的交互方法和装置 | |
CN103235728A (zh) | Android终端中预置第三方应用的安装方法和装置 | |
CN111132097A (zh) | 无线模块的驱动方法及装置、无线模块、终端及存储介质 | |
CN107528714B (zh) | 脚本处理方法、装置、系统及路由器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |