[发明专利]基于低功耗的订阅式设备访问方法有效
申请号: | 201410362142.2 | 申请日: | 2014-07-28 |
公开(公告)号: | CN104166687B | 公开(公告)日: | 2017-09-29 |
发明(设计)人: | 宫尚;雷翔;金忠鹤 | 申请(专利权)人: | 东方通信股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 杭州浙科专利事务所(普通合伙)33213 | 代理人: | 吴秉中 |
地址: | 310007 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 功耗 订阅 设备 访问 方法 | ||
技术领域
本发明涉及一种基于低功耗的订阅式设备访问方法。
背景技术
在嵌入式开发中有很多应用需要对外围设备进行管理及周期性访问的需求,通常的方式是各自的模块或应用程序都独立管理,访问自己需要的设备,一般采用轮询方式。对于周期性获取,传统的实现方案就是利用操作系统提供的定时器,采取循环定时查询方式。在传统方案下将不利于嵌入式系统低功耗的实现,并且也会对定时器资源造成巨大的压力;使用这种方式不仅浪费系统资源,而且很难使嵌入式设备整体进入良好的休眠,从而导致功耗的浪费,增加了对电源需求的成本。例如电源应用模块需要周期性跟踪设备当前的电池电量信息,全球定位系统(GPS)应用需要周期性获取当前的位置信息,但GPS模块自身功耗很大,长时间开启将缩短嵌入式设备的单次使用时间。
随着技术地不断发展,为了更好地协调软、硬件资源, 订阅技术应运而生。简单来讲,订阅技术与现实生活中订阅牛奶,订阅手机天气预报,订阅报纸等功能相似,就是用户与提供商预定好后,提供商按用户要求提供相关的资源或信息等。
目前,实现订阅方式的系统一般采用代理-服务器的结构或者代理-服务器-客户端的结构,在服务器-客户端之间通常采用客户端/服务器 (C/S)或浏览器/服务器(B/S)模式,代理-服务器之间的通信通常基于SNMP 协议或 TCP/UDP 协议进行。
现有技术中,主要应用于服务器网络模式,在协议层面上定义的订阅机制,没有涉及嵌入式设备内部具体的实现方法,没有针对资源和功耗进行管理。所以以上的实现方式根本无法应用在嵌入式设备上,因为嵌入式设备资源有限,功耗有限。因此需要本领域技术人员迫切解决的一个技术问题就是:如何能够创新地提出一种基于低功耗的订阅式设备访问方法。
发明内容
针对现有技术中存在的问题,本发明的目的在于提供一种基于低功耗的订阅式设备访问方法的技术方案,以满足低功耗要求的设备管理、访问的需求。
所述的基于低功耗的订阅式设备访问方法,其特征在于包括订阅的处理和时间调整的处理;1)订阅的处理包括设备注册、用户请求处理和周期超时处理,2)时间调整的处理包括增加时间周期处理、删除时间周期处理、修改时间周期处理和定时器超时处理。
所述的基于低功耗的订阅式设备访问方法,其特征在于所述的设备注册是对支持订阅功能的设备注册信息的处理,注册时需要提供注册参数,注册参数包括设备名称、建立资源的回调函数、释放资源的回调函数和周期超时的回调函数,对注册的设备按设备名称进行管理及提供服务,当设备名称相同时不能进行设备注册;注册时根据设备名称遍历设备管理链表,如果设备名存在,不能注册设备,如果设备名不存在,创建设备节点,保存参数到设备节点中,初始化设备节点中的用户请求管理链表,增加设备节点到设备管理链表中;建立资源的回调函数和释放资源的回调函数根据设备的需要可以不进行实现,当不需要实现时,参数可为空,周期超时的回调函数一定要实现且不能为空;
所述的用户请求处理是对接收到的用户请求类型判定是订阅增加请求类型、订阅删除请求类型或订阅修改请求类型,然后进入不同流程进行处理,用户请求内容包含用户标识、请求的类型、访问设备的周期、周期超时时接收消息的数据标识、应答时接收消息的控制标识、访问设备的名称和是否立即执行标识;立即执行标识指用户请求处理完成时立即调用周期超时的回调函数,无需等到超时再调用;
所述的周期超时处理是订阅周期超时,会收到超时通知,通知中包含超时周期,根据超时周期遍历时间管理链表,查找到对应的时间节点,遍历该时间节点中的周期节点管理链表管理的周期节点,通过周期节点找到关联的用户请求节点,即周期节点有指向用户请求节点的指针,通过用户请求节点找到对应的设备节点,即用户请求节点有指向设备节点的指针,调用设备注册的周期超时的回调函数,该函数通过数据标识通知用户订阅信息,该遍历直到周期节点管理链表最后一个周期节点通知用户订阅信息后结束。
所述的基于低功耗的订阅式设备访问方法,其特征在于所述的增加时间周期处理,是根据用户请求节点中的时间周期,遍历时间管理链表,如果没有找到相同时间周期的时间节点,创建该周期的时间节点,保存周期值,初始化时间节点中周期节点管理链表,启动该周期定时器,增加时间节点到时间管理链表中,创建周期节点,建立与用户请求节点的关联关系,增加该周期节点到时间节点中的周期节点管理链表中;如果找到对应的时间节点时,创建周期节点,建立与用户请求节点的关系,增加该周期节点到时间节点中的周期节点管理链表中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东方通信股份有限公司,未经东方通信股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410362142.2/2.html,转载请声明来源钻瓜专利网。