一种可穿戴设备的系统函数调用方法及其可穿戴设备的制造方法

文档序号:9417194阅读:220来源:国知局
一种可穿戴设备的系统函数调用方法及其可穿戴设备的制造方法
【技术领域】
[0001]本申请涉及通信技术领域,特别是涉及一种可穿戴设备的系统函数调用方法及其可穿戴设备。
【背景技术】
[0002]目前,由于智能手表具有智能手机不可比拟的便携性和低功耗特点,用户广泛地在特定场合(如,跑步、睡眠、行走)使用。现有的智能手表大多数配置的处理器为ARM嵌入式处理器(例如,ARM Cortex-M4),其操作系统一般为实时操作系统(RTOS),例如,FreeRTOS、RTEMS、ecos、ucOS,uclinux 等。
[0003]然而,这些实时操作系统RTOS均不能实现类似android、1S、windows等操作系统的系统调用功能,因此,无法实现第三方应用程序下载功能,从而导致用户无法通过升级智能手表的功能。

【发明内容】

[0004]本申请主要解决的技术问题是提供一种可穿戴设备的系统函数调用方法及其可穿戴设备,能够实现第三方应用程序的下载以扩展可穿戴设备的功能。
[0005]为解决上述技术问题,本申请采用的一个技术方案是:提供一种可穿戴设备的系统函数调用方法,所述方法包括:当应用程序接收到下载请求时,触发处理器产生请求特权操作或访问系统资源的指令以及保存通用寄存器当前的参数;从所述请求特权操作或访问系统资源的指令中获取SVC编号,并根据所述SVC编号获取所述SVC编号对应的系统函数,其中,所述SVC编号用于指示要请求的系统服务;根据所述通用寄存器的参数调用所述系统函数,响应所述下载请求运行下载进程。其中,所述应用程序接收下载请求时触发处理器产生请求特权操作或访问系统资源的指令以及保存通用寄存器当前的参数的步骤具体为:当应用程序接收下载请求时,触发处理器产生请求特权操作或访问系统资源的指令以及保存通用寄存器中当前与所述应用程序相关联的参数。
[0006]其中,所述当应用程序接收到下载请求时触发处理器产生请求特权操作或访问系统资源的指令以及保存通用寄存器当前的参数的步骤具体为:当应用程序接收到下载请求时,触发处理器产生请求特权操作或访问系统资源的指令以及保存通用寄存器中当前与所述应用程序相关联的参数。
[0007]其中,所述根据所述通用寄存器的参数调用所述系统函数,响应所述下载请求运行下载进程的步骤包括:从保存的所述通用寄存器的参数中获取所述系统函数需要传递的参数;根据所述SVC编号跳转到所述系统函数,并根据所述系统函数需要传递的参数,响应所述下载请求运行下载进程。
[0008]其中,保存通用寄存器中与所述应用程序相关的参数的步骤具体为:将所述通用寄存器中当前与所述应用程序相关联的参数以及所述参数的存储位置对应保存。
[0009]其中,所述根据所述通用寄存器的参数调用所述系统函数,响应所述下载请求运行下载进程的步骤之后,所述方法还包括:当完成下载后,将所述通用寄存器的参数恢复为保存的所述通用寄存器的参数。
[0010]为解决上述技术问题,本申请采用的一个技术方案是:提供一种可穿戴设备的可穿戴设备,所述可穿戴设备包括:生成模块、存储模块、获取模块以及调用模块;所述生成模块用于当应用程序接收到下载请求时,触发处理器产生请求特权操作或访问系统资源的指令;所述存储模块用于当所述生成模块产生所述请求特权操作或访问系统资源的指令时,保存通用寄存器当前的参数;所述获取模块用于从所述生成模块产生的所述请求特权操作或访问系统资源的指令中获取SVC编号,并根据所述SVC编号获取所述SVC编号对应的系统函数,其中,所述SVC编号用于指示要请求的系统服务;所述调用模块用于根据所述存储模块保存的所述通用寄存器的参数调用所述获取模块获取的所述系统函数,响应所述下载请求运行下载进程。
[0011]其中,所述处理器为ARM处理器。
[0012]其中,所述存储模块用于保存通用寄存器中当前与所述应用程序相关联的参数。
[0013]其中,所述调用模块包括获取单元以及调用单元;所述获取单元用于从保存的所述通用寄存器的参数中获取所述系统函数需要传递的参数;所述调用模块用于根据所述SVC编号跳转到所述系统函数,并根据所述系统函数需要传递的参数,响应所述下载请求运行下载进程。
[0014]其中,所述存储模块用于将所述通用寄存器中当前与所述应用程序相关联的参数以及所述参数的存储位置对应保存;所述调用模块还用于当完成下载后,将所述通用寄存器的参数恢复为所述存储模块保存的所述通用寄存器的参数。
[0015]上述方案,可穿戴设备当应用程序接收到下载请求时,识别出应用程序需要调用系统函数,触发处理器产生SVC指令以及保存通用寄存器当前的参数,从SVC指令中获取SVC编号,并根据SVC编号获取SVC编号对应的系统函数,根据通用寄存器的参数调用系统函数,响应下载请求运行下载进程,可以实现第三方应用程序的下载以扩展可穿戴设备的功能。
【附图说明】
[0016]图1是本申请可穿戴设备的系统函数调用方法一实施例的流程图;
[0017]图2是本申请可穿戴设备的系统函数调用方法另一实施例的流程图;
[0018]图3是本申请可穿戴设备一实施例的结构示意图;
[0019]图4是本申请可穿戴设备另一实施例的结构示意图。
【具体实施方式】
[0020]以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本申请。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施方式中也可以实现本申请。在其它情况中,省略对众所周知的装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
[0021]参阅图1,图1是本申请可穿戴设备的系统函数调用方法一实施例的流程图。本实施例的执行主体为可穿戴设备,可穿戴设备可以为智能手表,也可以为其他的可穿戴设备。本实施例的可穿戴设备采用的操作系统为实时操作系统。其中,实时操作系统是指当外界事件或数据产生时,能够接收并以足够快的速度予以处理,其处理的结果又能在规定时间内来控制生产过程或处理系统做出快速响应,调度一切可利用的资源完成实时任务,并控制所有实时任务协调一致运行的操作系统。
[0022]本实施例中可穿戴设备的系统函数调用方法包括以下步骤:
[0023]SlOl:当应用程序接收到下载请求时,触发处理器产生请求特权操作或访问系统资源的指令以及保存通用寄存器当前的参数。
[0024]当用户通过可穿戴设备的应用市场或其他网页下载第三方提供的应用程序时,向可穿戴设备发送下载请求。
[0025]当可穿戴设备监测到应用程序(可穿戴设备已安装的浏览器或应用市场等)接收到下载请求时,识别为该应用程序需要调用系统函数(系统函数为操作系统的函数)。可穿戴设备触发处理器产生请求特权操作或访问系统资源的指令,即SVC指令,以通过SVC指令触发处理器异常。
[0026]其中,处理器可以为ARM嵌入式处理器,例如,ARM Cortex_M4,但并不限于此,还可以为其他的嵌入式处理器。SVC指令嵌入了一个数字,该数字通常为SVC编号,SVC编号用于指示要请求的系统服务。
[0027]当可穿戴设备产生SVC指令时,保存处理器的通用寄存器当前的参数。例如,可穿戴设备将通用寄存器当前的参数保持到堆栈中。
[0028]S102:从所述请求特权操作或访问系统资源的指令中获取SVC编号,并根据所述SVC编号获取所述SVC编号对应的系统函数,其中,所述SVC编号用于指示要请求的系统服务。
[0029]可穿戴设备响应该SVC指令并运行SVC处理程序,从处理器产生的请求特权操作或访问系统资源的指令(SVC指令)中获取SVC编号,并根据SVC编号获取SVC编号对应的系统函数,根据该系统函数的入口,从应用程序跳转到该系统函数,其中,SVC编号用于指示要请求的系统服务。此时,SVC编号对应的要请求的系统服务为下载服务。
[0030]S103:根据所述通用寄存器的参数调用所述系统函数,响应所述下载请求运行下载进程。
[0031]可穿戴设备在跳转到SVC编号对应的系统函数后,根据已经保存的通用寄存器的参数获取参数指针执行该系统函数,响应该下载请求运行下载进程。其中,该参数指针为系统函数的参数。
[0032]可以理解的是,在可穿戴设备完成下载任务后,结束此次调用系统函数,退出系统函数,将通用寄存器中各存储位置的参数对应恢复为步骤SlOl中已经保存的通用寄存器的
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1