发明内容
本申请实施例所要解决的技术问题是提供一种数据处理方法,可以节省恶意请求所占用的资源,而且可以将恶意请求所占用的资源用于正常请求的处理,进而可以提高正常请求的响应性能。
相应的,本申请实施例还提供了一种数据处理装置、一种设备、一种机器可读介质和一种操作系统,用以保证上述方法的实现及应用。
为了解决上述问题,本申请实施例公开了一种数据处理方法,包括:
接收第一对象向第二对象发起的请求;所述第一对象对应有属性信息,所述属性信息用于确定对所述请求的处理方式;
依据所述第一对象对应的属性信息,对所述请求进行响应。
可选地,所述属性信息包括:资源配额,所述依据所述第一对象对应的属性信息,对所述请求进行响应,包括:
依据所述请求对应的占用资源、以及所述第一对象对应的资源配额,对所述请求进行响应。
可选地,所述依据所述请求对应的占用资源、以及所述第一对象对应的资源配额,对所述请求进行响应,包括:
若所述请求对应的占用资源超过所述第一对象对应的资源配额,则拒绝所述请求。
可选地,所述请求包括:预设时间段内的请求;所述依据所述请求对应的占用资源、以及所述第一对象对应的资源配额,对所述请求进行响应,包括:
依据所述预设时间段内未被处理的请求对应的占用资源、以及所述第一对象对应的资源配额,对所述预设时间段内的最近一次请求进行响应。
可选地,所述对所述预设时间段内的最近一次请求进行响应,包括:
若所述预设时间段内未被处理的请求对应的占用资源超过所述第一对象对应的资源配额,则拒绝所述预设时间段内的最近一次请求。
可选地,所述属性信息包括:资源配额,所述依据所述第一对象对应的属性信息,对所述请求进行响应,包括:
若所述请求对应的占用资源未超过所述第一对象对应的资源配额,则将所述请求添加至数据结构;所述数据结构中请求被所述第二对象处理。
可选地,所述属性信息还包括:优先级,所述数据结构中请求被按照所述优先级进行存储,或者,所述数据结构中请求被按照所述优先级进行处理。
可选地,所述属性信息包括:资源配额和优先级,所述方法还包括:
若所述请求对应的占用资源超过所述第一对象对应的资源配额,则降低所述第一对象对应的优先级。
可选地,所述属性信息包括:资源配额,所述资源配额对应的资源包括如下资源中的至少一种:
内存资源、消息资源和文件描述符资源。
可选地,所述属性信息包括:资源配额和/或优先级;
所述资源配额、或者所述优先级的确定依据包括如下依据中的至少一种:
所述第一对象对应的类型;
所述第一对象是否在黑名单中;
所述第一对象是否在白名单中;
所述第一对象对应的权限。
可选地,在所述接收第一对象向第二对象发起的请求之前,所述方法还包括:
针对第一对象与第二对象之间的连接,确定所述第一对象对应的属性信息;所述第一对象基于所述连接向所述第二对象发起请求。
可选地,所述方法的至少一个步骤通过操作系统的内核层、或者框架层执行。
另一方面,本申请实施例还公开了一种数据处理装置,包括:
请求接收模块,用于接收第一对象向第二对象发起的请求;所述第一对象对应有属性信息,所述属性信息用于确定对所述请求的处理方式;以及
请求响应模块,用于依据所述第一对象对应的属性信息,对所述请求进行响应。
可选地,所述属性信息包括:资源配额,所述请求响应模块包括:
第一请求响应子模块,用于依据所述请求对应的占用资源、以及所述第一对象对应的资源配额,对所述请求进行响应。
可选地,所述第一请求响应子模块包括:
第一请求响应单元,用于若所述请求对应的占用资源超过所述第一对象对应的资源配额,则拒绝所述请求。
可选地,所述请求包括:预设时间段内的请求;所述第一请求响应子模块包括:
第二请求响应单元,用于依据所述预设时间段内未被处理的请求对应的占用资源、以及所述第一对象对应的资源配额,对所述预设时间段内的最近一次请求进行响应。
可选地,所述第二请求响应单元包括:
请求拒绝子单元,用于若所述预设时间段内未被处理的请求对应的占用资源超过所述第一对象对应的资源配额,则拒绝所述预设时间段内的最近一次请求。
可选地,所述属性信息包括:资源配额,所述请求响应模块包括:
第二请求响应子模块,用于若所述请求对应的占用资源未超过所述第一对象对应的资源配额,则将所述请求添加至数据结构;所述数据结构中请求被所述第二对象处理。
可选地,所述属性信息还包括:优先级,所述数据结构中请求被按照所述优先级进行存储,或者,所述数据结构中请求被按照所述优先级进行处理。
可选地,所述属性信息包括:资源配额和优先级,所述装置还包括:
优先级降低模块,用于若所述请求对应的占用资源超过所述第一对象对应的资源配额,则降低所述第一对象对应的优先级。
可选地,所述属性信息包括:,所述资源配额对应的资源包括如下资源中的至少一种:
内存资源、消息资源和文件描述符资源。
可选地,所述属性信息包括:资源配额和/或优先级;
所述资源配额、或者所述优先级的确定依据包括如下依据中的至少一种:
所述第一对象对应的类型;
所述第一对象是否在黑名单中;
所述第一对象是否在白名单中;
所述第一对象对应的权限。
可选地,所述装置还包括:
属性确定模块,用于在所述请求接收模块接收第一对象向第二对象发起的请求之前,针对第一对象与第二对象之间的连接,确定所述第一对象对应的属性信息;所述第一对象基于所述连接向所述第二对象发起请求。
可选地,所述装置的至少一个模块位于操作系统的内核层、或者框架层。
再一方面,本申请实施例还公开了一种数据处理方法,包括:
接收第一对象向第二对象发送的连接建立请求;
针对所述连接请求,确定所述第一对象对应的属性信息;所述属性信息用于确定对所述第一对象向所述第二对象发起的请求的处理方式。
可选地,所述第一对象为第一进程,所述第二对象为第二进程,所述方法的至少一个步骤通过操作系统的内核层执行,所述内核层的功能包括:进程间通信。
可选地,所述属性信息包括:资源配额,所述资源配额对应的资源包括如下资源中的至少一种:
内存资源、消息资源和文件描述符资源。
可选地,所述属性信息包括:资源配额和/或优先级;
所述资源配额、或者所述优先级的确定依据包括如下依据中的至少一种:
所述第一对象对应的类型;
所述第一对象是否在黑名单中;
所述第一对象是否在白名单中;
所述第一对象对应的权限。
又一方面,本申请实施例还公开了一种数据处理装置,包括:
请求接收模块,用于接收第一对象向第二对象发送的连接建立请求;以及
属性确定模块,用于针对所述连接请求,确定所述第一对象对应的属性信息;所述属性信息用于确定对所述第一对象向所述第二对象发起的请求的处理方式。
可选地,所述第一对象为第一进程,所述第二对象为第二进程,所述装置的至少一个模块位于操作系统的内核层,所述内核层的功能包括:进程间通信。
再一方面,本申请实施例还公开了一种设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述设备执行前述一个或多个所述的方法。
又一方面,本申请实施例公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得设备执行前述一个或多个所述的方法。
再一方面,本申请实施例还公开了一种用于设备的操作系统,包括:
请求接收单元,用于接收第一对象向第二对象发起的请求;所述第一对象对应有属性信息,所述属性信息用于确定对所述请求的处理方式;以及
请求响应单元,用于依据所述第一对象对应的属性信息,对所述请求进行响应。
再一方面,本申请实施例还公开了一种用于设备的操作系统,包括:
请求接收单元,用于接收第一对象向第二对象发送的连接建立请求;以及
属性确定单元,用于针对所述连接请求,确定所述第一对象对应的属性信息;所述属性信息用于确定对所述第一对象向所述第二对象发起的请求的处理方式。
与现有技术相比,本申请实施例包括以下优点:
本申请实施例的第一对象可以对应有属性信息,所述属性信息用于确定对所述请求的处理方式;上述处理方式可以包括:是否响应(如允许或者拒绝等)、或者接受处理的优先等级(如优先处理、或者滞后处理等);本申请实施例在依据第一对象对应的属性信息对所述请求进行响应的过程中,可以依据第一对象对应的属性信息,拒绝具备恶意性的请求;因此,本申请实施例可以在一定程度上避免恶意请求占用资源的情形,不仅可以节省恶意请求所占用的资源,而且可以将恶意请求所占用的资源用于正常请求的处理,进而可以提高正常请求的响应性能。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
本申请实施例提供了一种数据处理方案,该方案可以接收第一对象向第二对象发起的请求;所述第一对象可以对应有属性信息,所述属性信息用于确定对所述请求的处理方式;依据所述第一对象对应的属性信息,对所述请求进行响应。
本申请实施例中,对象可以指操作系统中的对象,上述对象可以包括但不限于:进程、线程、或者服务(service)等。其中,服务为操作系统(例如安卓操作系统)的组件,其用于在后台处理一些耗时的逻辑,或者去执行某些需要长期运行的任务,甚至可以在程序退出的情况下,让服务在后台继续保持运行状态。
第一对象和第二对象可以为相互通信的不同对象,其中,第一对象可以与第二对象建立连接,并基于该连接向第二对象发起请求,以使第二对象对该请求进行处理。
本申请实施例的第一对象可以对应有属性信息,所述属性信息用于确定对所述请求的处理方式,上述处理方式可以包括:是否响应(如允许或者拒绝等)、或者接受处理的优先等级(如优先处理、或者滞后处理等);本申请实施例在依据第一对象对应的属性信息对所述请求进行响应的过程中,可以依据第一对象对应的属性信息,拒绝具备恶意性的请求;因此,本申请实施例可以在一定程度上避免恶意请求占用资源的情形,不仅可以节省恶意请求所占用的资源,而且可以将恶意请求所占用的资源用于正常请求的处理,进而可以提高正常请求的响应性能。
可选地,上述属性信息可以包括:资源配额和/或优先级。其中,资源配额可用于对第一对象的请求所占用资源进行控制,该资源配额可以为第一对象的请求所占用资源的容量上限等;优先级是在处理多个请求的情况下、决定一个请求接受处理的优先等级的参数,通常优先级高的被优先处理。这样,本申请实施例在依据第一对象对应的属性信息对所述请求进行响应的过程中,可以依据第一对象对应的资源配额、和/或、优先级,判断第一对象发起的请求是否具备恶意性,并依据得到的判断结果进行响应,例如,可以拒绝具备恶意性的请求等;因此,本申请实施例可以在一定程度上避免恶意请求占用资源的情形,不仅可以节省恶意请求所占用的资源,而且可以将恶意请求所占用的资源用于正常请求的处理,进而可以提高正常请求的响应性能。
在本申请的一种实施例中,第一对象为第一进程,第二对象为第二进程,第一进程和第二进程可以基于IPC(进程间通信,Inter-Process Communication)技术进行通信。IPC技术的例子可以包括:管道(Pipe)、信号(Signal)、跟踪(Trace)、套接字(Socket)、消息队列(Message)、共享内存(Share Memory)和信号量(Semaphore)等。由于可以在一定程度上避免恶意请求占用资源的情形,故本申请实施例可以增强操作系统的IPC效率。
基于C/S的通信方式广泛应用于从互联网和数据库访问到嵌入式手持设备内部通信等各个领域。在例如安卓、IOS、YunOS的移动操作系统中,为了向应用开发者提供丰富多样的功能,基于C/S的通信方式更是无处不在,诸如媒体播放,视音频频捕获,到各种让移动设备更智能的传感器(加速度,方位,温度,光亮度等)都可由不同的服务负责管理,应用程序作为客户端与这些服务建立连接便可以使用这些服务,花很少的时间和精力就能开发丰富的功能。服务提供的功能可以包括但不限于:定位、录音、摄像、电话等功能。在基于C/S的通信场景下,第一对象可以作为客户端,第二对象可以作为服务端。
前述的管道、信号、跟踪、套接字、消息队列、共享内存和信号量等IPC技术可以用于在移动操作系统中实现基于C/S的通信,然而,上述IPC技术在传输性能、可靠性和安全性等方面存在一定的问题。
为了提高传输性能、可靠性和安全性,在本申请的一种可选实施例中,安卓操作系统对应的IPC技术可以包括:Binder(捆绑)通信技术。
Binder通信的原理为:一个进程作为服务端提供诸如定位、录音、摄像、电话、视频/音频解码、地址本查询、网络连接等服务;多个进程作为客户端向服务端发起请求,以获得所需要的服务。对Binder通信而言,Binder可以看成服务器提供的实现某个特定服务的访问接入点,客户端通过这个访问接入点向服务器发送请求来使用该服务;对客户端而言,Binder可以看成是通向服务端的管道入口,要想和某个服务器通信首先必须建立这个管道并获得管道入口。
参照图1,示出了本申请实施例的一种Binder通信系统的示例性结构图,从组件视角来说,该系统具体包括客户端101、服务端102、服务管理器(ServiceManager)103以及binder驱动104;
其中,服务管理器103用于管理操作系统中的服务。服务端102用于向服务管理器103注册服务。客户端103用于从服务管理器103获取服务端信息。进一步,客户端101根据得到的服务端信息,建立与服务端102所在的服务进程之间的连接,然后就可以直接与服务进程交互。
图1中的客户端101、服务端102、服务管理器103之间交互都是虚线表示,是由于它们彼此之间不是直接交互的,而是都通过与binder驱动104进行交互的,从而实现IPC通信方式。其中,Binder驱动104位于内核空间,客户端101、服务端102、服务管理器103位于用户空间。
可以理解,上述第一对象为第一进程、第二对象为第二进程只是作为可选实施例,本申请实施例对于具体的第一对象和第二对象不加以限制。例如,第一对象可以为第一设备上运行的客户端,第二对象可以为第二设备上运行的服务端等,此种情况下,第一对象和第二对象可以通过有线网络或者无线网络进行通信。
本申请实施例的第一对象和/或第二对象所适用的设备具体可以包括但不限于:智能手机、平板电脑、电子书阅读器、MP3(动态影像专家压缩标准音频层面3,MovingPicture Experts Group Audio Layer III)播放器、MP4(动态影像专家压缩标准音频层面4,Moving Picture Experts Group Audio Layer IV)播放器、膝上型便携计算机、车载电脑、台式计算机、机顶盒、智能电视机、可穿戴设备等等。
参照图2,示出了本申请的一种数据处理方法实施例的步骤流程图,具体可以包括如下步骤:
步骤201、接收第一对象向第二对象发起的请求;所述第一对象可以对应有属性信息,所述属性信息用于确定对所述请求的处理方式;
步骤202、依据所述第一对象对应的属性信息,对所述请求进行响应。
本申请实施例所包括的至少一个步骤可由第二对象执行。其中,在第一对象和第二对象位于不同的设备的情况下,第二对象可以为服务端。在第一对象和第二对象位于相同的设备的情况下,第二对象可以为操作系统的进程,第二对象对应的第二进程可以位于操作系统的框架层(Framework)层。
参照图3,示出了本申请实施例的一种操作系统的结构示意图,该操作系统可以为基于Linux的操作系统,如安卓操作系统等,其自上到下依次包括:应用程序层301、框架(Framework)层302、系统运行库层303和内核层304。
其中,应用程序层301包括应用程序集合。以安卓系统为例,利用JAVA的跨平台性质,基于安卓系统的框架开发的应用程序可以在不编译的情况下运行于任何一台安装有安卓系统的平台。
框架层302,可用于提供应用程序编程接口,可以简化组件的重用;任何一个应用程序都可以发布它的功能块并且任何其它的应用程序都可以使用其所发布的功能块;帮助程序员快速的开发程序,并且该应用程序重用机制也使用户可以方便的替换程序组件。
在操作系统中应用程序可被设计为单独的进程,应用程序也可以根据自己的需要去决定是否需要启用多个进程,不过总而言之都与其他应用程序和系统服务是相互独立的。
进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。进程是系统进行资源分配和调度的一个独立单位。可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体,是一个“执行中的程序”。不只是程序的代码,还包括当前的活动。
一个进程可以相当于一个Sandbox沙箱,操作系统对一个应用程序对应的进程分配UID(用户标识,User Identification)和PID(进程ID,Process Identification)。其中,PID为操作系统自动分配的,用于唯一标识此进程的一个整数。
系统运行库层303具体包括:系统库和安卓运行时(Runtime),其中,系统库是框架层302的支撑,是连接框架层302与内核层304的重要纽带;安卓应用程序时采用JAVA语言编写,程序在安卓运行时中执行,故安卓运行时可以为应用程序提供运行环境。
内核层304具体包括:Linux Kernel,其可以为开源操作系统Linux的核心模块,操作系统的特有功能在Linux Kernel的基础上进行深度定制和开发。
内核层304可以包括:前述的binder驱动104,该binder驱动104可以作为第一对象对应的第一进程与第二对象对应的第二进程之间的媒介,具体地,第一进程向第二进程发送的请求可以经过binder驱动104,故binder驱动104可以执行本申请实施例所包括的至少一个步骤,具体地,接收第一对象向第二对象发起的请求,并依据所述第一对象对应的属性信息,对所述请求进行响应。
在应用用于图3或者类似图3的操作系统的情况下,本申请实施例的方法的至少一个步骤可通过操作系统的内核层304执行。可以理解,图3所示操作系统只是作为示例,实际上,本领域技术人员可以根据实际应用需求,将本申请实施例的方法应用于任意的操作系统,本申请实施例对于所应用的具体操作系统不加以限制。
本申请实施例中,资源可以指计算机系统的资源,尤其地,所述资源配额对应的资源可以指请求所占用的系统资源。
可选地,所述资源配额对应的资源可以包括如下资源中的至少一种:内存资源、消息资源和文件描述符资源,可以理解,可以针对一种资源确定对应的资源配额。其中,内存资源可以指请求所占用的内存;消息资源可以指请求所占用的消息,通常一条消息可以对应一个请求;文件描述符(file descriptor)可用于衡量请求所对应文件的占用请求,内核可以通过文件描述符来访问文件,文件描述符是非负整数。打开现存文件或新建文件时,内核会返回一个文件描述符,读写文件也需要使用文件描述符来指定待读写的文件。可以理解,内存资源、消息资源和文件描述符资源只是作为所述资源配额对应的资源的可选实施例,实际上本领域技术人员可以根据实际应用需求,确定资源配额对应的资源,例如,资源配额对应的资源可以包括:CPU资源等,本申请实施例对于资源配额对应的具体资源不加以限制。
在本申请的一种可选实施例中,在所述接收第一对象向第二对象发起的请求之前,本申请实施例的方法还可以包括:针对第一对象与第二对象之间的连接,确定所述第一对象对应的属性信息;所述第一对象基于所述连接向所述第二对象发起请求。具体地,可以在第一对象与第二对象之间的连接建立之前、或者在第一对象与第二对象之间的连接建立之后,确定所述第一对象对应的属性信息。
参照图4,示出了本申请实施例的一种在第一对象和第二对象之间建立连接的示意,其中,第一对象401向第二对象402发送的连接建立请求可由IPC子系统403中转,IPC子系统403可以包括:IPC防护插件431,IPC防护插件431可以针对该连接建立请求,确定第一对象401对应的属性信息。
可选地,数据库404中可以记录有客户端标识与属性信息之间的映射关系,客户端标识可以包括:UID、PID等,也即,可以通过UID、或者PID区分不同的客户端。这样,可以依据连接建立请求所对应第一对象401的客户端标识,在数据库404中进行查找,以得到第一对象401对应的属性信息。本申请实施例可以通过部署在IPC子系统403的IPC防护插件431,在第一对象和第二对象之间的连接被建立之前,针对连接建立请求确定第一对象401对应的属性信息;进一步,IPC防护插件431可以向第二对象402发送该连接建立请求,以建立该连接建立请求对应的连接。
数据库404中记录的属性信息可由操作系统和/或第二对象和/或用户配置得到,并且,还可以根据需求,对数据库404中记录的属性信息进行修改。
在本申请的一种可选实施例中,上述资源配额的确定依据可以包括如下依据中的至少一种:
所述第一对象对应的类型;
所述第一对象是否在黑名单中;
所述第一对象是否在白名单中;
所述第一对象对应的权限。
根据一种实施例,第一对象对应的类型可以包括:应用程序的类型,应用程序的类型具体可以包括:应用类型、或者系统类型;其中,应用类型对应有应用软件,应用软件是用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合;系统类型可以对应有系统软件,系统软件是指控制和协调计算机及外部设备,支持应用软件开发和运行的系统,是无需用户干预的各种程序的集合,主要功能是调度,监控和维护计算机系统;负责管理计算机系统中各种独立的硬件,使得它们可以协调工作;系统软件使得计算机使用者和其他软件将计算机当作一个整体而不需要顾及到底层每个硬件是如何工作的。可选地,应用类型可以对应第一资源配额,系统类型可以对应有第二资源配额,其中,第二资源配额可以大于第一资源配额;由于针对系统类型设置较高的资源配额,而针对应用类型设置较低的资源配额,故可以提高系统软件的响应性能,且可以在一定程度上降低应用软件对于系统资源的占用。
可以理解,上述应用类型、或者系统类型只是作为第一对象对应的类型的可选实施例,实际上,本领域技术人员可以根据实际应用需求确定第一对象对应的类型,例如,第一对象对应的类型还可以包括:功能类型,功能类型的例子可以包括:工具类型(比如邮箱、浏览器、云笔记等)、社交类型(比如即时通讯应用程序等)、电商类型(比如淘宝等)、地图导航类型(如高德等)、新闻资讯类型、通话类型、影音播放类型、拍摄美化类型、图书阅读类型、生活消费类型(如大众点评、旅行等)等。并且,本领域技术人员还可以根据第一对象对应的功能类型,确定对应的资源配额。例如,第一功能类型可以对应第三资源配额,第二功能类型可以对应有第四资源配额,其中,第三资源配额可以大于第四资源配额,第一功能类型的实时性可以高于第二功能类型,例如,第一功能类型为电商类型,第二功能类型可以为新闻资讯类型等,可以理解,本申请实施例对于第一对象对应的具体类型、以及依据所述第一对象对应的类型确定资源配额的具体过程不加以限制。
本申请实施例可以将存在于黑名单中的第一对象,赋予较低的资源配额,如第五资源配额;和/或,可以将存在于白名单中的第一对象,赋予较高的资源配额,如第六资源配额,其中,第六资源配额可以大于第五资源配额。
在具体实现中,可以根据实际应用需求,将信用较低的对象添加至黑名单,以及,将信用较高的对象添加至白名单。黑名单或者白名单中对象可由用户添加,也可由操作系统或者第二对象添加。例如,在依据第一对象对应的资源配额、和/或、优先级,确定第一对象具备恶意性的情况下,可以将对应的第一对象添加至黑名单。又如,在依据第一对象对应的资源配额、和/或、优先级,确定第一对象不具备恶意性的情况下,可以将对应的第一对象添加至白名单中。
本申请实施例中,第二对象可以具备请求的处理能力,例如,第二对象可以作为服务端提供诸如定位、录音、摄像、电话、视频/音频解码、地址本查询、网络连接等服务,则上述处理能力可以为服务能力。
本申请实施例依据第一对象对应的权限确定第一对象的资源配额的过程可以包括:依据第一对象对应的权限,判断第一对象是否具备第二对象所对应服务的权限,若否,则意味着第一对象不可访问第二对象所对应服务,此种情况下,可以设置较低的资源配额,若是,则意味着第一对象可访问第二对象所对应服务,此种情况下,可以设置较高的资源配额。判断第一对象是否具备第二对象所对应服务的权限的过程可以包括:将第一对象对应的权限与第二对象所对应服务进行匹配,若匹配失败,则判断结果为否,若匹配成功,则判断结果为是。
在本申请的一种可选实施例中,上述优先级的确定依据可以包括如下依据中的至少一种:
所述第一对象对应的类型;
所述第一对象是否在黑名单中;
所述第一对象是否在白名单中;
所述第一对象对应的权限。
由于上述优先级的确定依据与上述资源配额的确定依据类似,故可以相互参照。
第一对象对应的类型可以包括:应用类型、或者系统类型。可选地,应用类型可以对应第一优先级,系统类型可以对应有第二优先级,其中,第二优先级可以大于第一优先级;由于针对系统类型设置较高的优先级,而针对应用类型设置较低的优先级,故可以提高系统软件的响应性能。
第一对象对应的类型还可以包括:功能类型。例如,第一功能类型可以对应第三优先级,第二功能类型可以对应有第四优先级,其中,第三优先级可以大于第四优先级,第一功能类型的实时性可以高于第二功能类型,例如,第一功能类型为电商类型,第二功能类型可以为新闻资讯类型等,可以理解,本申请实施例对于第一对象对应的具体类型、以及依据所述第一对象对应的类型确定优先级的具体过程不加以限制。
本申请实施例可以将存在于黑名单中的第一对象,赋予较低的优先级,如第五优先级;和/或,可以将存在于白名单中的第一对象,赋予较高的优先级,如第六优先级,其中,第六优先级可以大于第五优先级。
本申请实施例依据第一对象对应的权限确定第一对象的优先级的过程可以包括:依据第一对象对应的权限,判断第一对象是否具备第二对象所对应服务的权限,若否,则意味着第一对象不可访问第二对象所对应服务,此种情况下,可以设置较低的优先级,若是,则意味着第一对象可访问第二对象所对应服务,此种情况下,可以设置较高的优先级。
以上对资源配额和/或优先级的确定依据进行了详细介绍,可以理解,本申请实施例对于具体的资源配额和/或优先级、以及资源配额和/或优先级的具体确定过程不加以限制。例如,可以针对全部或者部分的第一对象,确定相同的资源配额和/或优先级等。
参照图5,示出了本申请实施例的一种第一对象向第二对象发起请求的示意,其中,第一对象501向第二对象502发起的请求可由IPC子系统503中转,IPC子系统503可以包括:IPC防护插件531,IPC防护插件531可以接收第一对象向第二对象发起的请求,并依据所述第一对象对应的属性信息,对所述请求进行响应。当然,上述通过IPC防护插件531执行步骤201和步骤202只是作为可选实施例,实际上,还可以通过IPC子系统503的其他模块、或者第二对象来执行步骤201和步骤202,本申请实施例对于步骤201和步骤202对应的具体执行主体不加以限制。
步骤201确定的资源配额可用于对第一对象的请求所占用资源进行控制,该资源配额可以为第一对象的请求所占用资源的容量上限等;步骤201确定的优先级是在处理多个请求的情况下、决定一个请求接受处理的优先等级的参数,通常优先级高的被优先处理。
步骤202在依据第一对象对应的属性信息对所述请求进行响应的过程中,可以依据第一对象对应的资源配额、和/或、优先级,判断第一对象发起的请求是否具备恶意性、或者结合请求判断第一对象是否具备恶意性,并依据得到的判断结果进行响应,例如,可以拒绝具备恶意性的请求等,又如,可以拒绝具备恶意性的第一对象发起的请求等;因此,本申请实施例可以在一定程度上避免具备恶意性的请求(以下简称恶意请求)占用资源的情形,不仅可以节省恶意请求所占用的资源,而且可以将恶意请求所占用的资源用于正常请求(不具有恶意性的请求)的处理,进而可以提高正常请求的响应性能。
需要说明的是,在确定第一对象发起的请求具备恶意性的情况下,可以拒绝第一对象发起的最近一次请求,或者拒绝第一对象发起的全部请求或者部分请求。
本申请实施例可以提供依据所述第一对象对应的属性信息,对所述请求进行响应的如下技术方案:
技术方案1
技术方案1中,步骤202依据所述第一对象对应的属性信息,对所述请求进行响应的过程,可以包括:依据所述请求对应的占用资源、以及所述第一对象对应的资源配额,对所述请求进行响应。对于一个第一对象而言,所述请求对应的占用资源可以指,第一对象发起的请求所占用的资源,在实际应用中,可以通过内存资源、消息资源和文件描述符资源等粒度来衡量上述占用资源。
可选地,上述依据所述请求对应的占用资源、以及所述第一对象对应的资源配额,对所述请求进行响应的过程,具体可以包括:若所述请求对应的占用资源超过所述第一对象对应的资源配额,则拒绝所述请求。若所述请求对应的占用资源超过所述第一对象对应的资源配额,则可以确定第一对象发起的请求具备恶意性,故可以拒绝第一对象发起的最近一次请求,或者拒绝第一对象发起的全部请求或者部分请求。例如,若第一对象发起的全部请求均未被处理,则可以拒绝第一对象发起的全部请求;又如,若第一对象发起的部分请求已被处理,部分请求未被处理,则可以拒绝第一对象发起的未被处理的部分请求。
在实际应用中,资源的种类可以为一种或者多种。可以将一种资源对应的占用资源与该种资源对应的资源配额进行比较,若一种资源对应的比较结果为超过,则可以拒绝上述请求;或者,若多种资源对应的比较结果为超过,则可以拒绝上述请求。可以理解,本领域技术人员可以根据实际应用请求,确定拒绝所述请求的具体条件。
可选地,所述请求可以包括:预设时间段内的请求;所述依据所述请求对应的占用资源、以及所述第一对象对应的资源配额,对所述请求进行响应的过程,具体可以包括:依据所述预设时间段内未被处理的请求对应的占用资源、以及所述第一对象对应的资源配额,对所述预设时间段内的最近一次请求进行响应。其中,上述预设时间段可由本领域技术人员根据实际应用需求确定,例如,预设时间段的起始时间可以为第二对象的启动时间等,预设时间段的终止时间可以为当前时间,或者,预设时间段可以为起始时间之后的时间段。
对于已被处理的请求而言,其对应的占用资源可能被释放,故在确定所述请求对应的占用资源的过程中,可以考虑所述预设时间段内未被处理的请求对应的占用资源,而可以不考虑所述预设时间段内已被处理的请求对应的占用资源。当然,若已被处理的请求对应的占用资源还未被释放,可以考虑所述预设时间段内所有请求对应的占用资源。
可选地,所述对所述预设时间段内的最近一次请求进行响应的过程,具体可以包括:若所述预设时间段内未被处理的请求对应的占用资源超过所述第一对象对应的资源配额,则拒绝所述预设时间段内的最近一次请求。
在本申请的一种应用示例中,假设对象A所对应消息资源的限额为10个,假设对象A已经向第二对象发起了前10个请求、且该10个请求均未被处理,则在接收到对象A向第二对象发起的第11个请求的情况下,可以认为对象A占用的消息资源超限,故可以拒绝第11个请求。可选地,对于对象A之前发起的前10个请求,可以认为其为正常请求,而可以允许前10个请求;当然,也可以拒绝前10个请求。
技术方案2
技术方案2中,步骤202依据所述第一对象对应的属性信息,对所述请求进行响应的过程,可以包括:若所述请求对应的占用资源未超过所述第一对象对应的资源配额,则将所述请求添加至数据结构;所述数据结构中请求可以为占用资源未超过资源配额的请求,所述数据结构中请求被允许处理,故可被所述第二对象处理。上述数据结构可以为队列、数组、树形结构等,以使第二对象从上述数据结构中获取请求并处理。
根据一种实施例,所述数据结构中请求可被按照所述优先级进行存储,以使第二对象按照优先级从上述数据结构中获取请求并处理,由此可以使上述数据结构中请求被按照优先级处理。可选地,上述数据结构可以为树形结构,上述属性结构可以包括:N个层级,其中,一个层级可以对应一个优先级,也即,一个层级可用于存储一个优先级的第一对象对应的请求。例如,树形结构的第i层级可以对应优先级j,其中,i为自然数,例如,第1层级可以对应最高优先级,如优先级1;第2层级可以对应次高优先级,如优先级2,这样,第二对象可以按照i从小到大的顺序,对上述树形结构中请求进行处理。可以理解,上述树形结构中请求可被不断更新。
根据另一种实施例,所述数据结构中请求可被按照所述优先级进行处理。例如,第二对象可以按照优先级从高到低的顺序,从上述数据结构中获取请求并处理。
本申请实施例中,第二对象可以利用多线程对上述数据结构中请求进行处理。可选地,可以通过线程池存储多线程,在线程池中存在M(M为自然数)个空闲线程的情况下,可以从上述数据结构中获取优先级最高的M个请求,并将M个请求分配个M个空闲线程进行处理。可以理解,本申请实施例对于对上述数据结构中请求进行处理的具体过程不加以限制。线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。
本申请实施例中,所述数据结构中请求可被按照所述优先级进行存储,或者,所述数据结构中请求可被按照所述优先级进行处理,这样,可以使得请求被按照优先级处理,使得优先级高的第一对象对应的请求被优先响应,故可以提高优先级高的请求对应的响应速度。
在本申请的一种可选实施例中,本申请实施例的方法还可以包括:从上述数据结构中删除已被处理的请求,这样可以节省树形结构对应的空间。可选地,还可以释放已被处理的请求对应的资源,如线程资源、内存资源等。
在本申请的一种可选实施例中,本申请实施例的方法还可以包括:若所述请求对应的占用资源超过所述第一对象对应的资源配额,则降低所述第一对象对应的优先级。
本申请实施例可以依据请求对应的占用资源与资源配额之间的关系,对第一对象对应的优先级进行动态调整,这样可以使优先级与占用资源所反映的恶意性判断结果相匹配。具体地,在所述请求对应的占用资源超过所述第一对象对应的资源配额的情况下,可以认为第一对象具有恶意性,此种情况下,降低第一对象对应的优先级,可以使得第一对象发起的请求被滞后处理,这样可以避免恶意请求被优先处理而导致正常请求被滞后处理的情况,因此可以提高正常请求的响应性能。
本申请实施例降低所述第一对象对应的优先级的过程可以包括:将第一对象对应的优先级降低P级,其中,P为自然数,例如,可以将第一对象对应的优先级降低1级,或者,将第一对象对应的优先级设置为最低优先级等。
参照图6,示出了本申请实施例的一种响应请求的方法的步骤流程图,具体可以包括如下步骤:
步骤601、判断预设时间段内的请求对应的占用资源是否超过所述第一对象对应的资源配额,若是,则执行步骤602,否则执行步骤604;
步骤602、拒绝所述预设时间段内的最近一次请求;
步骤603、降低所述第一对象对应的优先级;
步骤604、将所述请求添加至数据结构;所述数据结构中请求可被按照优先级进行存储;
可以使第二对象按照优先级从上述数据结构中获取请求并处理,由此可以使上述数据结构中请求被按照优先级处理。
步骤605、从上述数据结构中删除已被处理的请求,和/或,释放已被处理的请求对应的资源。
本申请实施例对于步骤602与步骤603的先后顺序不加以限制。本申请实施例对于步骤604与步骤605的先后顺序不加以限制。
综上,本申请实施例的数据处理方法,在依据第一对象对应的属性信息对所述请求进行响应的过程中,可以依据第一对象对应的资源配额、和/或、优先级,判断第一对象发起的请求是否具备恶意性、或者结合请求判断第一对象是否具备恶意性,并依据得到的判断结果进行响应,例如,可以拒绝具备恶意性的请求等,又如,可以拒绝具备恶意性的第一对象发起的请求等;因此,本申请实施例可以在一定程度上避免具备恶意性的请求(以下简称恶意请求)占用资源的情形,不仅可以节省恶意请求所占用的资源,而且可以将恶意请求所占用的资源用于正常请求(不具有恶意性的请求)的处理,进而可以提高正常请求的响应性能。
在本申请的一种应用示例中,假设对象A所对应消息资源的限额为10个,假设对象A已经向第二对象发起了前10个请求、且该10个请求均未被处理,则在接收到对象A向第二对象发起的第11个请求的情况下,可以认为对象A占用的消息资源超限,故可以拒绝第11个请求。并且,本申请实施例还可以降低对象A的优先级。
本申请实施例降低第一对象的优先级可以包括:使得第一对象后续发起的请求的优先级降低,而可以保持第一对象之前发起的请求的优先级不变。例如,对于对象A之前发起的前10个请求,可以认为其为正常请求,而可以保持前10个请求的优先级不变。
本申请实施例降低第一对象的优先级可以包括:使得第一对象发起的所有请求的优先级降低。例如,对于对象A之前发起的前10个请求,可以认为其为恶意请求,故可以降低前10个请求的优先级,使其被滞后处理。
参照图7,示出了本申请的一种数据处理方法实施例的步骤流程图,具体可以包括如下步骤:
步骤701、接收第一对象向第二对象发送的连接建立请求;
步骤702、针对所述连接请求,确定所述第一对象对应的属性信息;所述属性信息用于确定对所述第一对象向所述第二对象发起的请求的处理方式。
可选地,所述第一对象为第一进程,所述第二对象为第二进程,所述方法的至少一个步骤通过操作系统的内核层执行,所述内核层的功能可以包括:进程间通信。
可选地,所述属性信息包括:资源配额,所述资源配额对应的资源包括如下资源中的至少一种:内存资源、消息资源和文件描述符资源。
可选地,所述属性信息可以包括:资源配额和/或优先级;
所述资源配额、或者所述优先级的确定依据可以包括如下依据中的至少一种:
所述第一对象对应的类型;
所述第一对象是否在黑名单中;
所述第一对象是否在白名单中;
所述第一对象对应的权限。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
本申请实施例还提供了一种数据处理装置。
参照图8,示出了本申请的一种数据处理装置实施例的结构框图,具体可以包括如下模块:
请求接收模块801,用于接收第一对象向第二对象发起的请求;所述第一对象对应有属性信息,所述属性信息用于确定对所述请求的处理方式;以及
请求响应模块802,用于依据所述第一对象对应的属性信息,对所述请求进行响应。
可选地,所述属性信息可以包括:资源配额,所述请求响应模块802可以包括:
第一请求响应子模块,用于依据所述请求对应的占用资源、以及所述第一对象对应的资源配额,对所述请求进行响应。
可选地,所述第一请求响应子模块可以包括:
第一请求响应单元,用于若所述请求对应的占用资源超过所述第一对象对应的资源配额,则拒绝所述请求。
可选地,所述请求可以包括:预设时间段内的请求;所述第一请求响应子模块可以包括:
第二请求响应单元,用于依据所述预设时间段内未被处理的请求对应的占用资源、以及所述第一对象对应的资源配额,对所述预设时间段内的最近一次请求进行响应。
可选地,所述第二请求响应单元可以包括:
请求拒绝子单元,用于若所述预设时间段内未被处理的请求对应的占用资源超过所述第一对象对应的资源配额,则拒绝所述预设时间段内的最近一次请求。
可选地,所述属性信息可以包括:资源配额,所述请求响应模块802可以包括:
第二请求响应子模块,用于若所述请求对应的占用资源未超过所述第一对象对应的资源配额,则将所述请求添加至数据结构;所述数据结构中请求被所述第二对象处理。
可选地,所述属性信息还可以包括:优先级,所述数据结构中请求被按照所述优先级进行存储,或者,所述数据结构中请求被按照所述优先级进行处理。
可选地,所述属性信息可以包括:资源配额和优先级,所述装置还可以包括:
优先级降低模块,用于若所述请求对应的占用资源超过所述第一对象对应的资源配额,则降低所述第一对象对应的优先级。
可选地,所述属性信息可以包括:资源配额,所述资源配额对应的资源可以包括如下资源中的至少一种:
内存资源、消息资源和文件描述符资源。
可选地,所述属性信息包括:资源配额、和/或优先级,所述资源配额、或者所述优先级的确定依据可以包括如下依据中的至少一种:
所述第一对象对应的类型;
所述第一对象是否在黑名单中;
所述第一对象是否在白名单中;
所述第一对象对应的权限。
可选地,所述装置还可以包括:
属性确定模块,用于在所述请求接收模块接收第一对象向第二对象发起的请求之前,针对第一对象与第二对象之间的连接,确定所述第一对象对应的属性信息;所述第一对象基于所述连接向所述第二对象发起请求。
可选地,所述装置的至少一个模块位于操作系统的内核层、或者框架层。
参照图9,示出了本申请的一种数据处理装置实施例的结构框图,具体可以包括如下模块:
请求接收模块901,用于接收第一对象向第二对象发送的连接建立请求;以及
属性确定模块902,用于针对所述连接请求,确定所述第一对象对应的属性信息;所述属性信息用于确定对所述第一对象向所述第二对象发起的请求的处理方式。
可选地,所述第一对象为第一进程,所述第二对象为第二进程,所述装置的至少一个模块位于操作系统的内核层,所述内核层的功能包括:进程间通信。
可选地,所述属性信息包括:资源配额,所述资源配额对应的资源包括如下资源中的至少一种:内存资源、消息资源和文件描述符资源。
可选地,所述属性信息可以包括:资源配额和/或优先级;
所述资源配额、或者所述优先级的确定依据可以包括如下依据中的至少一种:
所述第一对象对应的类型;
所述第一对象是否在黑名单中;
所述第一对象是否在白名单中;
所述第一对象对应的权限。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本申请实施例还提供了一种设备,该设备可以包括:一个或多个处理器;和其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述设备执行图1至图7中一个或多个所述的方法。
本申请实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在设备时,可以使得该设备执行本申请实施例中各方法步骤的指令(instructions)。
一个可选实施例中,包括:一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得设备执行如服务器侧一个或多个所述的方法。
另一个可选实施例中,包括:一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得设备执行如终端设备侧一个或多个所述的方法。
图10为本申请一实施例提供的设备的硬件结构示意图。该设备可包括服务器、终端设备等各种设备。如图10所示,该终端设备可以包括输入设备140、处理器141、输出设备142、存储器143和至少一个通信总线144。通信总线144用于实现元件之间的通信连接。存储器143可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,存储器143中可以存储各种程序,用于完成各种处理功能以及实现本实施例的方法步骤。
可选的,上述处理器141例如可以为中央处理器(Central Processing Unit,简称CPU)、应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,该处理器141通过有线或无线连接耦合到上述输入设备140和输出设备142。
可选的,上述输入设备140可以包括多种输入设备,例如可以包括面向用户的用户接口、面向设备的设备接口、软件的可编程接口、摄像头、传感器中至少一种。可选的,该面向设备的设备接口可以是用于设备与设备之间进行数据传输的有线接口、还可以是用于设备与设备之间进行数据传输的硬件插入接口(例如USB接口、串口等);可选的,该面向用户的用户接口例如可以是面向用户的控制按键、用于接收语音输入的语音输入设备以及用户接收用户触摸输入的触摸感知设备(例如具有触摸感应功能的触摸屏、触控板等);可选的,上述软件的可编程接口例如可以是供用户编辑或者修改程序的入口,例如芯片的输入引脚接口或者输入接口等;可选的,上述收发信机可以是具有通信功能的射频收发芯片、基带处理芯片以及收发天线等。麦克风等音频输入设备可以接收语音数据。输出设备142可以包括显示器、音响等输出设备。
在本实施例中,该终端设备的处理器包括用于执行各设备中数据处理装置各模块的功能,具体功能和技术效果参照上述实施例即可,此处不再赘述。
图11为本申请另一实施例提供的设备的硬件结构示意图。图11是对图10在实现过程中的一个具体的实施例。如图11所示,本实施例的设备可以包括处理器151以及存储器152。
处理器151执行存储器152所存放的计算机程序代码,实现上述实施例中图1至图7的数据处理方法。
存储器152被配置为存储各种类型的数据以支持在终端设备的操作。这些数据的示例包括用于在终端设备上操作的任何应用程序或方法的指令,例如消息,图片,视频等。存储器152可能包含随机存取存储器(random access memory,简称RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
可选地,处理器151设置在处理组件150中。该终端设备还可以包括:通信组件153,电源组件154,多媒体组件155,音频组件156,输入/输出接口157和/或传感器组件158。终端设备具体所包含的组件等依据实际需求设定,本实施例对此不作限定。
处理组件150通常控制终端设备的整体操作。处理组件150可以包括一个或多个处理器151来执行指令,以完成上述图1至图10所示方法的全部或部分步骤。此外,处理组件150可以包括一个或多个模块,便于处理组件150和其他组件之间的交互。例如,处理组件150可以包括多媒体模块,以方便多媒体组件155和处理组件150之间的交互。
电源组件154为终端设备的各种组件提供电力。电源组件154可以包括电源管理系统,一个或多个电源,及其他与为终端设备生成、管理和分配电力相关联的组件。
多媒体组件155包括在终端设备和用户之间的提供一个输出接口的显示屏。在一些实施例中,显示屏可以包括液晶显示器(LCD)和触摸面板(TP)。如果显示屏包括触摸面板,显示屏可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。
音频组件156被配置为输出和/或输入音频信号。例如,音频组件156包括一个麦克风(MIC),当终端设备处于操作模式,如语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器152或经由通信组件153发送。在一些实施例中,音频组件156还包括一个扬声器,用于输出音频信号。
输入/输出接口157为处理组件150和外围接口模块之间提供接口,上述外围接口模块可以是点击轮,按钮等。这些按钮可包括但不限于:音量按钮、启动按钮和锁定按钮。
传感器组件158包括一个或多个传感器,用于为终端设备提供各个方面的状态评估。例如,传感器组件158可以检测到终端设备的打开/关闭状态,组件的相对定位,用户与终端设备接触的存在或不存在。传感器组件158可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在,包括检测用户与终端设备间的距离。在一些实施例中,该传感器组件158还可以包括摄像头等。
通信组件153被配置为便于终端设备和其他设备之间有线或无线方式的通信。终端设备可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个实施例中,该终端设备中可以包括SIM卡插槽,该SIM卡插槽用于插入SIM卡,使得终端设备可以登录GPRS网络,通过互联网与服务器建立通信。
由上可知,在图11实施例中所涉及的通信组件153、音频组件156以及输入/输出接口157、传感器组件158均可以作为图10实施例中的输入设备的实现方式。
本申请实施例还提供一种用于设备的操作系统,如图12所示,该设备的操作系统可以包括:请求接收单元1201和请求响应单元1202。
其中,请求接收单元1201,用于接收第一对象向第二对象发起的请求;所述第一对象对应有属性信息,所述属性信息包括:资源配额、和/或、优先级;
请求响应单元1202,用于依据所述第一对象对应的属性信息,对所述请求进行响应。
本申请实施例还提供一种用于设备的操作系统,如图13所示,该设备的操作系统可以包括:
请求接收单元1301,用于接收第一对象向第二对象发送的连接建立请求;以及
属性确定单元1302,用于针对所述连接请求,确定所述第一对象对应的属性信息;所述属性信息用于确定对所述第一对象向所述第二对象发起的请求的处理方式。
对于装置实施例、设备实施例和用于设备的操作系统实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种数据处理方法、一种数据处理装置、一种设备、一种机器可读介质介质、一种基于设备的操作系统,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。