通过联网功能主动连接产品的制造方提供的目标地址,获取实现产品业务功能的产品业务逻辑代码,并将这些代码直接下载到终端设备的RAM中,这样代码运行装置在运行代码时可以直接从RAM中获取代码。
[0078]该运行单元15,被配置为运行终端设备的内存中的产品业务逻辑代码。
[0079]代码运行装置在终端设备启动后,就将终端设备的flash或ROM中的基本功能代码加载到了终端设备的RAM中,通过上述步骤又将产品的制造方编写的产品业务逻辑代码从目标地址处直接下载到RAM中,此时代码运行装置运行RAM中的代码就可以实现终端设备的全部功能。
[0080]本实施例,通过在代码运行装置中实现通用功能框架,提高代码运行装置的通用性,并节省存储空间,再通过与产品的制造方提供的目标地址连接,将实现产品业务功能的代码直接下载到终端设备的内存中运行,减少终端设备固件升级的流程,不用在终端设备中实现业务功能升级,大大提尚广品的鲁棒性。
[0081]可选的,连接功能包括以下至少一种:无线保真WIFI功能、有线连接功能、蓝牙功能以及红外线连接功能。
[0082]相关的连接技术可以支持各种方式的连接,本实施例的代码运行装置与产品的制造方提供的目标地址连接时,可以通过WIF1、有线连接、蓝牙、红外等方式与目标地址连接,该目标地址处可以是产品服务器、产品云端、制造方网站等。
[0083]可选的,联网信息包括目标地址、连接目标地址的认证信息、终端设备的类型以及广品业务的标识。
[0084]图4是根据一示例性实施例示出的一种代码运行装置框图。参照图4,该代码运行装置可以用于终端设备中,终端设备可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理、各种家用电器等电子设备。代码运行装置在图3所示框图的基础上,代码获取单元13还包括:连接模块131、认证模块132以及代码获取模块133。
[0085]该连接模块131,被配置为通过连接功能连接目标地址;
[0086]代码运行装置获取到包含目标地址、连接目标地址的认证信息、终端设备的类型以及产品业务的标识等信息后,即可通过初始化过程中实现的连接功能连接目标地址。
[0087]该认证模块132,被配置为根据认证信息获取访问目标地址的权限;
[0088]通常为了信息安全,登录目标地址处的产品服务器、产品云端、制造方网站等时,需要对登陆对象进行认证,当代码运行装置将认证信息提供给对方后,通过预先设置的认证机制确定代码运行装置的访问权限。代码运行装置在获取到访问权限后即可访问目标地址处的产品服务器、产品云端、制造方网站等。
[0089]该代码获取模块133,被配置为从目标地址处获取与终端设备的类型和产品业务的标识匹配的产品业务逻辑代码。
[0090]终端设备的类型和产品业务的标识与唯一的产品业务逻辑代码匹配,通过这两个信息代码运行装置即可获取到产品的制造方预先编写好的产品业务逻辑代码匹配,下载至本地的RAM后,即可运行实现产品的业务。
[0091]本实施例,通过与产品的制造方提供的目标地址连接,将实现产品业务功能的代码直接下载到终端设备的内存中运行,减少终端设备固件升级的流程,不用在终端设备中实现业务功能升级,大大提尚广品的鲁棒性。
[0092]图5是根据一示例性实施例示出的一种代码运行装置框图。参照图5,该代码运行装置可以用于终端设备中,终端设备可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理、各种家用电器等电子设备。代码运行装置在图3所示框图的基础上,还包括:编译单元16。
[0093]该编译单元16,被配置为编译基本功能代码生成函数映射表,函数映射表包括基本功能代码中的所有函数的存储地址和函数名称的映射关系,基本功能代码用于完成终端设备的初始化处理;
[0094]该运行单元15,被配置为在运行产品业务逻辑代码的过程中,当调用函数时,根据函数映射表获取与函数的函数名称对应的函数的存储地址,跳转至存储地址处运行函数。
[0095]代码运行装置在初始编译基本功能代码的过程中生成一个函数映射表,该函数映射表记录了代码运行装置在初始设计时实现的通用功能框架中所有函数的存储地址和函数名称的映射关系。当代码运行装置运行产品业务逻辑代码的过程中需要调用通过功能框架的函数时,根据需要调用的函数的函数名称向函数映射表查询该函数在flash或ROM中的地址,然后跳转至该地址处运行该函数。
[0096]图6是根据一示例性实施例示出的一种嵌入式芯片的框图。参照图6,嵌入式芯片600包括处理组件601和网络接口 602,处理组件601进一步包括一个或多个处理器,处理组件601被配置为执行指令,以执行上述图1或图2所示方法是实施例中的步骤。一个有线或无线、蓝牙、红外等网络接口 602被配置为将嵌入式芯片600连接到网络。
[0097]图7是根据一示例性实施例示出的一种终端设备的框图。例如,终端设备800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理、各种家用电器等电子设备。
[0098]参照图7,终端设备800可以包括以下一个或多个组件:处理组件802,存储器804,电力组件806,多媒体组件808,音频组件810,输入/输出(input/output,简称:1/0)的接口 812,传感器组件814,以及通信组件816。
[0099]处理组件802可以是图6所示的嵌入式芯片,处理组件802通常控制终端设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
[0100]存储器804被配置为存储各种类型的数据,包括存储处理组件可执行的代码,以支持在终端设备800的操作。上述可执行代码包括基本功能代码和产品业务逻辑代码;基本功能代码用于完成终端设备的初始化处理,以实现终端设备的连接功能;产品业务逻辑代码用于实现终端设备的业务功能。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称:SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-OnlyMemory,简称:EEPR0M),可擦除可编程只读存储器(Erasable Programmable Read OnlyMemory,简称:EPROM),可编程只读存储器(Programmable Red-Only Memory,简称:PROM),只读存储器(Read-Only Memory,简称:R0M),磁存储器,快闪存储器,磁盘或光盘。
[0101]电力组件806为终端设备800的各种组件提供电力。电力组件806可以包括电源管理系统,一个或多个电源,及其他与为终端设备800生成、管理和分配电力相关联的组件。
[0102]多媒体组件808包括在终端设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(Liquid Crystal Display,简称:IXD)和触摸面板(TouchPaneI,简称:TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当终端设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0103]音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(Microphone,简称:MIC),当终端设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被可选存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
[0104]I/0接口 812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
[0105]传感器组件814包括一个或多个传感器,用于为终端设备800提供各个方面的状态评估。例如,传感器组件814可以检测到终端设备800的打开/关闭状态,组件的相对定位,例如组件为终端设备800的显示器和小键盘,传感器组件814还可以检测终端设备800或终端设备800 —个组件的位置改变,用户与终端设备800