一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种程序执行中CPU使用限制方法、系统、设备及存储介质与流程

2022-07-16 16:06:42 来源:中国专利 TAG:

一种程序执行中cpu使用限制方法、系统、设备及存储介质
技术领域
1.本发明实施例涉及计算机技术领域,具体涉及一种程序执行中cpu使用限制方法、系统、设备及存储介质。


背景技术:

2.linux程序在使用过程中,程序执行是抢占式,所以对于高并发服务器和高密集运算服务器在运行过程中,某些对业务不相关程序需要降低其cpu的使用。linux针对此情况提供了cgroup来对某些程序进行一定的控制,cgroups的名称源自控制组群(control groups)的简写,是linux内核的一个功能,用来限制、控制与分离一个进程组的资源(如cpu、内存、磁盘输入输出等)。但是cgroup依赖内核版本相对较高,无法满足需要兼容较老版本linux的业务场景。


技术实现要素:

3.为此,本发明实施例提供一种程序执行中cpu使用限制方法、系统、设备及存储介质,以解决现有技术中对程序执行中cpu使用限制的管控业务场景适用性差的技术问题。
4.为了实现上述目的,本发明实施例提供如下技术方案:
5.根据本发明实施例的第一方面,本技术实施例提供了一种程序执行中cpu使用限制方法,所述方法应用于管控进程,所述管控进程用于对目标进程进行管控,所述方法包括:
6.将时间片运行初始值设置为0;
7.按照第一预设数量值向所述目标进程分配时间片;
8.获取所述目标进程运行前cpu使用率;
9.根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值;
10.通知所述目标进程开始运行;
11.直到所述目标进程运行完成所述第一时间片数值的时间片后,通知所述目标进程挂起;
12.直至所述目标进程完成所述第二时间片数值的时间片的挂起,进入下一周期。
13.进一步地,根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,包括:
14.判断所述运行前cpu使用率是否超过预设阈值;
15.如果所述当前cpu使用率未超过预设阈值,则获得所述第一时间片数值的预测值,其中,当前周期为第一个周期时,将所述第一预设数量值加上1的计算值作为所述预测值,当前周期不为第一个周期时,将上一周期的第一时间片数值加上1的计算值作为所述预测值;
16.判断所述更新值是否超过所述第一预设数量值;
17.如果所述更新值超过所述第一预设数量值,则确定所述第一时间片数值为所述第一预设数量值;以及
18.确定所述第二时间片数值为0。
19.进一步地,根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,还包括:
20.如果所述运行前cpu使用率超过预设阈值,则确定所述第一时间片数值为第二预设数量值;以及
21.确定所述第二时间片数值为所述第一预设数量值减去所述第二预设数量值的差值。
22.进一步地,根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,还包括:
23.如果所述运行前cpu使用率超过预设阈值,则根据所述运行前cpu使用率计算所述第一时间片数值;以及
24.确定所述第二时间片数值为所述第一预设数量值减去所述第一时间片数值的计算值的差值;
25.其中,所述第一时间片数值的计算公式如下:
26.level1=1 (100
×
cpumaxrate)
·
(cpunum
×
100%-cpucurrate)/cpunum
27.其中,level1为第一时间片数值的计算值,cpucurrate为运行前cpu使用率,cpumaxrate为cpu最大使用率,cpunum为cpu核心数。
28.进一步地,根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,还包括:
29.如果所述更新值未超过所述第一预设数量值,则确定所述第一时间片数值为所述更新值;以及
30.确定所述第二时间片数值为所述第一预设数量值减去所述更新值的差值。
31.进一步地,所述方法还包括:
32.通知所述目标进程开始运行后,将时间片运行值从所述时间片运行初始值开始计数,
33.判断所述时间片运行值是否达到所述第一时间片数值;
34.如果所述时间片运行值未达到所述第一时间片数值,则利用所述时间片运行值加上1的值对所述时间片运行值进行更新;
35.如果所述时间片运行值达到所述第一时间片数值,则通知所述目标进程挂起。
36.进一步地,所述方法还包括:
37.通知所述目标进程挂起后,将时间片运行值从所述第一时间片数值开始计数,
38.判断所述时间片运行值是否达到所述第二时间片数值;
39.如果所述时间片运行值未达到所述第二时间片数值,则利用所述时间片运行值加上1的值对所述时间片运行值进行更新;
40.如果所述时间片运行值达到所述第二时间片数值,则记录所述目标进程已运行时间片总数量,进入下一周期。
41.根据本发明实施例的第二方面,本技术实施例提供了一种程序执行中cpu使用限
制系统,所述系统应用于管控进程,所述管控进程用于对目标进程进行管控,所述系统包括:
42.初始化模块,用于将时间片运行初始值设置为0;
43.时间片分配模块,用于按照第一预设数量值向所述目标进程分配时间片;
44.cpu使用率获取模块,用于获取所述目标进程运行前cpu使用率;
45.管控模块,用于执行以下步骤:
46.根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值;
47.通知所述目标进程开始运行;
48.直到所述目标进程运行完成所述第一时间片数值的时间片后,通知所述目标进程挂起;
49.直至所述目标进程完成所述第二时间片数值的时间片的挂起,进入下一周期。
50.进一步地,根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,包括:
51.判断所述运行前cpu使用率是否超过预设阈值;
52.如果所述当前cpu使用率未超过预设阈值,则获得所述第一时间片数值的预测值,其中,当前周期为第一个周期时,将所述第一预设数量值加上1的计算值作为所述预测值,当前周期不为第一个周期时,将上一周期的第一时间片数值加上1的计算值作为所述预测值;
53.判断所述预测值是否超过所述第一预设数量值;
54.如果所述预测值超过所述第一预设数量值,则确定所述第一时间片数值为所述第一预设数量值;以及
55.确定所述第二时间片数值为0。
56.进一步地,根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,还包括:
57.如果所述运行前cpu使用率超过预设阈值,则确定所述第一时间片数值为第二预设数量值;以及
58.确定所述第二时间片数值为所述第一预设数量值减去所述第二预设数量值的差值。
59.进一步地,根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,还包括:
60.如果所述运行前cpu使用率超过预设阈值,则根据所述运行前cpu使用率计算所述第一时间片数值;以及
61.确定所述第二时间片数值为所述第一预设数量值减去所述第一时间片数值的计算值的差值;
62.其中,所述第一时间片数值的计算公式如下:
63.level1=1 (100
×
cpumaxrate)
·
(cpunum
×
100%-cpucurrate)/cpunum
64.其中,level1为第一时间片数值的计算值,cpucurrate为运行前cpu使用率,cpumaxrate为cpu最大使用率,cpunum为cpu核心数。
65.进一步地,根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,还包括:
66.如果所述预测值未超过所述第一预设数量值,则确定所述第一时间片数值为所述预测值;以及
67.确定所述第二时间片数值为所述第一预设数量值减去所述预测值的差值。
68.进一步地,所述管控模块还用于:
69.通知所述目标进程开始运行后,将时间片运行值从所述时间片运行初始值开始计数,
70.判断所述时间片运行值是否达到所述第一时间片数值;
71.如果所述时间片运行值未达到所述第一时间片数值,则利用所述时间片运行值加上1的值对所述时间片运行值进行更新;
72.如果所述时间片运行值达到所述第一时间片数值,则通知所述目标进程挂起。
73.进一步地,所述管控模块还用于:
74.通知所述目标进程挂起后,将时间片运行值从所述第一时间片数值开始计数,
75.判断所述时间片运行值是否达到所述第二时间片数值;
76.如果所述时间片运行值未达到所述第二时间片数值,则利用所述时间片运行值加上1的值对所述时间片运行值进行更新;
77.如果所述时间片运行值达到所述第二时间片数值,则记录所述目标进程已运行时间片总数量,进入下一周期。
78.根据本发明实施例的第三方面,提供了一种程序执行中cpu使用限制设备,所述设备包括:处理器和存储器;
79.所述存储器用于存储一个或多个程序指令;
80.所述处理器,用于运行一个或多个程序指令,用以执行如上任一项所述的一种一种程序执行中cpu使用限制方法的步骤。
81.根据本发明实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述一种程序执行中cpu使用限制方法的步骤。
82.与现有技术相比,本技术实施例提供的一种程序执行中cpu使用限制方法、系统、设备及存储介质,以向目标进程分配的第一预设数量值的时间片作为循环周期,基于运行前cpu使用率,确定当前周期目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,然后通知目标进程基于第一时间片数值和第二时间片数值依次运行和挂起,在程序执行中实现了cpu使用限制的管控。本发明实施例适用于linux对所有进程级别的管控,例如常见的病毒扫描进程,文件扫描进程,弱密码计算进程等cpu密集运算进程。
附图说明
83.为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
84.本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。
85.图1为本发明实施例提供的一种程序执行中cpu使用限制系统的结构示意图;
86.图2为本发明实施例提供的一种程序执行中cpu使用限制方法的流程示意图;
87.图3为本发明一个实施例提供的确定当前周期第一时间片数值和第二时间片数值的流程示意图;
88.图4为本发明另一个实施例提供的确定当前周期第一时间片数值和第二时间片数值的流程示意图。
具体实施方式
89.以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
90.本发明实施例主要应用于linux客户端在进行安全扫描时cpu使用率飙高时的控制。
91.为了解决上述技术问题,如图1所示,本技术实施例提供了一种程序执行中cpu使用限制系统,上述系统应用于管控进程,管控进程用于对目标进程进行管控,其具体包括:初始化模块1、时间片分配模块2、cpu使用率获取模块3、管控模块4。
92.本发明实施例中通过管控进程作为控制端限制被控制端,是采用发送linux下的sigstop信号时将目标进程短暂挂起,从而让出cpu的占用,所以控制端的进程权限需要大于或者等于被控制端进程权限,控制端一般需要运行在root权限下。
93.进一步地,初始化模块1用于将时间片运行初始值设置为0;时间片分配模块2用于按照第一预设数量值向所述目标进程分配时间片;cpu使用率获取模块3用于获取所述目标进程运行前cpu使用率;管控模块4用于执行以下步骤:根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值;通知所述目标进程开始运行;直到所述目标进程运行完成所述第一时间片数值的时间片后,通知所述目标进程挂起;直至所述目标进程完成所述第二时间片数值的时间片的挂起,进入下一周期。
94.与现有技术相比,本技术实施例提供的一种程序执行中cpu使用限制系统,以向目标进程分配的第一预设数量值的时间片作为循环周期,基于运行前cpu使用率,确定当前周期目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,然后通知目标进程基于第一时间片数值和第二时间片数值依次运行和挂起,在程序执行中实现了cpu使用限制的管控。本发明实施例适用于linux对所有进程级别的管控,例如常见的病毒扫描进程,文件扫描进程,弱密码计算进程等cpu密集运算进程。
95.与上述公开的一种程序执行中cpu使用限制系统相对应,本发明实施例还公开了一种程序执行中cpu使用限制方法。以下结合上述描述的一种程序执行中cpu使用限制系统
详细介绍本发明实施例中公开的一种程序执行中cpu使用限制方法。
96.在本发明一个实施例中,如图2所示,以下对第一个周期的本技术实施例提供的一种程序执行中cpu使用限制方法具体步骤进行详细描述。
97.在本发明实施例中,一种程序执行中cpu使用限制方法应用于管控进程,通过管控进程实现对目标进程进行管控。
98.步骤s11:通过初始化模块1将时间片运行初始值设置为0。
99.在本发明实施例中,初始化模块1主要用于在每个周期启动时,对管控进程进行初始化,在初始化过程中,将时间片运行初始值初始化为0。
100.步骤s12:通过时间片分配模块2按照第一预设数量值向目标进程分配时间片。
101.进一步地,在本发明实施例中,上述第一预设数量值可以为100。时间片(timeslice)又称为“量子(quantum)”或“处理器片(processor slice)”是分时操作系统分配给每个正在运行的进程微观上的一段cpu时间。这样,本发明实施例中,一个完整周期是100时间片。
102.步骤s13:通过cpu使用率获取模块3获取目标进程运行前cpu使用率。
103.进一步地,如果当前周期为第一个周期,则第一个周期目标运行前cpu使用率为0%。
104.步骤s14:通过管控模块4根据所述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值。
105.具体地,以下对上述步骤14的具体步骤进行说明。
106.参考图3,为本发明一个实施例提供的确定当前周期第一时间片数值和第二时间片数值的流程示意图。
107.具体地,判断运行前cpu使用率是否超过预设阈值;针对当前周期为第一周期的情况,如上所述,第一个周期目标进程运行前cpu使用率为0%,即当前cpu使用率未超过预设阈值,则获得所述第一时间片数值的预测值,当前周期为第一个周期时,将第一预设数量值加上1的计算值作为预测值,即此时上述预测值为101;判断预测值是否超过所述第一预设数量值;此时,预测值超过第一预设数量值,则确定第一时间片数值为第一预设数量值,即,此时第一时间片数值为100;以及确定第二时间片数值为0。
108.步骤s15:通过管控模块4通知所述目标进程开始运行。
109.具体地,通知目标进程开始运行后,将时间片运行值从时间片运行初始值开始计数,如上所述,时间片运行初始值为0,即将时间片运行值从0开始计数;判断时间片运行值是否达到第一时间片数值,如上所述,第一时间片数值为100;如果时间片运行值未达到第一时间片数值,则利用时间片运行值加上1的值对时间片运行值进行更新;如果时间片运行值达到第一时间片数值,则通知所述目标进程挂起。
110.步骤s16:直到目标进程运行完成所述第一时间片数值的时间片后,通过管控模块4通知目标进程挂起。
111.具体地,通知所述目标进程挂起后,将时间片运行值从第一时间片数值开始计数,如上所述,第一时间片数值为100,即将时间片运行值从100开始计数;判断时间片运行值是否达到第一预设数量值,如上所述,第一预设数量值为100;此时,时间片运行值达到第一预设数量值,则进入下一周期。在本发明实施例中,此处与上述确定第二时间片数值为0相对
应。
112.步骤s17:直至所述目标进程完成所述第二时间片数值的时间片的挂起,通过管控模块4进入下一周期。
113.在本发明另一个实施例中,如图2所示,以下对第一个周期之后的后续周期的本技术实施例提供的一种程序执行中cpu使用限制方法具体步骤进行详细描述。
114.在本发明实施例中,一种程序执行中cpu使用限制方法应用于管控进程,通过管控进程实现对目标进程进行管控。
115.步骤s11:通过初始化模块1将时间片运行初始值设置为0。
116.在本发明实施例中,初始化模块1主要用于在每个周期启动时,对管控进程进行初始化,在初始化过程中,将时间片运行初始值初始化为0。
117.步骤s12:通过时间片分配模块2按照第一预设数量值向目标进程分配时间片。
118.进一步地,在本发明实施例中,上述第一预设数量值可以为100。时间片(timeslice)又称为“量子(quantum)”或“处理器片(processor slice)”是分时操作系统分配给每个正在运行的进程微观上的一段cpu时间。这样,本发明实施例中,一个完整周期是100时间片。
119.步骤s13:通过cpu使用率获取模块3获取目标进程运行前cpu使用率。
120.进一步地,如果当前周期为第一个周期之后的后续周期,则基于虚拟文件系统获取目标进程运行前cpu使用率。
121.步骤s14:通过管控模块4根据上述运行前cpu使用率,确定当前周期所述目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值。
122.具体地,以下对上述步骤14的具体步骤进行说明。
123.参考图3,为本发明一个实施例提供的确定当前周期第一时间片数值和第二时间片数值的流程示意图。
124.具体地,判断运行前cpu使用率是否超过预设阈值;如果当前cpu使用率未超过预设阈值,则获得所述第一时间片数值的预测值,当前周期不为第一个周期时,将上一周期的第一时间片数值加上1的计算值作为上述预测值;判断上述预测值是否超过第一预设数量值,如上所述第一预设数量值为100;如果所述预测值超过第一预设数量值,则确定所述第一时间片数值为第一预设数量值;以及确定所述第二时间片数值为0。如果上述预测值未超过第一预设数量值,如上所述第一预设数量值为100,则确定第一时间片数值为预测值;以及确定第二时间片数值为第一预设数量值减去所述预测值的差值。
125.进一步地,参考图3,如果运行前cpu使用率超过预设阈值,则确定第一时间片数值为第二预设数量值;以及确定第二时间片数值为第一预设数量值减去第二预设数量值的差值。在本发明实施例中,第二预设数量值可以取1。
126.另外,优选地,参考图4,在本发明另一个实施例中,如果运行前cpu使用率超过预设阈值,则根据运行前cpu使用率计算所述第一时间片数值;以及确定所述第二时间片数值为所述第一预设数量值减去所述第一时间片数值的计算值的差值。
127.具体地,上述第一时间片数值的计算公式如下:
128.level1=1 (100
×
cpumaxrate)
·
(cpunum
×
100%-cpucurrate)/cpunum
129.其中,level1为第一时间片数值的计算值,cpucurrate为运行前cpu使用率,
cpumaxrate为cpu最大使用率,cpunum为cpu核心数。
130.步骤s15:通过管控模块4通知所述目标进程开始运行。
131.具体地,通知目标进程开始运行后,将时间片运行值从时间片运行初始值开始计数,如上所述,时间片运行初始值为0,即将时间片运行值从0开始计数;判断时间片运行值是否达到第一时间片数值;如果时间片运行值未达到第一时间片数值,则利用时间片运行值加上1的值对时间片运行值进行更新;如果时间片运行值达到第一时间片数值,则通知所述目标进程挂起。
132.步骤s16:直到目标进程运行完成所述第一时间片数值的时间片后,通过管控模块4通知目标进程挂起。
133.具体地,通知所述目标进程挂起后,将时间片运行值从第一时间片数值开始计数;判断时间片运行值是否达到第一预设数量值;如果所述时间片运行值未达到所述第一预设数量值,则利用所述时间片运行值加上1的值对所述时间片运行值进行更新;如果所述时间片运行值达到所述第一预设数量值,则进入下一周期。
134.步骤s17:直至所述目标进程完成所述第二时间片数值的时间片的挂起,通过管控模块4进入下一周期。
135.与现有技术相比,与现有技术相比,本技术实施例提供的一种程序执行中cpu使用限制方法,以向目标进程分配的第一预设数量值的时间片作为循环周期,基于运行前cpu使用率,确定当前周期目标进程用于运行的第一时间片数值和用于挂起的第二时间片数值,然后通知目标进程基于第一时间片数值和第二时间片数值依次运行和挂起,在程序执行中实现了cpu使用限制的管控。本发明实施例适用于linux对所有进程级别的管控,例如常见的病毒扫描进程,文件扫描进程,弱密码计算进程等cpu密集运算进程。
136.本发明实施例中通过管控进程作为控制端限制被控制端,是采用发送linux下的sigstop信号时将目标进程短暂挂起,从而让出cpu的占用。在发送信号以及时间分片计算过程中会有一定时间片损耗,所以被控制端目前达不到百分之百的准确率。在本发明实施例中,通过管控进程用来管控目标进程,使目标进程cpu使用率不超过10%,通过某些资源管理软件可以看到目标进程cpu使用率可能在10%上下浮动,但是上限浮动不会超过2%。
137.另外,本发明实施例还提供了一种程序执行中cpu使用限制设备,所述设备包括:处理器和存储器;所述存储器用于存储一个或多个程序指令;所述处理器,用于运行一个或多个程序指令,用以执行如上任一项所述的一种程序执行中cpu使用限制方法的步骤。
138.另外,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述一种程序执行中cpu使用限制方法的步骤。
139.在本发明实施例中,处理器可以是一种集成电路芯片,具有信号的处理能力。处理器可以是通用处理器、数字信号处理器(digital signal processor,简称dsp)、专用集成电路(application specific工ntegrated circuit,简称asic)、现场可编程门阵列(fieldprogrammable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
140.可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开
的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。处理器读取存储介质中的信息,结合其硬件完成上述方法的步骤。
141.存储介质可以是存储器,例如可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
142.其中,非易失性存储器可以是只读存储器(read-only memory,简称rom)、可编程只读存储器(programmable rom,简称prom)、可擦除可编程只读存储器(erasable prom,简称eprom)、电可擦除可编程只读存储器(electrically eprom,简称eeprom)或闪存。
143.易失性存储器可以是随机存取存储器(random access memory,简称ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,简称sram)、动态随机存取存储器(dynamic ram,简称dram)、同步动态随机存取存储器(synchronous dram,简称sdram)、双倍数据速率同步动态随机存取存储器(double data ratesdram,简称ddrsdram)、增强型同步动态随机存取存储器(enhanced sdram,简称esdram)、同步连接动态随机存取存储器(synchlink dram,简称sldram)和直接内存总线随机存取存储器(directrambus ram,简称drram)。
144.本发明实施例描述的存储介质旨在包括但不限于这些和任意其它适合类型的存储器。
145.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件与软件组合来实现。当应用软件时,可以将相应功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
146.虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献