1.本发明一般涉及轨道交通领域,并且更具体地,涉及一种基于轨道交通列控系统的数据加密调度方法及装置。
背景技术:2.在轨道交通列控系统中,一般由通信控制器作为轨道交通列控系统外通信的接口,所有的数据、消息等都是通过通信控制器的接口进行收发,如以太网接口。发布订阅系统运行在通信控制器上,在一个控制微周期内,多个订阅对象频繁的数据交互,使得通信控制器的使用率过高,很容易出现故障。
3.可信计算tpm/tcm是当前重要的加密的重要实现手段,在处理器外挂芯片时,数据首先从处理器发送给tcm芯片,tcm完成加密后将数据返回到处理器,再由处理器在内存中保存,整个过程耗时比较长;而且一般在数据打包时对数据进行加密,然后发送,这样一次性加密的数据量较大,耗时较长,影响发送效率,不利于轨道交通列控系统一个控制周期内完成所有的处理工作以及进一步缩短控制微周期。
技术实现要素:4.根据本发明的实施例,提供了一种基于轨道交通列控系统的数据加密调度方案。本方案能够节省处理器的等待时间,提高处理器的处理效率和算力。
5.在本发明的第一方面,提供了一种基于轨道交通列控系统的数据加密调度方法。该方法包括:
6.通信控制器接收各个生产者的数据,将所述生产者的数据存入第一消息队列;
7.若所述通信控制器中的处理线程处于空闲状态,则调用所述处理线程对第一消息队列中的生产者的数据进行处理;
8.当所述处理线程中处理完毕的生产者的数据为订阅数据时,将所述处理完毕的生产者的订阅数据存入第二消息队列;
9.若tcm加密线程处于空闲状态,则所述通信控制器调用所述tcm加密线程对第二消息队列中的处理完毕的生产者的订阅数据进行加密,并从所述tcm加密线程读取已加密数据进行存储;
10.当一个或多个消费者对应的数据全部加密完毕时,将所述数据打包发送至对应的消费者。
11.进一步地,所述第一消息队列用于保存生产者的数据,并按照先入先出的顺序进行出入队;
12.所述第二消息队列用于保存所述处理线程处理完毕的生产者的数据,并按照先入先出的顺序进行出入队。
13.进一步地,所述方法还包括:
14.判断处理完毕的生产者的数据是否为订阅数据,若处理完毕的生产者的数据中存
在订阅标记,则所述数据为订阅数据;否则所述数据为非订阅数据。
15.进一步地,当一个或多个消费者对应的数据全部加密完毕时,还包括:
16.判断所述数据对应的生产者是否均为合法生产者,若是,则将所述数据打包发送至对应的消费者;否则,将非法生产者的数据丢弃,并将合法生产者的数据打包发送至对应的消费者。
17.进一步地,判断所述数据对应的生产者是否为合法生产者,包括:
18.若所述生产者为白名单中的生产者,且所述生产者生产的数据量大小符合校验范围,则所述生产者为合法生产者,否则所述生产者为非法生产者。
19.进一步地,若所述处理线程处于空闲状态,且所述第一消息队列为空队列,则所述通信控制器调用所述处理线程对接收到的生产者的数据进行处理。
20.进一步地,若所述tcm加密线程处于空闲状态,且所述第二消息队列为空队列,则所述通信控制器调用所述tcm加密线程对处理完毕的生产者的订阅数据进行加密。
21.进一步地,当所述通信控制器从所述tcm加密线程读取到已加密数据时,若当前存储的已加密数据中包含任一消费者的全部订阅数据,则所述消费者的全部订阅数据加密完毕,将所述全部订阅数据打包发送至所述消费者。
22.在本发明的第二方面,提供了一种基于轨道交通列控系统的数据加密调度装置。该装置包括:
23.接收模块,用于接收各个生产者的数据,将所述生产者的数据存入第一消息队列;
24.第一调度模块,用于判断若所述通信控制器中的处理线程处于空闲状态,则调用所述处理线程对第一消息队列中的生产者的数据进行处理;
25.第二调度模块,用于当所述处理线程中处理完毕的生产者的数据为订阅数据时,将所述处理完毕的生产者的数据存入第二消息队列;
26.第三调度模块,用于若tcm加密线程处于空闲状态,则调用所述tcm加密线程对第二消息队列中的处理完毕的生产者的数据进行加密,并从所述tcm加密线程读取已加密数据进行存储;
27.打包模块,用于当一个或多个消费者对应的数据全部加密完毕时,将所述数据打包发送至对应的消费者。
28.在本发明的第三方面,提供了一种电子设备。该电子设备至少一个处理器;以及与所述至少一个处理器通信连接的存储器;所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明第一方面的方法。
29.应当理解,发明内容部分中所描述的内容并非旨在限定本发明的实施例的关键或重要特征,亦非用于限制本发明的范围。本发明的其它特征将通过以下的描述变得容易理解。
附图说明
30.结合附图并参考以下详细说明,本发明各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
31.图1示出了根据本发明的实施例的系统架构图;
32.图2示出了根据本发明的实施例的基于轨道交通列控系统的数据加密调度方法的流程图;
33.图3示出了根据本发明的实施例的基于轨道交通列控系统的数据加密调度装置的方框图;
34.图4示出了能够实施本发明的实施例的示例性电子设备的方框图;
35.其中,400为电子设备、401为cpu、402为rom、403为ram、404为总线、405为i/o接口、406为输入单元、407为输出单元、408为存储单元、409为通信单元。
具体实施方式
36.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本发明保护的范围。
37.另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
38.本发明中,取消了控制微周期内划分的多个周期,变成了流水线的方式,避免了每包数据仅打包一个数据发送造成的频繁发送问题,节省处理器的等待时间,提高处理器的处理效率和算力。
39.图1示出了根据本发明的实施例的系统架构图。
40.系统架构中包含有数据生产者(生产者)、通信控制器、可信密码模块(terminal compliance management,tcm)芯片和数据消费者(消费者)。
41.生产者,用于产生数据,所述数据如列车速度、列车位置、限速等数据,并将生产出的数据发送给通信控制器。
42.通信控制器,用于实现整个系统的通信控制以及数据调度,当采用发布订阅模式时,代理运行在通信控制器。通信控制器将生产者的数据发送至tcm芯片进行加密,并从tcm芯片中读取加密后的数据进行存储。
43.tcm芯片,用于对通信控制器发送的数据利用国密加密算法进行加密。
44.消费者,用于接收通信控制器发送的生产者数据。
45.图2示出了本发明实施例的基于轨道交通列控系统的数据加密调度方法的流程图。
46.该方法包括:
47.s201、通信控制器接收各个生产者的数据,将所述生产者的数据存入第一消息队列。
48.在微周期开始时,通信控制器开始陆续获取到生产者的数据。当采用发布订阅模式时,代理运行在所述通信控制器上,负责通信控制以及数据调度。
49.通信控制器接收各个生产者的数据,对数据进行解析,将解析后的数据存储到第一消息队列中。所述第一消息队列为先入先出队列,用于保存各个生产者解析后的数据。
50.作为本发明的一种实施例,当通信控制器接收到第一生产者的数据时,对所述第
一生产者的数据进行解析,将解析后的所述第一生产者的数据存入第一消息队列,并等待其他生产者的数据。此时,第一消息队列中存储有所述第一生产者的数据。
51.当通信控制器接收到第二生产者的数据时,对所述第二生产者的数据进行解析,将解析后的所述第二生产者的数据存入第一消息队列,并等待其他生产者的数据。此时第一消息队列种存储有所述第一生产者的数据和所述第二生产者的数据,且根据先入先出原则,所述第一生产者的数据优先于所述第二生产者的数据出队。
52.若通信控制器又接收到第三生产者的数据,则对所述第三生产者的数据进行解析,将解析后的所述第三生产者的数据存入第一消息队列,并等待其他生产者的数据。此时第一消息队列种存储有所述第一生产者的数据、所述第二生产者的数据和所述第三生产者的数据,且根据先入先出原则,所述第一生产者的数据优先于所述第二生产者的数据出队,所述第二生产者的数据优先于所述第三生产者的数据出队,以此类推。
53.作为本发明的一种实施例,若所述处理线程处于空闲状态,且所述第一消息队列为空队列,则所述通信控制器直接调用所述处理线程对接收到的生产者的数据进行处理,处理线程进入处理状态,而不必要将该生产者的数据存入消息队列。如此可以使过程更加简洁,效率更高。所述空队列即消息队列中无数据。
54.s202、若所述通信控制器中的处理线程处于空闲状态,则调用所述处理线程对第一消息队列中的生产者的数据进行处理。
55.在所述通信控制器中设置处理线程,所述处理线程用于对数据进行处理。所述处理线程至少包括两种状态,分别为空闲状态和处理状态。当处理线程从第一消息队列中获取到数据进行数据处理时,所述处理线程进入处理状态;当处理线程结束对当前数据的处理时,由处理状态切换为空闲状态。
56.若所述处理线程结束对当前数据的处理,或所述处理线程持续处于空闲状态,则若此时第一消息队列中有生产者的数据,通信控制器调用所述处理线程从第一消息队列中按顺序获取生产者的数据进行数据处理,将空闲状态切换为处理状态。
57.作为本发明的一种实施例,对数据进行处理是指数据被从第一消息队列中取出,并经过指定的软件进行数据处理,获得数据结果。其中,数据处理包括多种形式,例如按照既定的协议对数据进行解析,回到有效数据;或者对密文数据进行解密获得明文;又或者是对数据进行数学运算,获得计算结果等。
58.s203、当所述处理线程中处理完毕的生产者的数据为订阅数据时,将所述处理完毕的生产者的订阅数据存入第二消息队列。
59.所述处理完毕即所述处理线程中的数据经过对应的处理得到数据结果。
60.进一步地,当所述处理线程中的数据处理完毕时,还需要判断处理完毕的生产者的数据是否为订阅数据。
61.由于在发布订阅机制中,消费者会向代理发送消息,表明哪些数据是消费者需要的,代理会对该种类型的数据进行标记,被标记的数据中即存在订阅标记。故可以根据数据中是否存在订阅标记判断该数据是否为订阅数据。
62.即,所述订阅数据的判断过程,包括:
63.若处理完毕的生产者的数据中存在订阅标记,则所述数据为订阅数据;否则所述数据为非订阅数据。
64.而若所述数据为订阅数据,则将该数据存入第二消息队列中。所述第二消息队列为先入先出队列,用于保存所述处理线程处理完毕的生产者的数据。若所述数据不为订阅数据,则将所述处理完毕的生产者数据从所述处理线程中取出,不做其他处理。
65.作为本发明的一种实施例,若所述处理线程处理完所述第一生产者的数据,且所述第一生产者的数据中存在订阅标记,则该数据为订阅数据,将所述第一生产者的数据存入第二消息队列,同时所述处理线程继续从第一消息队列中获取第二生产者的数据进行处理。此时,第二消息队列中存储有所述第一生产者的数据。
66.若所述处理线程处理完所述第二生产者的数据,且所述第二生产者的数据中存在订阅标记,则该数据为订阅数据,将所述第二生产者的数据存入第二消息队列,同时所述处理线程继续从第一消息队列中获取第三生产者的数据进行处理。此时,第二消息队列中存储有所述第一生产者的数据和第二生产者的数据,且根据先入先出原则,所述第一生产者的数据优先于所述第二生产者的数据出队。
67.若所述处理线程处理完所述第三生产者的数据,且所述第三生产者的数据中存在订阅标记,则该数据为订阅数据,将所述第三生产者的数据存入第二消息队列,同时所述处理线程继续从第一消息队列中获取第下一生产者的数据进行处理。此时,第二消息队列中存储有所述第一生产者的数据、第二生产者的数据和第三生产者的数据,且根据先入先出原则,所述第一生产者的数据优先于所述第二生产者的数据出队,所述第二生产者的数据优先于所述第三生产者的数据出队,以此类推。
68.由于tcm模块芯片内部的算力有限,国密算法也比较复杂,所以tcm加密速度相对较慢。故tcm加密时间周期大于所述处理线程对数据进行处理的周期。通信控制器不等待tcm处理完,而是直接从第一消息队列中取数据到处理线程进行处理,保证处理线程的处理效率,几乎无间断处理。而当tcm加密线程还处于工作状态时,不需要等待tcm加密线程加密完成,而是将处理完毕的生产者数据从处理线程中取出,存入第二消息队列中。
69.作为本发明的一种实施例,当所述处理线程处理完所述第三生产者的数据,且所述第三生产者的数据中存在订阅标记时,若tcm加密线程处于空闲状态,且所述第二消息队列为空队列,则所述通信控制器直接用直接存储访问(direct memory access,dma)的方式发送给tcm加密线程对数据进行国密算法的加密。tcm加密线程进入工作状态,而不必要将该生产者的数据存入第二消息队列。如此可以使过程更加简洁,效率更高。所述空队列即消息队列中无数据。
70.s204、若tcm加密线程处于空闲状态,则所述通信控制器调用所述tcm加密线程对第二消息队列中的处理完毕的生产者的订阅数据进行加密,并从所述tcm加密线程读取已加密数据进行存储。
71.所述tcm加密线程处于空闲状态可能为tcm加密线程加密完毕,且加密后的数据被通信控制器取走,此时所述tcm加密线程由工作状态切换到空闲状态。所述tcm加密线程处于空闲状态还可能为tcm加密线程持续保持空闲状态,即还未对数据进行加密。
72.所述通信控制器调用所述tcm加密线程对第二消息队列中的处理完毕的生产者的订阅数据进行加密。其中,所述tcm加密线程按照第二消息队列的先入先出原则,获取到对应的生产者的订阅数据,并进行加密处理。所述通信控制器在调用tcm加密线程时,还从所述tcm线程中读取已加密数据进行存储。例如,存储于所述通信控制器的存储列表中。
73.当tcm加密线程中的生产者的订阅数据加密完毕时,等待通信控制器的调用。若处理线程处理完毕,通信控制器会从所述tcm加密线程中读取已加密完毕的生产者的订阅数据,存储在通信控制器的存储列表中;因为通信控制器的读取,使所述tcm加密线程由工作状态切换为空闲状态,此时通信控制器调用tcm加密线程对第二消息队列中的处理完毕的生产者的订阅数据进行加密。
74.作为本发明的一种实施例,通信控制器接收到第一生产者的数据,调用处理线程对所述第一生产者的数据进行处理;通信控制器陆续接收到第二生产者的数据、第三生产者的数据等,存储在第一消息队列中;当所述处理线程中第一生产者的数据处理完毕时,若该数据为订阅数据,则将所述第一生产者的数据读取到tcm加密线程中进行加密;所述第一生产者的数据从所述处理线程中读取出后,使处理线程由处理状态切换为空闲状态,通信控制器调用所述处理线程从第一消息队列中读取第二生产者的数据进行处理;由于处理线程处理周期小于tcm加密线程的加密周期,故当第二生产者的数据处理完毕时,tcm加密线程可能仍然处于工作状态,此时将第二生产者的数据存入第二消息队列中,通信控制器调用处理线程从第一消息队列中继续读取第三生产者的数据进行处理;若tcm加密线程中第一生产者的订阅数据加密完毕,通信控制器从tcm加密线程中读取出已加密完毕的第一生产者的订阅数据,进行存储,使tcm加密线程由工作状态切换为空闲状态,调用tcm线程从第二消息队列中读取第二生产者的订阅数据进行加密。如此直至所有生产者的数据都被处理完毕,被加密的订阅数据也都加密完毕,结束。
75.s205、当一个或多个消费者对应的数据全部加密完毕时,将所述数据打包发送至对应的消费者。
76.当所述通信控制器从所述tcm加密线程读取到已加密数据时,若当前存储的已加密数据中包含任一消费者的全部订阅数据,则所述消费者的全部订阅数据加密完毕,将所述全部订阅数据打包发送至所述消费者。
77.作为本发明的一种实施例,第一消费者订阅了第一、第二和第三生产者的数据,经过上述过程,通信控制器陆续读取到了第一生产者和第二生产者加密后的订阅数据,当通信控制器读取到第三生产者的加密后的订阅数据时,当前存储的已加密数据中已经包含了第一消费者的全部订阅数据,即第一消费者的全部订阅数据均已加密完毕,此时不需要等待全部生产者的数据都加密完毕,即可对所述第一消费者订阅的数据进行打包,发送给所述第一消费者。这样就避免了每包数据仅打包一个数据并发送,造成频繁发送的问题,也避免了等全部生产者的数据都加密完毕,将数据统一打包发送给对应消费者,使处理器陷入等待状态,效率降低,浪费算力的问题。根据本实施例的方式,节省处理器的等待时间,提高处理器的处理效率和算力。
78.进一步地,当一个或多个消费者对应的数据全部加密完毕时,还包括:
79.判断所述数据对应的生产者是否均为合法生产者,若是,则将所述数据打包发送至对应的消费者;否则,将非法生产者的数据丢弃,并将合法生产者的数据打包发送至对应的消费者。
80.在上述实施例中,在对所述第一消费者订阅的数据进行打包之前,需要判定所述第一消费者订阅的数据是否均为合法生产者生产的数据。具体判断过程为:若所述生产者为白名单中的生产者,且所述生产者生产的数据量大小符合校验范围,则所述生产者为合
法生产者,否则所述生产者为非法生产者。避免由于恶意攻击发送的数据一直存在于消息队列,使得不能进行后续的流程。
81.每个生产者能够产生的数据种类和数据量大小对于开发的人员是已知的,通过进行数据的种类设置id以及将数据量,数据频率等数据进行绑定,可以实现对生产者的校验。
82.根据本发明的实施例,取消了控制微周期内划分的多个周期,变成了流水线的方式,避免了每包数据仅打包一个数据发送造成的频繁发送问题,节省处理器的等待时间,提高处理器的处理效率和算力。
83.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本发明所必须的。
84.以上是关于方法实施例的介绍,以下通过装置实施例,对本发明所述方案进行进一步说明。
85.如图3所示,装置300包括:
86.接收模块310,用于接收各个生产者的数据,将所述生产者的数据存入第一消息队列;
87.第一调度模块320,用于判断若所述通信控制器中的处理线程处于空闲状态,则调用所述处理线程对第一消息队列中的生产者的数据进行处理;
88.第二调度模块330,用于当所述处理线程中处理完毕的生产者的数据为订阅数据时,将所述处理完毕的生产者的数据存入第二消息队列;
89.第三调度模块340,用于若tcm加密线程处于空闲状态,则调用所述tcm加密线程对第二消息队列中的处理完毕的生产者的数据进行加密,并从所述tcm加密线程读取已加密数据进行存储;
90.打包模块350,用于当一个或多个消费者对应的数据全部加密完毕时,将所述数据打包发送至对应的消费者。
91.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
92.本发明的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
93.根据本发明的实施例,本发明还提供了一种电子设备和一种可读存储介质。
94.图4示出了可以用来实施本发明的实施例的电子设备400的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
95.设备400包括计算单元401,其可以根据存储在只读存储器(rom)402中的计算机程序或者从存储单元408加载到随机访问存储器(ram)403中的计算机程序,来执行各种适当
的动作和处理。在ram 403中,还可存储设备400操作所需的各种程序和数据。计算单元401、rom 402以及ram 403通过总线404彼此相连。输入/输出(i/o)接口405也连接至总线404。
96.设备400中的多个部件连接至i/o接口405,包括:输入单元406,例如键盘、鼠标等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
97.计算单元401可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元401的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元401执行上文所描述的各个方法和处理,例如方法xxx。例如,在一些实施例中,方法xxx可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由rom 402和/或通信单元409而被载入和/或安装到设备400上。当计算机程序加载到ram 403并由计算单元401执行时,可以执行上文描述的方法xxx的一个或多个步骤。备选地,在其他实施例中,计算单元401可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法xxx。
98.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
99.用于实施本发明的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
100.在本发明的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
101.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视
器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
102.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
103.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
104.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
105.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。