一种读取配置方法及装置与流程

文档序号:30256854发布日期:2022-06-02 02:28阅读:89来源:国知局
一种读取配置方法及装置与流程

1.本技术涉及计算机技术领域,具体涉及一种读取配置方法及装置。


背景技术:

2.反向代理服务器(nginx)是一个支持高并发量且性能优越的反向代理服务器,由于其高性能的表现,nginx被广泛应用于互联网服务器领域。
3.目前,nginx在读取配置以配置其运行时的各项属性时,采用的是配置文件(config,conf)的本地配置文件的形式。在这种形式中,配置文件采用的是文本格式,这种格式的配置文件需要nginx对文件中的文本内容进行解析,识别文本中的具体的配置内容以及其互相的包含关系,才能顺利读取到配置文件中的配置内容。而这样的nginx读取配置的方式存在配置文件读取不灵活且可读性差的问题。


技术实现要素:

4.本技术提出一种读取配置的方法及装置,用以解决现有技术中nginx读取配置的方式存在配置文件读取不灵活且可读性差的问题。
5.第一方面,本技术提出一种读取配置的方法,该方法具体包括:nginx检测到第一线程发出第一信息时,暂停所述第一线程;其中,所述第一信息用于指示所述第一线程从配置文件中读取所述nginx对应的第一配置内容;所述第一配置内容用于配置所述nginx的运行属性;所述nginx启动第二线程,通过所述第二线程从嵌入式数据库中读取第二配置内容,将读取到的所述第二配置内容保存至配置空间;所述nginx停止所述第二线程,启动所述第一线程,通过所述第一线程从所述配置空间获取所述第二配置内容,根据所述第二配置内容中的第一配置项,配置所述nginx的运行属性。
6.在本方案中,由数据表保存nginx所需要的配置内容,第二线程可以直接从数据表中获取所有的配置内容,而不用像现有技术中,需要由nginx对文本内容进行解析并识别后进行选择性地获取,提高了读取配置的效率,也提高了配置内容的可读性。并且,由嵌入式数据库保存上述数据表,可以在占用较少的存储空间的同时,高效率地访问嵌入式数据库中的数据表,进一步地提高了读取配置的效率。另外,采用第二线程代替第一线程进行本方案中的配置读取,实现了将配置读取插件化,无需额外修改原有的nginx的程序代码,即可将第二线程读取配置这一过程,以插件的形式配置到原有的nginx中,降低了本方案的复杂度,提高了本方案的可靠性与适用性。
7.可选的,所述嵌入式数据库中包含有至少一张数据表,所述至少一张数据表中的每张数据表对应保存有一种类型的配置内容,所述至少一种数据表中的不同数据表保存有不同类型的配置内容;所述每张数据表中包含至少一个配置项,所述至少一个配置项中的每个配置项包括一个token与token对应的value。
8.在本方式中,不同的数据表对应保存不同类型的配置内容,且数据表中保存有各个配置项的具体内容,因此,在第二线程读取数据表中的配置内容时,无需对数据表中的内
容进行解析识别,即可直接从数据表中获取到配置内容,简化了配置读取的流程,提高了配置读取的效率。
9.可选的,所述nginx检测到第一线程发出第一信息之前,所述方法还包括:所述nginx通过所述第一线程,在所述nginx的内存空间中,创建所述配置空间。
10.在本方式中,由第一线程在nginx的内存中创建配置空间,这样,属于同一个nginx运行进程的第一线程与第二线程均可直接访问该配置空间,简化了第一线程与第二线程的交互过程,提高了配置读取的效率。
11.可选的,所述通过所述第二线程从嵌入式数据库中读取第二配置内容,包括:所述nginx通过所述第二线程读取所述嵌入式数据库中的所有数据表。
12.在本方式中,第二线程读取嵌入式数据库中的配置内容时,可以直接获取各个数据表中的各项内容,而不用像现有技术中需要先解析文本全文的内容后,再从全文中获取真正的配置内容,因此,通过本方式,简化了配置读取的流程,并提高了配置读取过程的效率以及准确性。
13.可选的,所述嵌入式数据库的安装位置与所述nginx的安装位置相同。
14.在本方式中,nginx可以在自己的安装目录下使用嵌入式数据库,极大地提高了第二线程读取配置的效率。
15.可选的,所述配置项内容的类型包括以下一项或多项:全局配置、事件events配置、http配置、服务server配置、路由location配置。
16.可选的,在所述嵌入式数据库更新之后,所述方法还包括:所述nginx检测到所述第一线程发出第二信息时,暂停所述第一线程;其中,所述第二信息用于指示所述第一线程从所述配置文件中读取所述nginx对应的第三配置内容;所述第三配置内容用于配置所述nginx的运行属性;所述nginx启动所述第二线程,通过所述第二线程从更新后的嵌入式数据库中读取第四配置内容,将读取到的所述第四配置内容保存至所述配置空间;其中,所述第四配置内容不同于所述第二配置内容;所述nginx停止所述第二线程,启动所述第一线程;控制所述第一线程从所述配置空间中获取所述第四配置内容,根据所述第四配置内容中的第二配置项,配置所述nginx的运行属性。
17.在本方式中,数据表中配置内容的修改可以直接修改数据表中的具体数值,而无需读取文本内容后再进行修改,因此,配置内容具有较高的可读性,且提高了修改配置内容的效率。并且,在数据表中新增或删除配置项的内容时,仅仅只需在数据表中增加内容或删除内容,而无需修改nginx的程序代码以使nginx识别新增加的配置内容,在本方式中,nginx只需要通过第一线程发出读取配置的指令,其余读取配置的步骤均由第二线程完成,简化了读取配置的过程,提高了读取配置的效率。
18.第二方面,本技术提供一种读取配置的装置,该装置包括:处理单元,用于检测到第一线程发出第一信息时,暂停所述第一线程;其中,所述第一信息用于指示所述第一线程从配置文件中读取nginx对应的第一配置内容,所述第一配置内容用于配置所述nginx的运行属性;启动第二线程,通过所述第二线程从嵌入式数据库中读取第二配置内容,将读取到的所述第二配置内容保存至配置空间;停止所述第二线程,启动所述第一线程,通过所述第一线程从所述配置空间获取所述第二配置内容,根据所述第二配置内容中的第一配置项,配置所述nginx的运行属性;存储单元,用于保存所述第二配置内容。
19.可选的,所述嵌入式数据库中包含有至少一张数据表,所述至少一张数据表中的每张数据表对应保存有一种类型的配置内容,所述至少一种数据表中的不同数据表保存有不同类型的配置内容;所述每张数据表中包含至少一个配置项,所述至少一个配置项中的每个配置项包括一个token与所述token对应的value。
20.可选的,在所述处理单元用于检测到第一线程发出第一信息之前,所述处理单元还用于:通过所述第一线程,在所述nginx的内存空间中,创建所述配置空间。
21.可选的,所述处理单元用于通过所述第二线程从所述嵌入式数据库中读取所述第二配置内容,具体用于:通过所述第二线程读取所述嵌入式数据库中的所有数据表。
22.可选的,所述嵌入式数据库的安装位置与所述nginx的安装位置相同。
23.可选的,所述配置项内容的类型包括以下一项或多项:全局配置、events配置、http配置、server配置、location配置。
24.可选的,在所述嵌入式数据库更新之后,所述装置还用于:所述处理单元还用于检测到所述第一线程发出第二信息时,暂停所述第一线程;其中,所述第二信息用于指示所述第一线程从所述配置文件中读取所述nginx对应的第三配置内容;所述第三配置内容用于配置所述nginx的运行属性;启动所述第二线程,通过所述第二线程从更新后的所述嵌入式数据库中读取第四配置内容,将读取到的所述第四配置内容保存至所述配置空间;启动所述第四配置内容不同于所述第二配置内容;停止所述第二线程,启动所述第一线程;控制所述第一线程从所述配置空间中获取所述第四配置内容,根据所述第四配置内容中的第二配置项,配置所述nginx的运行属性;所述存储单元还用于,保存所述第四配置内容。
25.第三方面,提供一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令,使得所述电子设备执行第一方面或第一方面任一种可选的实施方式中所述的方法。
26.第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质用于存储指令,当所述指令被执行时,使如第一方面或第一方面任一种可选的实施方式中的方法被实现。
27.本技术实施例中第二、第三以及第四方面中提供的一个或多个技术方案所具有的技术效果或优点,均可以由第一方面中提供的对应的一个或多个技术方案所具有的技术效果或优点对应解释。
附图说明
28.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
29.图1为本技术实施例提供的一种nginx构成示意图;
30.图2为本技术实施例提供的一种读取配置方法的流程图;
31.图3为本技术实施例提供的另一种读取配置方法的流程图;
32.图4为本技术实施例提供的一种读取配置的结构示意图;
33.图5为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
34.下面通过附图以及具体实施例对本技术技术方案做详细的说明,应当理解本技术实施例以及实施例中的具体特征是对本技术技术方案的详细的说明,而不是对本技术技术方案的限定,在不冲突的情况下,本技术实施例以及实施例中的技术特征可以相互组合。
35.需要理解的是,在本技术实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。在本技术实施例的描述中“多个”,是指两个或两个以上。
36.本技术实施例中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
37.nginx在读取配置文件时,通常遵循以下流程:
38.首先,当nginx启动时,会首先在内存中创建存储配置内容的地址空间;
39.其次,nginx会在本地的配置文件中按照顺序读取事件events、http、服务server、路由location等不同种类的配置块的内容,并识别这些配置块的相互的包含关系;同时,在读取配置文件的过程中,当nginx读取到某一个配置块中的某一个配置项内容时,会将第一个字符串当作该配置项的关键字(token),并将该token后的预设个数的字符串分别当作该配置项的值(value);
40.最后,在nginx读取完所有的配置文件后,会将读取到的配置项的内容保存至之前在内存中创建的地址空间,以便后续nginx进行相应的配置。
41.上述过程中,由于配置文件为文本格式,nginx在进行读取配置内容时,需要对文件中的内容进行解析,并预先设置读取配置文件文本中固定部分、固定长度的内容,十分的不灵活;并且,由于采用了文本形式的配置文件,当存在修改配置文件的需求时,需要开发人员手动的对配置文件进行读写,当存在新增配置项内容时,则需要在修改配置文件的基础上对应修改nginx的程序代码,以使nginx可以正常识别并解析出新增的配置项的内容。
42.鉴于此,本技术提出一种读取配置的方法,应用于前文所说的nginx。在本方法中,通过插件的方式,在nginx中增加线程,用以代替nginx的主线程完成配置读取。参见图1,为本技术实施例提供的一种nginx构成示意图,图1中包括第一线程与第二线程,其中,第一线程即为nginx中用以实现所有读取步骤的主线程,而图1中的第二线程则是本技术实施例中提出的用于完成读取配置内容的新增线程。
43.参见图2,为本技术实施例提供的一种读取配置的方法的流程图,其具体实施步骤如下:
44.s201:nginx检测到第一线程发出第一信息时,暂停第一线程;第一信息用于指示第一线程从配置文件中读取nginx对应的第一配置内容。
45.其中,第一线程即为nginx运行时的主线程,应理解,在一个应用软件运行时,在同一个运行进程下通常会需要运行不同的线程以实现不同的功能,因此,一个应用软件的运行可能需要多个线程进行工作。而在本技术中,是为nginx提供了一个执行读取配置的线程(即第二线程),该第二线程不同于原先nginx中的其它线程,只负责为nginx完成对配置内
容的读取,因此,前文所述的主线程(即第一线程)并不是单独指nginx中的某一个具体线程,而是指nginx中除第二线程以外的用于完成其它功能的其它线程的总和。换言之,该第一线程既可以是nginx中仅有的一个线程或是nginx中存在的多个线程,本技术对其具体数量并不做限定。
46.每次nginx启动时,都需要读取配置以完成对nginx运行时各种属性的配置,例如,需要读取全局块中的配置内容以配置日志存放路径等,还需要读取events块中的配置内容以配置nginx服务器与用户的网络连接等。因此,当nginx启动后,可以检测到指示第一线程从配置文件中读取nginx对应的第一配置内容的第一信息,而在检测到该第一信息后,即可暂停第一线程,并执行如下的步骤s202读取配置。
47.s202:nginx启动第二线程,通过第二线程从嵌入式数据库中读取第二配置内容,将读取到的第二配置内容保存至配置空间。
48.一种可能的实现方式中,第二线程为一种自定义函数,通过该自定义函数,nginx可以访问嵌入式数据,并读取嵌入式数据库中的配置内容。
49.嵌入式数据库不同于一般的数据库服务器。在一般的数据库服务器的使用过程中,数据库客户端通常通过数据库驱动程序访问数据库服务器,客户端与服务器是完全两个独立的进程,他们可以分别位于不同的计算机甚至网络中,数据库的客户端和服务器通过传输控制协议(transmission control protocol,tcp)或网际互联协议(internet protocol,ip)进行通讯。而嵌入式数据库则不需要数据库驱动程序,它与应用程序同属于一个进程,可以直接将数据库的库文件链接到应用程序中。
50.可选的,在本技术实施例中,嵌入式数据库的安装位置与nginx的安装位置相同。这样,nginx可以在自己的安装目录下使用嵌入式数据库,极大地提高了第二线程读取配置的效率。
51.可以理解的,在nginx通过第二线程从嵌入式数据库中读取第二配置内容之前,还需要规定,在嵌入式数据库中保存配置内容的具体存在形式,以及保存配置内容的方式。可选的,嵌入式数据库中的第二配置内容可以采取以下方式进行存储。
52.首先,对于nginx需求的不同类型的配置内容,可以分别创建不同的数据表用以保存不同类型的配置内容。可选的,配置内容的类型包括:全局配置、events配置、http配置、server配置、location配置。
53.例如,nginx需要的events块的配置,可以创建数据表events_info,用以存储nginx对应的events块的配置;还例如,可以创建数据表http_info,用以存储nginx对应的http块的配置,等等。总而言之,在nginx通过第二线程读取配置时,嵌入式数据库中会包含有至少一张数据表,这至少一张数据表中的每张数据表都保存有一种类型的配置内容,并且不同的数据包保存有不同类型的配置内容。
54.其次,对于每一张数据表,其保存的配置内容则包含了至少一个配置项,这至少一个配置项中的每个配置项都包括一个令牌(token)以及与该token对应的值(value)。具体的,每个配置项都占据其所在的数据表中的一列或一行的位置。参见表1,为本技术实施例提供的一种数据表的示意图。在表1中,每一列保存了一个配置项的内容,其中,每列的第一行均为token,每列的剩余部分即为token对应的value。
55.表1
56.token_1token_2token_3value_1-1value_2-1value_3-1value_1-2value_2-2value_3-2value_1-3
ꢀꢀ
57.可选的,数据表中可以由一列保存一个配置项,也可以由一行保存一个配置项,还可以由固定大小的区域保存一个配置项;并且,其保存的配置项中,token与value的位置也可以根据实际需求设定,如表1中则设定所有列中的第一行为token的位置,还可以设定为所有列中的第十行,或者是按照一行保存一个配置项时,可以设定每行的第一列为token的位置,本技术不做限制。
58.在本方式中,第二线程读取嵌入式数据库中的配置内容时,可以直接获取各个数据表中的各项内容,而不用像现有技术中需要先解析文本全文的内容后,再从全文中获取真正的配置内容,因此,通过本方式,简化了配置读取的流程,并提高了配置读取过程的效率以及准确性。
59.而对于上述嵌入式数据库中的至少一张数据表的来源,则可以采用以下几个方式:
60.方式一、在编写nginx的程序代码时,由开发人员创建保存有各个配置内容的数据表,并将该数据表保存在嵌入式数据库中。
61.在本方式中,由开发人员直接创建保存配置内容的数据表,确保了配置内容的准确性。
62.方式二、在安装nginx时,通过第二线程获取本地的配置文件,由第二线程识别文本形式的配置文件,并创建保存对应配置内容的数据表,将生成的数据表保存至嵌入式数据库中。
63.在本方式中,由第二线程创建数据表,既节省了人力成本,不需要开发人员手动添加配置文件,也提高了本方案的适用性,第二线程可以直接根据nginx自身的配置文件创建数据表,不需要由开发人员单独设置。
64.在nginx通过第二线程从嵌入式数据库中读取第二配置内容时,其具体的读取方式可以是:1、读取嵌入式数据库中所有数据表中的每张数据表中的所有内容,2、读取嵌入式数据库中所有数据表中的每张数据表中的部分内容。
65.在第二线程从嵌入式数据库中读取到第二配置内容后,会将读取到的第一配置项内容保存至配置空间中,同时,第二线程发出完成信息,用以指示第二线程已成功读取到第二配置内容,并将其保存至配置空间各种。nginx接收到上述完成信息后,执行下面的步骤s203。
66.s203:nginx停止第二线程,重新启动第一线程,通过第一线程从配置空间获取第二配置内容,并根据第二配置内容中的第一配置项配置nginx运行时的各项属性。
67.nginx重新启动第一线程后,第一线程直接从配置空间获取第二配置内容。可选的,配置空间是nginx检测到第一线程发出第一信息之前,通过第一线程在nginx的内存空间中创建出来的;其中,该配置空间可以根据配置内容的类型分别保存对应的配置内容。
68.在本方式中,由第一线程在nginx的内存中创建配置空间,这样,属于nginx运行进程的第一线程与第二线程均可直接访问该配置空间,简化了第一线程与第二线程的交互过
程,提高了配置读取的效率。
69.第一线程获取到第二配置内容后,根据第二配置内容中的第一配置项,配置nginx运行时的各种属性。可选的,第一配置项中可以包含第二配置内容中的全部配置项的内容,也可以只包含第二配置内容中的部分配置项的内容,而第一配置项中包含的具体内容,则由第一线程按需提取。
70.在本方案中,由数据表保存nginx所需要的配置内容,第二线程可以直接从数据表中获取所有的配置内容,而不用像现有技术中,需要由nginx对文本内容进行解析并识别后进行选择性地获取,提高了读取配置的效率,也提高了配置内容的可读性。并且,由嵌入式数据库保存上述数据表,可以在占用较少的存储空间的同时,高效率地访问嵌入式数据库中的数据表,进一步地提高了读取配置的效率。另外,采用第二线程代替第一线程进行本方案中的配置读取,实现了将配置读取插件化,无需额外修改原有的nginx的程序代码,即可将第二线程读取配置这一过程,以插件的形式配置到原有的nginx中,降低了本方案的复杂度,提高了本方案的可靠性与适用性。
71.由于在本技术实施例中,配置内容以数据的形式保存在数据表中,因此,对于数据表中,配置内容的修改、阅读、操作都更加便捷。进一步的,当需要在数据表中新增配置项时,也仅需要在空白位置按照原先的保存规则,新增一列或一行字段即可。
72.可选的,在嵌入式数据库更新之后,nginx需要再一次读取配置时,参见图3,其具体实施步骤如下:
73.s301:nginx检测到第一线程发出第二信息时,暂停第一线程,其中,第二信息用于指示第一线程从配置文件中读取nginx对应的第三配置内容。
74.s302:nginx启动第二线程,通过第二线程从更新后的嵌入式数据库中读取第四配置内容,将读取到的第四配置内容保存至配置空间。
75.其中,第四配置内容不同于第二配置内容,第四配置内容是嵌入式数据库更新以后的保存在嵌入式数据库中的配置内容。应理解,更新嵌入式数据库既包括修改嵌入式数据库中的任一配置项,也包括新增或删除嵌入式数据库中的任一配置项,本技术不做限制。具体读取过程以及保存过程请参见前文步骤s202中的内容。
76.s303:nginx停止第二线程,启动第一线程;控制第一线程从配置空间中获取第四配置内容,根据所述第四配置内容中的第二配置项,配置所述nginx的运行属性。
77.其中,第二配置项可以是第四配置内容中的全部配置项,也可以是第四配置内容中的部分配置项,而具体包括的配置项则是由第一线程根据配置需求进行选取的,可以只是更新后的配置项的内容,也可以是更新之前的配置项的内容,本技术不做限制。
78.在本方式中,数据表中配置内容的修改可以直接修改数据表中的具体数值,而无需读取文本内容后再进行修改,因此,配置内容具有较高的可读性,且提高了修改配置内容的效率。并且,在数据表中新增或删除配置项的内容时,仅仅只需在数据表中增加内容或删除内容,而无需修改nginx的程序代码以使nginx识别新增加的配置内容,在本方式中,nginx只需要通过第一线程发出读取配置的指令,其余读取配置的步骤均由第二线程完成,简化了读取配置的过程,提高了读取配置的效率。
79.基于同一发明构思,本技术实施例还提供一种读取配置的装置。
80.参见图4,本技术实施例提供一种读取配置的装置,该装置可以是由上述电子设备
programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
93.应理解,本技术实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dynamic ram,dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data eate sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。
94.需要说明的是,当处理器为通用处理器、dsp、asic、fpga或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件时,存储器(存储模块)可以集成在处理器中。
95.应注意,本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
96.作为另一种可能的产品形态,本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质用于存储指令,当所述指令被执行时,使得计算机执行上述方法实例中任一设备所执行的方法步骤。
97.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
98.本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
99.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
100.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
101.显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1