WO2017190663A1 - Linux-based registry service system and method, and financial self-service device - Google Patents

Linux-based registry service system and method, and financial self-service device Download PDF

Info

Publication number
WO2017190663A1
WO2017190663A1 PCT/CN2017/082939 CN2017082939W WO2017190663A1 WO 2017190663 A1 WO2017190663 A1 WO 2017190663A1 CN 2017082939 W CN2017082939 W CN 2017082939W WO 2017190663 A1 WO2017190663 A1 WO 2017190663A1
Authority
WO
WIPO (PCT)
Prior art keywords
node
registry
data
memory
node data
Prior art date
Application number
PCT/CN2017/082939
Other languages
French (fr)
Chinese (zh)
Inventor
林宇龙
熊飞
黄三朋
潘煜豪
梁建明
Original Assignee
广州广电运通金融电子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 广州广电运通金融电子股份有限公司 filed Critical 广州广电运通金融电子股份有限公司
Publication of WO2017190663A1 publication Critical patent/WO2017190663A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules

Definitions

  • the invention relates to the field of self-service terminals, in particular to a Linux-based registry service system, method and financial self-service device.
  • the registry is a core database in the Windows operating system, which stores various parameters, directly controls the startup of windows, the loading of hardware drivers, and the operation of some windows applications, thus playing a central role in the entire system.
  • These functions include software and hardware related configuration and status information, such as the initial conditions, preferences, and uninstallation data of the application and the resource manager shell stored in the registry, the settings of the entire system of the networked computer, and each Permissions, file extensions associated with applications, descriptions of hardware components, status and properties, performance logging and other underlying system state information, and other data.
  • the memory configuration table can be used to ensure effective backup and restoration of memory data in the event of a disaster.
  • the program reads and saves most of the configuration directly in the file. There is no unified interface operation, which is inconvenient for code compatibility between various systems. Moreover, the speed of reading data is slow, and the modification of the registry cannot be guaranteed. And the security of multiple concurrent access.
  • an object of the present invention is to provide a Linux-based registry service system, method, and financial self-service device, which can implement a registry service with good compatibility, read and write security, and multiple concurrent access security.
  • the invention provides a Linux-based registry service system, comprising:
  • a memory registry building unit configured to load a registry data file under the operating system, and read the saved configuration table data in the registry data file through a database interface, and construct a memory registry in the memory;
  • a registry operating unit for collecting node data from a registry editor or a user process and numbering the nodes According to transmission to the registry service unit;
  • the registry service unit is configured to perform corresponding operations on the node corresponding to the node data in the memory registry according to an operation manner of the memory registry, and after the operation is completed, according to the operation result
  • the registry operation unit returns an operation confirmer; wherein the operation mode is one of reading, writing, and deleting.
  • the memory registry is a configuration table for writing temporary configuration data into the memory according to a pre-designed data structure without writing to the disk, wherein the memory registry is composed of at least one node, and each The nodes include a master node and a child node, and the master node includes a master node id, and the child node includes a child node id and a node data value.
  • the operation confirmation code is an acknowledgement character or a negative response character
  • the node data includes a primary node and a child node
  • the primary node includes a primary node id
  • the child node includes a child node id and a node data value
  • the mode of operation is read;
  • the registry service unit specifically includes:
  • a first id obtaining module configured to acquire the primary node id and the child node id from the node data
  • a reading module configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id as the node data and a node of the child node id; if so, reading the node data value in the node data, and returning the node data and the confirmation character to the registry operation unit; if not, to the registry operation unit Return a negative response character;
  • the registry operating unit is further configured to: after receiving the confirmation character and the node data, confirm that the reading operation is successful, and deliver the node data to the registry editor or the user process; After receiving the negative response character, it is confirmed that the read operation has failed, and the read failure information is fed back to the registry editor or the user process.
  • the operation confirmation code is an acknowledgement character or a negative response character
  • the node data includes a primary node id, a child node id, a node data value, and a temporary data mark
  • the operation mode is writing
  • the registry service unit specifically includes:
  • a second id obtaining module configured to acquire the primary node id and the child node id from the node data
  • a writing module configured to send the primary node id and the child node id into a read interface of the memory registry, and query whether the memory registry has the same primary node as the node data a node of the id and the child node id; if yes, modifying the node data value of the node that is queried to the node data value of the node data; if not, adding the node data to the memory registry in;
  • a first temporary data determining module configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit; if not, call the database interface to call the node data Write to the registry data file and return a confirmation character to the registry operating unit.
  • the operation confirmation code is an acknowledgement character or a negative response character
  • the node data includes a master node id and a child. Node id, node data value, and temporary data tag; the operation mode is deletion;
  • the registry service unit specifically includes:
  • a third id obtaining module configured to acquire the primary node id and the child node id from the node data
  • a deleting module configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id and the child data as the node data a node of the node id; if so, deleting the node and notifying the second temporary data determination module; if not, returning a negative response character to the registry operation unit;
  • the second temporary data determining module is configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit; if not, calling the database interface to Node data is deleted from the registry data file and a confirmation character is returned to the registry operating unit.
  • the invention also provides a Linux-based registry service method, comprising:
  • the memory registry is a configuration table for writing temporary configuration data into the memory according to a pre-designed data structure without writing to the disk, wherein the memory registry is composed of at least one node, and each The nodes include at least a primary node id, a child node id, and a node data value.
  • the operation confirmation code is an acknowledgement character or a negative response character
  • the node data includes a primary node id, a child node id, and a node data value; the operation mode is read;
  • the operation confirmation code is an acknowledgement character or a negative response character
  • the node data includes a primary node id, a child node id, a node data value, and a temporary data mark
  • the operation mode is writing
  • the operation confirmation code is an acknowledgement character or a negative response character
  • the node data includes a primary node id, a child node id, a node data value, and a temporary data identifier
  • the operation mode is deletion
  • the invention also provides a financial self-service device, including the above-mentioned Linux registry service system.
  • the Linux-based registry service system and method provided by the embodiments of the present invention can provide a unified function for all running software by constructing a memory registry in the memory and performing node data operation in the memory registry in the memory. Efficient and secure registry configuration data operations to meet the needs of data sharing between processes. At the same time, it can also realize the file format compatible with the windows registry, and provide an efficient windows platform code porting interface, which can quickly transplant the windows code to the Linux kernel platform. In addition, because it operates in memory, it also provides efficient storage and secures registry read and write security and multiple concurrent access.
  • the Linux-based registry service system and method of the invention are applied to financial self-service devices (such as ATM ATM, remote video teller machine VTM, clearing machine, etc.), which can realize system autonomous control and improve equipment security.
  • financial self-service devices such as ATM ATM, remote video teller machine VTM, clearing machine, etc.
  • FIG. 1 is a schematic structural diagram of a Linux-based registry service system according to an embodiment of the present invention.
  • FIG. 2 is a schematic diagram of the working principle of a Linux-based registry service system according to an embodiment of the present invention.
  • FIG. 3 is a data structure diagram of a memory registry provided by an embodiment of the present invention.
  • FIG. 4 is a data structure diagram of a node of the memory registry shown in FIG.
  • FIG. 5 is a schematic diagram of the working principle of a registry operation unit according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of a registry service unit according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of a registry service unit according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of a registry service unit according to an embodiment of the present invention.
  • FIG. 9 is a schematic flowchart of a Linux-based registry service method according to an embodiment of the present invention.
  • FIG. 10 is a flowchart of execution of a registry operation unit according to an embodiment of the present invention.
  • FIG. 11 is a flowchart of execution of a memory registry building unit and a registry service unit according to an embodiment of the present invention.
  • the present invention provides a Linux-based registry service system (hereinafter referred to as a registry service system) 100.
  • the registry service system 100 includes a memory registry building unit 10 and a registry operating unit. 20 and registry service unit 30, wherein:
  • the memory registry building unit 10 is configured to load a registry data file under an operating system, and read the saved configuration table data in the registry data file through a database interface, and construct a memory registry in the memory.
  • the memory registry building unit 10 can load a registry data file under the operating system (for a Linux system, /etc/reg.dat can be loaded). And through the database interface (such as sqlite3 interface) read the saved configuration table data in the registry data file, build a memory registry in memory.
  • the database interface such as sqlite3 interface
  • the memory registry is a configuration table that writes temporary configuration data into the memory according to a pre-designed data structure without writing to the disk, and the memory registry is restarted in the system. After resetting, the memory registry will be deleted after the system is restarted.
  • the memory registry is composed of a plurality of nodes, wherein each node includes at least one master.
  • a node (tabRegNode) and a child node (tabRegItem), the data structure of the master node and the child node is as shown in FIG. 4, wherein FK is a database foreign key, and PK is a database primary key.
  • the registry operating unit 20 is configured to collect node data from a registry editor or a user process, and transmit the node data to the registry service unit 30.
  • the node data also has a data structure as shown in FIG. 4.
  • the registry operation unit 20 can input the node data to the interface by calling the RegAPI read/write data interface, and thereafter, the registry operation unit 20
  • the node data is encapsulated into a data stream format suitable for transmission (such as a binary data stream) and sent to the registry service unit 30 via the TCP/IP protocol.
  • the registry operation unit 20 waits for an operation confirmation code returned by the registry service unit 30.
  • the operation confirmation code may include a return confirmation character (Ack) and a negative response character (Nak).
  • the registry service unit 30 is configured to perform corresponding operations on the node corresponding to the node data in the memory registry for the operation mode of the memory registry, and after the operation is completed, according to the operation result
  • the registry operation unit 20 returns an operation confirmer; wherein the operation mode is one of reading, writing, and deleting.
  • the operations on the memory registry mainly include reading, writing (including modification and addition), and deleting. The following will be explained one by one.
  • the registry service unit 30 specifically includes:
  • the first id obtaining module 31 is configured to obtain the primary node id and the child node id from the node data.
  • the registry service unit 30 after receiving the node data, obtains the master node id and the child node id from the node data after parsing the node data.
  • the reading module 32 is configured to pass the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id as the node data. And a node of the child node id; if yes, reading the node data value in the node data, and returning the confirmation character (Ack) and the encapsulated node data to the registry operation unit 20 through the tcp/ip protocol; If not, a negative response character (Nak) is returned to the registry operating unit 20 via the tcp/ip protocol.
  • the registry operation unit 20 after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the read operation is successful, and after parsing the node data, transfers the node data. Up to the registry editor or the user process; after receiving the negative response character, confirming that the read operation failed, and feeding back the read failure information to the registry editor or the user process.
  • the registry service unit 30 specifically includes:
  • the second id obtaining module 33 is configured to obtain the primary node id and the child node id from the node data.
  • the writing module 34 is configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same master as the node data. a node id and a node of the child id; if yes, modifying the node data value of the queried node to a node data value of the node data; if not, adding the node data to the memory registration In the table.
  • the first temporary data determining module 35 is configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit 20; if not, calling the database interface to The node data is written into the registry data file and a confirmation character is returned to the registry operation unit 20.
  • the node data is temporary data, and only needs to be written on the memory registry, that is, storage to disk is not required. on. If it is not 0, it indicates that the node data is non-temporary data, in addition to writing in the memory registry, it needs to be written into the registry data file under the operating system (that is, written to /etc/ In reg.dat).
  • the registry operation unit 20 after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the write operation is successful; after receiving the negative response character, confirms that the write operation fails. And feeding back the failure information to the registry editor or the user process.
  • the registry service unit 30 specifically includes:
  • the third id obtaining module 36 is configured to obtain the primary node id and the child node id from the node data.
  • the deleting module 37 is configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id as the node data and a node of the child node id; if so, deleting the node and notifying the second temporary data determining module 38; if not, returning a negative response character to the registry operating unit 20;
  • the second temporary data determining module 38 is configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit; if not, invoke the database interface The node data is deleted from the registry data file and a confirmation character is returned to the registry operating unit.
  • the registry operation unit 20 after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the deletion operation is successful; after receiving the negative response character, confirms that the deletion operation fails, and The registry The editor or the user process feedback deletes the failure information.
  • the registry operation unit 20 if the registry operation unit 20 does not receive the operation confirmation code returned by the registry service unit 30 within a predetermined time, the registry operation unit 20 reports a communication timeout. , notify the registry editor or user operation failed, and end this operation.
  • the registry service system 100 constructs a memory registry in the memory through the memory registry building unit 10, and the registry service unit 30 performs data operations in the memory registry. It provides a unified, efficient, and secure registry configuration data operation for all running software to meet the data sharing needs of each process. At the same time, it can also realize the file format compatible with the windows registry, and provide an efficient windows platform code porting interface, which can quickly transplant the windows code to the Linux kernel platform. In addition, because the operation of the memory registry is performed in memory, it can provide efficient storage and ensure the security of the registry read and write security and multiple concurrent access.
  • the present invention further provides a Linux-based registry service method, which can be executed by the foregoing registry service system 100, and includes the following steps:
  • S101 Load a registry data file under an operating system, and read the saved configuration table data in the registry data file through a database interface, and construct a memory registry in the memory.
  • the registry data file under the operating system can be loaded (for Linux system, /etc/reg.dat can be loaded), and the database interface (such as sqlite3 interface) is used.
  • the saved configuration table data is read in the registry data file, and the memory registry is built in the memory.
  • the memory registry is a configuration table for writing temporary configuration data into the memory according to a pre-designed data structure without writing to the disk.
  • the specific data structure of the memory registry can be referred to FIG. 3 and FIG. 4.
  • S102 Collect node data from a registry editor or a user process.
  • the registry operation unit 20 may pass the node data to the interface by calling the RegAPI read/write data interface, after which the registry operation unit 20 encapsulates the node data into a suitable transmission.
  • the data stream format (e.g., binary data stream) is sent to the registry service unit 30 via the TCP/IP protocol.
  • the operations on the memory registry mainly include reading, writing (including modification and addition), and deleting. The following will be explained one by one.
  • the operation mode is reading
  • Step S103 specifically includes:
  • S1031 Acquire the primary node id and the child node id from the node data.
  • the master node id and the child node id are sent to the read interface of the memory registry, and query whether the memory registry has the same master node id and child node id as the node data. a node; if so, reading the node data value in the node data and generating a confirmation character; if not, generating a negative response character.
  • the registry operation unit 20 after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the read operation is successful, and after parsing the node data, transfers the node data. Up to the registry editor or the user process; after receiving the negative response character, confirming that the read operation failed, and feeding back the read failure information to the registry editor or the user process.
  • step S103 specifically includes:
  • the master node id and the child node id are sent into the read interface of the memory registry, and query whether the memory registry has the same master node id and child node as the node data. a node of id; if so, modifying the node data value of the queried node to a node data value of the node data; if not, adding the node data to the memory registry.
  • the node data is temporary data, and only needs to be written on the memory registry, that is, storage to disk is not required. on. If it is not 0, it indicates that the node data is non-temporary data, in addition to writing in the memory registry, it needs to be written into the registry data file under the operating system (that is, written to /etc/ In reg.dat).
  • the registry operation unit 20 after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the write operation is successful; after receiving the negative response character, confirms that the write operation fails. And feeding back the failure information to the registry editor or the user process.
  • step S103 specifically includes:
  • the master node id and the child node id are sent to the read data interface of the memory registry, and query whether the memory registry has the same master node id and child node id as the node data. Node; if so, delete the node and determine whether the temporary data tag of the node data is 0, and if so, generate a confirmation character; if not Yes, a confirmation character is generated after the node interface is called to delete the node data from the registry data file; if not, a negative response character is generated.
  • the registry operation unit 20 after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the deletion operation is successful; after receiving the negative response character, confirms that the deletion operation fails, and The registry editor or the user process feeds back the deletion failure information.
  • the registry operation unit 20 if the registry operation unit 20 does not receive the operation confirmation code returned by the registry service unit 30 within a predetermined time, the registry operation unit 20 reports a communication timeout. , notify the registry editor or user operation failed, and end this operation.
  • the Linux-based registry service method can provide all the software running by constructing a memory registry in the memory and performing node data operation on the memory registry in the memory.
  • a unified, efficient, and secure registry configuration data operation that satisfies the need for data sharing between processes.
  • it can also realize the file format compatible with the windows registry, and provide an efficient windows platform code porting interface, which can quickly transplant the windows code to the Linux kernel platform.
  • efficient storage can be provided, and the security of the registry read and write security and multi-concurrent access can be ensured.
  • FIG. 10 is a flowchart of execution of the registry operation unit.
  • 11 is a flow chart showing execution of the memory registry building unit and the registry service unit.
  • S14 The memory registry building unit loads the /etc/reg.dat file, reads the saved configuration table data through sqlite3, and builds the memory registry.
  • S2 The registry editor or user process builds the node data and passes in the node data.
  • S4 Encapsulate the node data into a binary data stream.
  • S5 Send the binary data stream to the registry service unit through the TCP/IP protocol.
  • the Registry Operations Service Unit will operate from S15.
  • S6 The registry operation unit waits for the registry service unit to return an operation confirmation code. If the Ack is returned, the jump executes S8; if Nak is returned, the jump executes S7; if no confirmation code is returned, the jump executes S11.
  • S9 It is judged whether it is a read operation, and if so, S10 is executed.
  • S15 The memory registry establishes a TCP/IP connection and waits to receive a binary data stream.
  • S17 Determine whether to end the service. End the service and jump to S19. Continue running to jump to S15.
  • S30 Send the Ack and node data and the registry operation unit through TCP/IP communication, and jump to S15.
  • TCP/IP sends Nak and registry operation unit, and jumps to S15.
  • S14 The memory registry building unit loads the /etc/reg.dat file, reads the saved configuration table data through sqlite3, and builds the memory registry.
  • S2 The registry editor or user process builds the node data and passes in the node data.
  • S4 Encapsulate the node data into a binary data stream.
  • S5 Send the binary data stream to the registry service unit through the TCP/IP protocol.
  • the registry service unit will work from S15.
  • S15 The memory registry establishes a TCP/IP connection and waits to receive a binary data stream.
  • S17 Determine whether to end the service. End the service and jump to S19. Continue running to jump to S15.
  • TCP/IP sends the Ack and the registry operation unit, confirms that the data is successfully written, and jumps to S15.
  • S14 The memory registry building unit loads the /etc/reg.dat file, reads the saved configuration table data through sqlite3, and builds the memory registry.
  • S2 The registry editor or user process builds the node data and passes in the node data.
  • S4 Encapsulate the node data into a binary data stream.
  • S5 Send the binary data stream to the registry service unit through the TCP/IP protocol. Registry service unit will be from S15 Start working.
  • S6 The registry operation unit waits for the registry service unit to return an operation confirmation code. If the Ack is returned, the jump executes S8; if Nak is returned, the jump executes S7; if no confirmation code is returned, the jump executes S11.
  • S15 The memory registry establishes a TCP/IP connection and waits to receive binary stream data.
  • S17 Determine whether to end the service. End the service and jump to S19. Continue running to jump to S15.
  • TCP/IP sends a Nak registry operation unit, notifying that the deletion fails, and jumping to S15.
  • S35 Read the tmp temporary data flag. If it is 0, it jumps to S36, otherwise it jumps to S37.
  • TCP/IP sends the Ack and the registry operation unit, confirms that the deletion of the data is successful, and jumps to S15.
  • the registry service method can provide a unified, efficient, and secure registration for all running software by constructing a memory registry and performing node data operations in the memory registry.
  • Table configuration data operations to meet the needs of data sharing between processes.
  • it can also realize the file format compatible with the windows registry, and provide an efficient windows platform code porting interface, which can quickly transplant the windows code to the Linux kernel platform.
  • due to the operation of the memory registry it can provide efficient storage and ensure the security of the registry read and write security and multiple concurrent access.
  • the invention also provides a financial self-service device, which can be a self-service teller machine ATM, a remote video cabinet A VTM, a sorter, etc., including the Linux-based registry service system 100 described above (or including program code corresponding to the registry service method).
  • the financial self-service device can realize the autonomous control of the system and improve the security of the device.
  • the storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).

Abstract

Disclosed is a Linux-based registry service system, comprising: a memory registry construction unit for loading a registry data file in an operating system, reading configuration table data already saved in the registry data file by means of a database interface, and constructing, in a memory, a memory registry; a registry operation unit for collecting node data from a registry editor or a user process, and transmitting the node data to a registry service unit; and the registry service unit for performing, according to an operation mode for the memory registry, a corresponding operation on a node corresponding to the node data in the memory registry. Also disclosed are a Linux-based registry service method and a financial self-service device. By performing, in a memory, an operation of node data in a memory registry of, a unified, efficient and secure registry configuration data operation can be provided for running all the software, and the requirement of data sharing between various processes is satisfied.

Description

一种基于Linux的注册表服务系统、方法及金融自助设备Linux-based registry service system, method and financial self-service device 技术领域Technical field
本发明涉及自助终端领域,尤其涉及一种基于Linux的注册表服务系统、方法及金融自助设备。The invention relates to the field of self-service terminals, in particular to a Linux-based registry service system, method and financial self-service device.
背景技术Background technique
注册表是windows操作系统中的一个核心数据库,其中存放着各种参数,直接控制着windows的启动、硬件驱动程序的装载以及一些windows应用程序的运行,从而在整个系统中起着核心作用。这些作用包括了软、硬件的相关配置和状态信息,比如注册表中保存有应用程序和资源管理器外壳(shell)的初始条件、首选项和卸载数据等,联网计算机的整个系统的设置和各种许可,文件扩展名与应用程序的关联,硬件部件的描述、状态和属性,性能记录和其他底层的系统状态信息,以及其他数据等。The registry is a core database in the Windows operating system, which stores various parameters, directly controls the startup of windows, the loading of hardware drivers, and the operation of some windows applications, thus playing a central role in the entire system. These functions include software and hardware related configuration and status information, such as the initial conditions, preferences, and uninstallation data of the application and the resource manager shell stored in the registry, the settings of the entire system of the networked computer, and each Permissions, file extensions associated with applications, descriptions of hardware components, status and properties, performance logging and other underlying system state information, and other data.
在Linux系统下没有类似Windows系统下的注册表服务,Linux系统下没有临时配置数据的操作接口,也就是存放在内存的临时配置数据的操作接口。There is no registry service similar to Windows under Linux system. There is no operation interface for temporary configuration data under Linux system, which is the operation interface of temporary configuration data stored in memory.
然而出于安全性的考虑,在金融行业应用中,一般使用Linux系统。为了解决数据配置问题,现在的自主可控Linux系统中,可以通过内存配置表确保灾难情况下内存数据的有效备份和还原。但是程序对配置的读取与保存大多在直接在文件中进行,没有统一的接口操作,不方便各个系统间代码兼容移植,而且这种读取数据的速度较慢,无法保证注册表的修改安全和多并发访问的安全。However, for security reasons, Linux systems are generally used in financial industry applications. In order to solve the data configuration problem, in the now autonomous controllable Linux system, the memory configuration table can be used to ensure effective backup and restoration of memory data in the event of a disaster. However, the program reads and saves most of the configuration directly in the file. There is no unified interface operation, which is inconvenient for code compatibility between various systems. Moreover, the speed of reading data is slow, and the modification of the registry cannot be guaranteed. And the security of multiple concurrent access.
发明内容Summary of the invention
针对上述问题,本发明的目的在于提供一种基于Linux的注册表服务系统、方法及金融自助设备,可实现兼容性好,读写安全与多并发访问安全的注册表服务In view of the above problems, an object of the present invention is to provide a Linux-based registry service system, method, and financial self-service device, which can implement a registry service with good compatibility, read and write security, and multiple concurrent access security.
本发明提供了一种基于Linux的注册表服务系统,包括:The invention provides a Linux-based registry service system, comprising:
内存注册表构建单元,用于加载操作系统下的注册表数据文件,并通过数据库接口读取所述注册表数据文件中已保存的配置表数据,在内存中构建内存注册表;a memory registry building unit, configured to load a registry data file under the operating system, and read the saved configuration table data in the registry data file through a database interface, and construct a memory registry in the memory;
注册表操作单元,用于从注册表编辑器或者用户进程中收集节点数据,并将所述节点数 据传输给注册表服务单元;a registry operating unit for collecting node data from a registry editor or a user process and numbering the nodes According to transmission to the registry service unit;
所述注册表服务单元,用于根据针对所述内存注册表的操作方式,对所述内存注册表中与所述节点数据对应的节点进行相应的操作,并在操作完成后,根据操作结果向所述注册表操作单元返回操作确认符;其中,所述操作方式为读取、写入、删除中的一种。The registry service unit is configured to perform corresponding operations on the node corresponding to the node data in the memory registry according to an operation manner of the memory registry, and after the operation is completed, according to the operation result The registry operation unit returns an operation confirmer; wherein the operation mode is one of reading, writing, and deleting.
优选地,所述内存注册表为一种将临时配置数据根据预先设计好的数据结构写入内存中,而不写入磁盘的配置表,其中,所述内存注册表由至少一个节点构成,每个节点包括主节点及子节点,所述主节点包括主节点id,所述子节点包括子节点id及节点数据值。Preferably, the memory registry is a configuration table for writing temporary configuration data into the memory according to a pre-designed data structure without writing to the disk, wherein the memory registry is composed of at least one node, and each The nodes include a master node and a child node, and the master node includes a master node id, and the child node includes a child node id and a node data value.
优选地,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点及子节点,所述主节点包括主节点id,所述子节点包括子节点id及节点数据值;所述操作方式为读取;Preferably, the operation confirmation code is an acknowledgement character or a negative response character, the node data includes a primary node and a child node, the primary node includes a primary node id, and the child node includes a child node id and a node data value; The mode of operation is read;
则所述注册表服务单元具体包括:The registry service unit specifically includes:
第一id获取模块,用于从所述节点数据中获取所述主节点id及所述子节点id;a first id obtaining module, configured to acquire the primary node id and the child node id from the node data;
读取模块,用于将所述主节点id及子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则读取所述节点数据中的节点数据值,并向所述注册表操作单元返回所述节点数据及确认字符;若没有,则向所述注册表操作单元返回否定应答字符;a reading module, configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id as the node data and a node of the child node id; if so, reading the node data value in the node data, and returning the node data and the confirmation character to the registry operation unit; if not, to the registry operation unit Return a negative response character;
所述注册表操作单元,还用于在接收到所述确认字符和所述节点数据后,确认读取操作成功,并将所述节点数据传递至所述注册表编辑器或所述用户进程;在接收到所述否定应答字符后,确认读取操作失败,并向所述注册表编辑器或所述用户进程反馈读取失败信息。The registry operating unit is further configured to: after receiving the confirmation character and the node data, confirm that the reading operation is successful, and deliver the node data to the registry editor or the user process; After receiving the negative response character, it is confirmed that the read operation has failed, and the read failure information is fed back to the registry editor or the user process.
优选地,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子节点id、节点数据值及临时数据标记;所述操作方式为写入;Preferably, the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a primary node id, a child node id, a node data value, and a temporary data mark; the operation mode is writing;
则所述注册表服务单元具体包括:The registry service unit specifically includes:
第二id获取模块,用于从所述节点数据中获取所述主节点id及所述子节点id;a second id obtaining module, configured to acquire the primary node id and the child node id from the node data;
写入模块,用于将所述主节点id及所述子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则将查询到的所述节点的节点数据值修改为所述节点数据的节点数据值;若没有,则将所述节点数据添加到所述内存注册表中;a writing module, configured to send the primary node id and the child node id into a read interface of the memory registry, and query whether the memory registry has the same primary node as the node data a node of the id and the child node id; if yes, modifying the node data value of the node that is queried to the node data value of the node data; if not, adding the node data to the memory registry in;
第一临时数据判断模块,用于判断所述节点数据的临时数据标记是否为0,若是,则向所述注册表操作单元返回确认字符;若不是,则调用所述数据库接口将所述节点数据写入到所述注册表数据文件中,并向所述注册表操作单元返回确认字符。a first temporary data determining module, configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit; if not, call the database interface to call the node data Write to the registry data file and return a confirmation character to the registry operating unit.
优选地,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子 节点id、节点数据值及临时数据标记;所述操作方式为删除;Preferably, the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a master node id and a child. Node id, node data value, and temporary data tag; the operation mode is deletion;
则所述注册表服务单元具体包括:The registry service unit specifically includes:
第三id获取模块,用于从所述节点数据中获取所述主节点id及所述子节点id;a third id obtaining module, configured to acquire the primary node id and the child node id from the node data;
删除模块,用于将所述主节点id及子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则删除所述节点,并通知第二临时数据判断模块;若没有,则向所述注册表操作单元返回否定应答字符;a deleting module, configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id and the child data as the node data a node of the node id; if so, deleting the node and notifying the second temporary data determination module; if not, returning a negative response character to the registry operation unit;
所述第二临时数据判断模块,用于判断所述节点数据的临时数据标记是否为0,若是,则向所述注册表操作单元返回确认字符;若不是,则调用所述数据库接口将所述节点数据从所述注册表数据文件中删除,并向所述注册表操作单元返回确认字符。The second temporary data determining module is configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit; if not, calling the database interface to Node data is deleted from the registry data file and a confirmation character is returned to the registry operating unit.
本发明还提供一种基于Linux的注册表服务方法,包括:The invention also provides a Linux-based registry service method, comprising:
加载操作系统下的注册表数据文件,并通过数据库接口读取所述注册表数据文件中已保存的配置表数据,在内存中构建内存注册表;Loading a registry data file under the operating system, and reading the saved configuration table data in the registry data file through the database interface, and constructing a memory registry in the memory;
从注册表编辑器或者用户进程中收集节点数据;Collect node data from a registry editor or user process;
根据针对所述内存注册表的操作方式,对所述内存注册表中与所述节点数对应的节点进行相应的操作,并在操作完成后,根据操作结果生成操作确认符;其中,所述操作方式为读取、写入、删除中的一种。Performing, according to the operation mode of the memory registry, a node corresponding to the number of nodes in the memory registry, and after the operation is completed, generating an operation confirmer according to the operation result; wherein the operation The mode is one of reading, writing, and deleting.
优选地,所述内存注册表为一种将临时配置数据根据预先设计好的数据结构写入内存中,而不写入磁盘的配置表,其中,所述内存注册表由至少一个节点构成,每个节点至少包括主节点id、子节点id及节点数据值。Preferably, the memory registry is a configuration table for writing temporary configuration data into the memory according to a pre-designed data structure without writing to the disk, wherein the memory registry is composed of at least one node, and each The nodes include at least a primary node id, a child node id, and a node data value.
优选地,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子节点id及节点数据值;所述操作方式为读取;Preferably, the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a primary node id, a child node id, and a node data value; the operation mode is read;
则所述根据所述节点数据及针对所述内存注册表的操作方式,对所述内存注册表进行相应的操作,并在操作完成后,根据操作结果生成操作确认符,具体包括:Then, according to the node data and the operation mode of the memory registry, perform corresponding operations on the memory registry, and after the operation is completed, generate an operation confirmation identifier according to the operation result, which specifically includes:
从所述节点数据中获取所述主节点id及所述子节点id;Obtaining the primary node id and the child node id from the node data;
将所述主节点id及子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则读取所述节点数据中的节点数据值,并生成确认字符;若没有,则生成否定应答字符。Passing the master node id and the child node id into the read interface of the memory registry, and querying whether there is a node in the memory registry that has the same master node id and child node id as the node data; If so, the node data value in the node data is read and a confirmation character is generated; if not, a negative response character is generated.
优选地,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子节点id、节点数据值及临时数据标记;所述操作方式为写入;Preferably, the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a primary node id, a child node id, a node data value, and a temporary data mark; the operation mode is writing;
则所述根据所述节点数据及针对所述内存注册表的操作方式,对所述内存注册表进行相 应的操作,并在操作完成后,根据操作结果生成操作确认符,具体包括:Then, according to the node data and an operation manner for the memory registry, performing the phase on the memory registry The operation should be performed, and after the operation is completed, an operation confirmation will be generated according to the operation result, including:
从所述节点数据中获取所述主节点id及所述子节点id;Obtaining the primary node id and the child node id from the node data;
将所述主节点id及所述子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则将查询到的所述节点的节点数据值修改为所述节点数据的节点数据值;若没有,则将所述节点数据添加到所述内存注册表中;Passing the master node id and the child node id into the read interface of the memory registry, and querying whether the memory registry has the same master node id and child node id as the node data. a node; if yes, modifying the node data value of the queried node to a node data value of the node data; if not, adding the node data to the memory registry;
判断所述节点数据的临时数据标记是否为0,若是,则生成确认字符;若不是,则在调用数据库接口将所述节点数据写入到所述注册表数据文件中后,生成确认字符。Determining whether the temporary data flag of the node data is 0, and if so, generating a confirmation character; if not, generating a confirmation character after calling the database interface to write the node data into the registry data file.
优选地,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子节点id、节点数据值及临时数据标记;所述操作方式为删除;Preferably, the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a primary node id, a child node id, a node data value, and a temporary data identifier; the operation mode is deletion;
则所述根据所述节点数据及针对所述内存注册表的操作方式,对所述内存注册表进行相应的操作,并在操作完成后,根据操作结果生成操作确认符,具体包括:Then, according to the node data and the operation mode of the memory registry, perform corresponding operations on the memory registry, and after the operation is completed, generate an operation confirmation identifier according to the operation result, which specifically includes:
从所述节点数据中获取所述主节点id及所述子节点id;Obtaining the primary node id and the child node id from the node data;
将所述主节点id及子节点id传入所述内存注册表的读取数据接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则删除所述节点,并判断所述节点数据的临时数据标记是否为0,若是,则生成确认字符;若不是,则在调用数据库接口将所述节点数据从所述注册表数据文件中删除后,生成确认字符;若没有,则生成否定应答字符。Passing the primary node id and the child node id into the read data interface of the memory registry, and querying whether there is a node in the memory registry that has the same primary node id and child node id as the node data. And if so, deleting the node and determining whether the temporary data tag of the node data is 0, and if so, generating a confirmation character; if not, calling the database interface to retrieve the node data from the registry data After the file is deleted, a confirmation character is generated; if not, a negative response character is generated.
本发明还提供一种金融自助设备,包括上述的Linux的注册表服务系统。The invention also provides a financial self-service device, including the above-mentioned Linux registry service system.
本发明实施例提供的基于Linux的注册表服务系统及方法,通过在内存中构建内存注册表,并在内存中对内存注册表中进行节点数据的操作,可为运行的所有软件提供一种统一、高效、安全的注册表配置数据操作,满足各个进程间数据共享的需求。同时还可以实现与windows注册表兼容的文件格式,提供高效的windows平台代码移植接口,可使windows代码快速移植到Linux内核平台。此外,由于是在内存中进行操作的,还可提供高效的存储,并保证注册表读写安全与多并发访问的安全。The Linux-based registry service system and method provided by the embodiments of the present invention can provide a unified function for all running software by constructing a memory registry in the memory and performing node data operation in the memory registry in the memory. Efficient and secure registry configuration data operations to meet the needs of data sharing between processes. At the same time, it can also realize the file format compatible with the windows registry, and provide an efficient windows platform code porting interface, which can quickly transplant the windows code to the Linux kernel platform. In addition, because it operates in memory, it also provides efficient storage and secures registry read and write security and multiple concurrent access.
本发明所述基于Linux的注册表服务系统及方法应用于金融自助设备(如自助柜员机ATM、远程视频柜员机VTM、清分机等),可实现系统自主可控,提高设备的安全性。The Linux-based registry service system and method of the invention are applied to financial self-service devices (such as ATM ATM, remote video teller machine VTM, clearing machine, etc.), which can realize system autonomous control and improve equipment security.
附图说明DRAWINGS
为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术 人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions of the present invention, the drawings used in the embodiments will be briefly described below. It is obvious that the drawings in the following description are only some embodiments of the present invention, which are common in the art. Technology For the personnel, other drawings can be obtained based on these drawings without paying creative labor.
图1是本发明实施例提供的基于Linux的注册表服务系统的结构示意图。FIG. 1 is a schematic structural diagram of a Linux-based registry service system according to an embodiment of the present invention.
图2是本发明实施例提供的基于Linux的注册表服务系统的工作原理图。FIG. 2 is a schematic diagram of the working principle of a Linux-based registry service system according to an embodiment of the present invention.
图3是本发明实施例提供的内存注册表的数据结构图。FIG. 3 is a data structure diagram of a memory registry provided by an embodiment of the present invention.
图4是图3所示的内存注册表的节点的数据结构图。4 is a data structure diagram of a node of the memory registry shown in FIG.
图5是本发明实施例提供的注册表操作单元的工作原理图。FIG. 5 is a schematic diagram of the working principle of a registry operation unit according to an embodiment of the present invention.
图6是本发明实施例提供的注册表服务单元的一种结构示意图。FIG. 6 is a schematic structural diagram of a registry service unit according to an embodiment of the present invention.
图7是本发明实施例提供的注册表服务单元的一种结构示意图。FIG. 7 is a schematic structural diagram of a registry service unit according to an embodiment of the present invention.
图8是本发明实施例提供的注册表服务单元的一种结构示意图。FIG. 8 is a schematic structural diagram of a registry service unit according to an embodiment of the present invention.
图9是本发明实施例提供的基于Linux的注册表服务方法的流程示意图。FIG. 9 is a schematic flowchart of a Linux-based registry service method according to an embodiment of the present invention.
图10是本发明实施例提供的注册表操作单元的执行流程图。FIG. 10 is a flowchart of execution of a registry operation unit according to an embodiment of the present invention.
图11为本发明实施例提供的内存注册表构建单元与注册表服务单元的执行流程图。FIG. 11 is a flowchart of execution of a memory registry building unit and a registry service unit according to an embodiment of the present invention.
具体实施方式detailed description
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, but not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
请参阅图1及图2,本发明提供一种基于Linux的注册表服务系统(以下称为注册表服务系统)100,所述注册表服务系统100包括内存注册表构建单元10、注册表操作单元20及注册表服务单元30,其中:Referring to FIG. 1 and FIG. 2, the present invention provides a Linux-based registry service system (hereinafter referred to as a registry service system) 100. The registry service system 100 includes a memory registry building unit 10 and a registry operating unit. 20 and registry service unit 30, wherein:
所述内存注册表构建单元10,用于加载操作系统下的注册表数据文件,并通过数据库接口读取所述注册表数据文件中已保存的配置表数据,在内存中构建内存注册表。The memory registry building unit 10 is configured to load a registry data file under an operating system, and read the saved configuration table data in the registry data file through a database interface, and construct a memory registry in the memory.
在本发明实施例中,所述注册表服务系统100启动后,所述内存注册表构建单元10可加载操作系统下的注册表数据文件(对于Linux系统,可加载/etc/reg.dat),并通过数据库接口(如sqlite3接口)读取所述注册表数据文件中已保存的配置表数据,在内存中构建内存注册表。In the embodiment of the present invention, after the registry service system 100 is started, the memory registry building unit 10 can load a registry data file under the operating system (for a Linux system, /etc/reg.dat can be loaded). And through the database interface (such as sqlite3 interface) read the saved configuration table data in the registry data file, build a memory registry in memory.
在本发明实施例中,所述内存注册表为一种将临时配置数据根据预先设计好的数据结构写入内存中,而不写入磁盘的配置表,且所述内存注册表会在系统重启后进行重置,即在系统重启后,所述内存注册表就会被删除。In the embodiment of the present invention, the memory registry is a configuration table that writes temporary configuration data into the memory according to a pre-designed data structure without writing to the disk, and the memory registry is restarted in the system. After resetting, the memory registry will be deleted after the system is restarted.
请一并参阅图3,所述内存注册表由若干个节点构成,其中,每个节点包括至少一个主 节点(tabRegNode)和一个子节点(tabRegItem),所述主节点与所述子节点的数据结构如图4所示,其中,FK为数据库外键,PK为数据库主键。Referring to FIG. 3 together, the memory registry is composed of a plurality of nodes, wherein each node includes at least one master. A node (tabRegNode) and a child node (tabRegItem), the data structure of the master node and the child node is as shown in FIG. 4, wherein FK is a database foreign key, and PK is a database primary key.
所述注册表操作单元20,用于从注册表编辑器或者用户进程中收集节点数据,并将所述节点数据传输给注册表服务单元30。The registry operating unit 20 is configured to collect node data from a registry editor or a user process, and transmit the node data to the registry service unit 30.
在本发明实施例中,所述节点数据也具有如图4所示的数据结构。In the embodiment of the present invention, the node data also has a data structure as shown in FIG. 4.
请一并参阅图5,在本发明实施例中,所述注册表操作单元20可通过调用RegAPI读/写数据接口,将所述节点数据传入接口,此后,所述注册表操作单元20将所述节点数据封装成适于传输的数据流格式(如二进制数据流)后,通过TCP/IP协议发送到所述注册表服务单元30。Referring to FIG. 5 together, in the embodiment of the present invention, the registry operation unit 20 can input the node data to the interface by calling the RegAPI read/write data interface, and thereafter, the registry operation unit 20 The node data is encapsulated into a data stream format suitable for transmission (such as a binary data stream) and sent to the registry service unit 30 via the TCP/IP protocol.
在本发明实施例中,在将所述封装过的节点数据发送给所述注册表服务单元30后,所述注册表操作单元20等待所述注册表服务单元30返回的操作确认码。其中,所述操作确认码可包括返回确认字符(Ack)及否定应答字符(Nak)。In the embodiment of the present invention, after the encapsulated node data is sent to the registry service unit 30, the registry operation unit 20 waits for an operation confirmation code returned by the registry service unit 30. The operation confirmation code may include a return confirmation character (Ack) and a negative response character (Nak).
所述注册表服务单元30,用于针对所述内存注册表的操作方式,对所述内存注册表中与所述节点数据对应的节点进行相应的操作,并在操作完成后,根据操作结果向所述注册表操作单元20返回操作确认符;其中,所述操作方式为读取、写入、删除中的一种。The registry service unit 30 is configured to perform corresponding operations on the node corresponding to the node data in the memory registry for the operation mode of the memory registry, and after the operation is completed, according to the operation result The registry operation unit 20 returns an operation confirmer; wherein the operation mode is one of reading, writing, and deleting.
在本发明实施例中,对所述对内存注册表的操作方式主要有读取、写入(包括修改和添加)、删除。下面将逐一进行说明。In the embodiment of the present invention, the operations on the memory registry mainly include reading, writing (including modification and addition), and deleting. The following will be explained one by one.
请一并参阅图6,当所述操作方式为读取时:Please refer to FIG. 6 together, when the operation mode is read:
则所述注册表服务单元30具体包括:The registry service unit 30 specifically includes:
第一id获取模块31,用于从所述节点数据中获取所述主节点id及所述子节点id。The first id obtaining module 31 is configured to obtain the primary node id and the child node id from the node data.
在本发明实施例中,所述注册表服务单元30在接收到所述节点数据后,解析所述节点数据后,从所述节点数据中获取主节点id和子节点id。In the embodiment of the present invention, after receiving the node data, the registry service unit 30 obtains the master node id and the child node id from the node data after parsing the node data.
读取模块32,用于将所述主节点id及子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则读取所述节点数据中的节点数据值,并通过tcp/ip协议向所述注册表操作单元20返回确认字符(Ack)及封装过的节点数据;若没有,则通过tcp/ip协议向所述注册表操作单元20返回否定应答字符(Nak)。The reading module 32 is configured to pass the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id as the node data. And a node of the child node id; if yes, reading the node data value in the node data, and returning the confirmation character (Ack) and the encapsulated node data to the registry operation unit 20 through the tcp/ip protocol; If not, a negative response character (Nak) is returned to the registry operating unit 20 via the tcp/ip protocol.
在本发明实施例中,所述注册表操作单元20在接收到所述确认字符和所述节点数据后,确认读取操作成功,并对所述节点数据进行解析后,将所述节点数据传递至所述注册表编辑器或所述用户进程;在接收到所述否定应答字符后,确认读取操作失败,并向所述注册表编辑器或所述用户进程反馈读取失败信息。 In the embodiment of the present invention, after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the read operation is successful, and after parsing the node data, transfers the node data. Up to the registry editor or the user process; after receiving the negative response character, confirming that the read operation failed, and feeding back the read failure information to the registry editor or the user process.
请参阅图7,当所述操作方式为写入(包括修改及添加):Please refer to Figure 7, when the operation mode is write (including modification and addition):
则所述注册表服务单元30具体包括:The registry service unit 30 specifically includes:
第二id获取模块33,用于从所述节点数据中获取所述主节点id及所述子节点id。The second id obtaining module 33 is configured to obtain the primary node id and the child node id from the node data.
写入模块34,用于将所述主节点id及所述子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则将查询到的所述节点的节点数据值修改为所述节点数据的节点数据值;若没有,则将所述节点数据添加到所述内存注册表中。The writing module 34 is configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same master as the node data. a node id and a node of the child id; if yes, modifying the node data value of the queried node to a node data value of the node data; if not, adding the node data to the memory registration In the table.
第一临时数据判断模块35,用于判断所述节点数据的临时数据标记是否为0,若是,则向所述注册表操作单元20返回确认字符;若不是,则调用所述数据库接口将所述节点数据写入到所述注册表数据文件中,并向所述注册表操作单元20返回确认字符。The first temporary data determining module 35 is configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit 20; if not, calling the database interface to The node data is written into the registry data file and a confirmation character is returned to the registry operation unit 20.
在本发明实施例中,若所述临时数据标记(tmp)为0,则说明所述节点数据为临时数据,只需在所述内存注册表上进行写入即可,即不需要存储到磁盘上。若不为0,则说明所述节点数据为非临时数据,则除了在所述内存注册表上写入,还需要写入到操作系统下的注册表数据文件中(即写入到/etc/reg.dat中)。In the embodiment of the present invention, if the temporary data flag (tmp) is 0, the node data is temporary data, and only needs to be written on the memory registry, that is, storage to disk is not required. on. If it is not 0, it indicates that the node data is non-temporary data, in addition to writing in the memory registry, it needs to be written into the registry data file under the operating system (that is, written to /etc/ In reg.dat).
在本发明实施例中,所述注册表操作单元20在接收到所述确认字符和所述节点数据后,确认写入操作成功;在接收到所述否定应答字符后,确认写入操作失败,并向所述注册表编辑器或所述用户进程反馈写入失败信息。In the embodiment of the present invention, after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the write operation is successful; after receiving the negative response character, confirms that the write operation fails. And feeding back the failure information to the registry editor or the user process.
请参阅图8,当所述操作方式为删除时:Please refer to FIG. 8 when the operation mode is deleted:
则所述注册表服务单元30具体包括:The registry service unit 30 specifically includes:
第三id获取模块36,用于从所述节点数据中获取所述主节点id及所述子节点id。The third id obtaining module 36 is configured to obtain the primary node id and the child node id from the node data.
删除模块37,用于将所述主节点id及子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则删除所述节点,并通知第二临时数据判断模块38;若没有,则向所述注册表操作单元20返回否定应答字符;The deleting module 37 is configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id as the node data and a node of the child node id; if so, deleting the node and notifying the second temporary data determining module 38; if not, returning a negative response character to the registry operating unit 20;
所述第二临时数据判断模块38,用于判断所述节点数据的临时数据标记是否为0,若是,则向所述注册表操作单元返回确认字符;若不是,则调用所述数据库接口将所述节点数据从所述注册表数据文件中删除,并向所述注册表操作单元返回确认字符。The second temporary data determining module 38 is configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit; if not, invoke the database interface The node data is deleted from the registry data file and a confirmation character is returned to the registry operating unit.
在本发明实施例中,所述注册表操作单元20在接收到所述确认字符和所述节点数据后,确认删除操作成功;在接收到所述否定应答字符后,确认删除操作失败,并向所述注册表编 辑器或所述用户进程反馈删除失败信息。In the embodiment of the present invention, after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the deletion operation is successful; after receiving the negative response character, confirms that the deletion operation fails, and The registry The editor or the user process feedback deletes the failure information.
需要说明的是,上述实施例中,若所述注册表操作单元20在预定时间内未接收到所述注册表服务单元30返回的操作确认码时,则所述注册表操作单元20报告通信超时,通知所述注册表编辑器或者用户操作失败,并结束本次操作。It should be noted that, in the foregoing embodiment, if the registry operation unit 20 does not receive the operation confirmation code returned by the registry service unit 30 within a predetermined time, the registry operation unit 20 reports a communication timeout. , notify the registry editor or user operation failed, and end this operation.
综上所述,本发明实施例提供的注册表服务系统100,通过所述内存注册表构建单元10在内存中构建内存注册表,所述注册表服务单元30在内存注册表中进行数据的操作,可为运行的所有软件提供一种统一、高效、安全的注册表配置数据的操作,满足各个进程间数据共享的需求。同时还可以实现与windows注册表兼容的文件格式,提供高效的windows平台代码移植接口,可使windows代码快速移植到Linux内核平台。此外,由于内存注册表的操作是在内存中进行地,可提供高效的存储,并保证注册表读写安全与多并发访问的安全。In summary, the registry service system 100 provided by the embodiment of the present invention constructs a memory registry in the memory through the memory registry building unit 10, and the registry service unit 30 performs data operations in the memory registry. It provides a unified, efficient, and secure registry configuration data operation for all running software to meet the data sharing needs of each process. At the same time, it can also realize the file format compatible with the windows registry, and provide an efficient windows platform code porting interface, which can quickly transplant the windows code to the Linux kernel platform. In addition, because the operation of the memory registry is performed in memory, it can provide efficient storage and ensure the security of the registry read and write security and multiple concurrent access.
请一并参阅图9,本发明还提供一种基于Linux的注册表服务方法,所述注册表服务方法可由上述的注册表服务系统100来执行,并包括如下步骤:Referring to FIG. 9 together, the present invention further provides a Linux-based registry service method, which can be executed by the foregoing registry service system 100, and includes the following steps:
S101,加载操作系统下的注册表数据文件,并通过数据库接口读取所述注册表数据文件中已保存的配置表数据,在内存中构建内存注册表。S101: Load a registry data file under an operating system, and read the saved configuration table data in the registry data file through a database interface, and construct a memory registry in the memory.
在本发明实施例中,所述注册表服务系统启动后,可加载操作系统下的注册表数据文件(对于Linux系统,可加载/etc/reg.dat),并通过数据库接口(如sqlite3接口)读取所述注册表数据文件中已保存的配置表数据,在内存中构建内存注册表。In the embodiment of the present invention, after the registry service system is started, the registry data file under the operating system can be loaded (for Linux system, /etc/reg.dat can be loaded), and the database interface (such as sqlite3 interface) is used. The saved configuration table data is read in the registry data file, and the memory registry is built in the memory.
其中,所述内存注册表为一种将临时配置数据根据预先设计好的数据结构写入内存中,而不写入磁盘的配置表。所述内存注册表的具体数据结构可参考图3及图4.The memory registry is a configuration table for writing temporary configuration data into the memory according to a pre-designed data structure without writing to the disk. The specific data structure of the memory registry can be referred to FIG. 3 and FIG. 4.
S102,从注册表编辑器或者用户进程中收集节点数据。S102. Collect node data from a registry editor or a user process.
在本发明实施例中,注册表操作单元20可通过调用RegAPI读/写数据接口,将所述节点数据传入接口,此后,所述注册表操作单元20将所述节点数据封装成适于传输的数据流格式(如二进制数据流)后,通过TCP/IP协议发送到所述注册表服务单元30。In the embodiment of the present invention, the registry operation unit 20 may pass the node data to the interface by calling the RegAPI read/write data interface, after which the registry operation unit 20 encapsulates the node data into a suitable transmission. The data stream format (e.g., binary data stream) is sent to the registry service unit 30 via the TCP/IP protocol.
S103,根据针对所述内存注册表的操作方式,对所述内存注册表中与所述节点数据对应的节点进行相应的操作,并在操作完成后,根据操作结果生成操作确认符;其中,所述操作方式为读取、写入、删除中的一种。S103. Perform a corresponding operation on a node corresponding to the node data in the memory registry according to an operation manner of the memory registry, and generate an operation confirmation identifier according to the operation result after the operation is completed; The operation mode is one of reading, writing, and deleting.
在本发明实施例中,对所述对内存注册表的操作方式主要有读取、写入(包括修改和添加)、删除。下面将逐一进行说明。In the embodiment of the present invention, the operations on the memory registry mainly include reading, writing (including modification and addition), and deleting. The following will be explained one by one.
所述操作方式为读取; The operation mode is reading;
则步骤S103具体包括:Step S103 specifically includes:
S1031,从所述节点数据中获取所述主节点id及所述子节点id。S1031: Acquire the primary node id and the child node id from the node data.
S1032,将所述主节点id及子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则读取所述节点数据中的节点数据值,并生成确认字符;若没有,则生成否定应答字符。S1032, the master node id and the child node id are sent to the read interface of the memory registry, and query whether the memory registry has the same master node id and child node id as the node data. a node; if so, reading the node data value in the node data and generating a confirmation character; if not, generating a negative response character.
在本发明实施例中,所述注册表操作单元20在接收到所述确认字符和所述节点数据后,确认读取操作成功,并对所述节点数据进行解析后,将所述节点数据传递至所述注册表编辑器或所述用户进程;在接收到所述否定应答字符后,确认读取操作失败,并向所述注册表编辑器或所述用户进程反馈读取失败信息。In the embodiment of the present invention, after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the read operation is successful, and after parsing the node data, transfers the node data. Up to the registry editor or the user process; after receiving the negative response character, confirming that the read operation failed, and feeding back the read failure information to the registry editor or the user process.
当所述操作方式为写入,则步骤S103具体包括:When the operation mode is write, step S103 specifically includes:
S1033,从所述节点数据中获取所述主节点id及所述子节点id。S1033. Acquire the primary node id and the child node id from the node data.
S1034,将所述主节点id及所述子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则将查询到的所述节点的节点数据值修改为所述节点数据的节点数据值;若没有,则将所述节点数据添加到所述内存注册表中。S1034, the master node id and the child node id are sent into the read interface of the memory registry, and query whether the memory registry has the same master node id and child node as the node data. a node of id; if so, modifying the node data value of the queried node to a node data value of the node data; if not, adding the node data to the memory registry.
S1035,判断所述节点数据的临时数据标记是否为0,若是,则生成确认字符;若不是,则在调用数据库接口将所述节点数据写入到所述注册表数据文件中后,生成确认字符。S1035, determining whether the temporary data flag of the node data is 0, and if so, generating a confirmation character; if not, generating a confirmation character after calling the database interface to write the node data into the registry data file .
在本发明实施例中,若所述临时数据标记(tmp)为0,则说明所述节点数据为临时数据,只需在所述内存注册表上进行写入即可,即不需要存储到磁盘上。若不为0,则说明所述节点数据为非临时数据,则除了在所述内存注册表上写入,还需要写入到操作系统下的注册表数据文件中(即写入到/etc/reg.dat中)。In the embodiment of the present invention, if the temporary data flag (tmp) is 0, the node data is temporary data, and only needs to be written on the memory registry, that is, storage to disk is not required. on. If it is not 0, it indicates that the node data is non-temporary data, in addition to writing in the memory registry, it needs to be written into the registry data file under the operating system (that is, written to /etc/ In reg.dat).
在本发明实施例中,所述注册表操作单元20在接收到所述确认字符和所述节点数据后,确认写入操作成功;在接收到所述否定应答字符后,确认写入操作失败,并向所述注册表编辑器或所述用户进程反馈写入失败信息。In the embodiment of the present invention, after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the write operation is successful; after receiving the negative response character, confirms that the write operation fails. And feeding back the failure information to the registry editor or the user process.
当所述操作方式为删除,则步骤S103具体包括:When the operation mode is deletion, step S103 specifically includes:
S1036,从所述节点数据中获取所述主节点id及所述子节点id。S1036. Acquire the primary node id and the child node id from the node data.
S1037,将所述主节点id及子节点id传入所述内存注册表的读取数据接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则删除所述节点,并判断所述节点数据的临时数据标记是否为0,若是,则生成确认字符;若不 是,则在调用数据库接口将所述节点数据从所述注册表数据文件中删除后,生成确认字符;若没有,则生成否定应答字符。S1037. The master node id and the child node id are sent to the read data interface of the memory registry, and query whether the memory registry has the same master node id and child node id as the node data. Node; if so, delete the node and determine whether the temporary data tag of the node data is 0, and if so, generate a confirmation character; if not Yes, a confirmation character is generated after the node interface is called to delete the node data from the registry data file; if not, a negative response character is generated.
在本发明实施例中,所述注册表操作单元20在接收到所述确认字符和所述节点数据后,确认删除操作成功;在接收到所述否定应答字符后,确认删除操作失败,并向所述注册表编辑器或所述用户进程反馈删除失败信息。In the embodiment of the present invention, after receiving the confirmation character and the node data, the registry operation unit 20 confirms that the deletion operation is successful; after receiving the negative response character, confirms that the deletion operation fails, and The registry editor or the user process feeds back the deletion failure information.
需要说明的是,上述实施例中,若所述注册表操作单元20在预定时间内未接收到所述注册表服务单元30返回的操作确认码时,则所述注册表操作单元20报告通信超时,通知所述注册表编辑器或者用户操作失败,并结束本次操作。It should be noted that, in the foregoing embodiment, if the registry operation unit 20 does not receive the operation confirmation code returned by the registry service unit 30 within a predetermined time, the registry operation unit 20 reports a communication timeout. , notify the registry editor or user operation failed, and end this operation.
综上所述,本发明实施例提供的基于Linux的注册表服务方法,通过在内存中构建内存注册表,并在内存中对内存注册表中进行节点数据的操作,可为运行的所有软件提供一种统一、高效、安全的注册表配置数据操作,满足各个进程间数据共享的需求。同时还可以实现与windows注册表兼容的文件格式,提供高效的windows平台代码移植接口,可使windows代码快速移植到Linux内核平台。此外,此外,由于对所述内存注册表的操作是在内存中进行地,可提供高效的存储,并保证注册表读写安全与多并发访问的安全。In summary, the Linux-based registry service method provided by the embodiment of the present invention can provide all the software running by constructing a memory registry in the memory and performing node data operation on the memory registry in the memory. A unified, efficient, and secure registry configuration data operation that satisfies the need for data sharing between processes. At the same time, it can also realize the file format compatible with the windows registry, and provide an efficient windows platform code porting interface, which can quickly transplant the windows code to the Linux kernel platform. In addition, in addition, since the operation of the memory registry is performed in the memory, efficient storage can be provided, and the security of the registry read and write security and multi-concurrent access can be ensured.
请一并参阅图10和图11,图10为所述注册表操作单元的执行流程图。图11为所述内存注册表构建单元与所述注册表服务单元的执行流程图。Please refer to FIG. 10 and FIG. 11 together. FIG. 10 is a flowchart of execution of the registry operation unit. 11 is a flow chart showing execution of the memory registry building unit and the registry service unit.
(一)读取数据:(1) Reading data:
S13:注册表系统服务开始运行。S13: The registry system service starts running.
S14:内存注册表构建单元加载/etc/reg.dat文件,通过sqlite3读取已保存配置表数据,构建内存注册表。S14: The memory registry building unit loads the /etc/reg.dat file, reads the saved configuration table data through sqlite3, and builds the memory registry.
S1:注册表操作单元开始被调用。S1: The registry operating unit begins to be called.
S2:注册表编辑器或者用户进程构建出节点数据,并传入节点数据。S2: The registry editor or user process builds the node data and passes in the node data.
S3:调用Reg API读数据接口,将节点数据传入接口。S3: Call the Reg API to read the data interface and pass the node data to the interface.
S4:将节点数据封装成二进制数据流。S4: Encapsulate the node data into a binary data stream.
S5:将二进制数据流通过TCP/IP协议发送到注册表服务单元。注册表操作服务单元将从S15开始运作。S5: Send the binary data stream to the registry service unit through the TCP/IP protocol. The Registry Operations Service Unit will operate from S15.
S6:注册表操作单元等待注册表服务单元返回操作确认码,如果返回Ack,跳转执行S8;如果返回Nak,跳转执行S7;如果未有确认码返回,跳转执行S11。S6: The registry operation unit waits for the registry service unit to return an operation confirmation code. If the Ack is returned, the jump executes S8; if Nak is returned, the jump executes S7; if no confirmation code is returned, the jump executes S11.
S8:接收Ack数据,确认操作成功。S8: Receive Ack data and confirm that the operation is successful.
S9:判断是否为读取操作,若是,则执行S10。 S9: It is judged whether it is a read operation, and if so, S10 is executed.
S10:获取到反馈的二进制数据流,还原为节点数据,传送给注册表编辑器或者用户进程。跳转到S12。S10: Acquire the feedback binary data stream, restore to node data, and send it to the registry editor or user process. Jump to S12.
S7:接收到Nak数据,读取操作失败,通知注册表编辑器或者用户进程获取失败。跳转到S12。S7: The Nak data is received, the read operation fails, and the registry editor or the user process fails to be notified. Jump to S12.
S11:未有数据返回,报告通信超时,通知注册表编辑器或者用户进程读取失败。跳转到S12。S11: No data is returned, report communication timeout, notify the registry editor or the user process fails to read. Jump to S12.
S12:读取过程结束。S12: The reading process ends.
S15:内存注册表建立TCP/IP连接,等待接收二进制数据流。S15: The memory registry establishes a TCP/IP connection and waits to receive a binary data stream.
S16:判断是否接收到数据,收到数据跳转S18,未收到数据跳转S17。S16: It is judged whether data is received, the data jump S18 is received, and the data jump S17 is not received.
S17:判断是否结束服务。结束服务跳转到S19,继续运行跳转到S15。S17: Determine whether to end the service. End the service and jump to S19. Continue running to jump to S15.
S19:退出注册表服务单元。S19: Exit the registry service unit.
S18:解析二进制流数据,构建节点数据。S18: Parse the binary stream data and construct the node data.
S20:从节点数据中获取tabRegNode id(主节点id)与tabRegItem id(子节点id)。S20: Obtain a tabRegNode id (primary node id) and a tabRegItem id (child node id) from the node data.
S21:判断该数据操作方式,本过程为读取数据,直接跳转S27。S21: judging the data operation mode, the process is to read the data and directly jump to S27.
S27:将节点数据传入读取数据接口。S27: The node data is transmitted to the read data interface.
S28:判断内存注册表内是否存在与传入节点相同tabRegNode id与tabRegItem id的节点。存在跳转S29,不存在跳转S31。S28: Determine whether there is a node in the memory registry that has the same tabRegNode id and tabRegItem id as the incoming node. There is a jump S29, and there is no jump S31.
S29:读取节点数据的节点数据值。S29: Read the node data value of the node data.
S30:通过TCP/IP通信发送Ack和节点数据与注册表操作单元,跳转到S15。S30: Send the Ack and node data and the registry operation unit through TCP/IP communication, and jump to S15.
S31:TCP/IP发送Nak与注册表操作单元,跳转到S15。S31: TCP/IP sends Nak and registry operation unit, and jumps to S15.
(二)写入(添加/修改)数据:(2) Write (add/modify) data:
S13:注册表服务系统开始运行。S13: The registry service system starts running.
S14:内存注册表构建单元加载/etc/reg.dat文件,通过sqlite3读取已保存配置表数据,构建内存注册表。S14: The memory registry building unit loads the /etc/reg.dat file, reads the saved configuration table data through sqlite3, and builds the memory registry.
S1:注册表操作单元开始被调用。S1: The registry operating unit begins to be called.
S2:注册表编辑器或者用户进程构建出节点数据,并传入节点数据。S2: The registry editor or user process builds the node data and passes in the node data.
S3:调用Reg API读数据接口,将节点数据传入接口。S3: Call the Reg API to read the data interface and pass the node data to the interface.
S4:将节点数据封装成二进制数据流。S4: Encapsulate the node data into a binary data stream.
S5:将二进制数据流通过TCP/IP协议发送到注册表服务单元。注册表服务单元将从S15开始运作。S5: Send the binary data stream to the registry service unit through the TCP/IP protocol. The registry service unit will work from S15.
S6:注册表操作单元等待注册表服务单元返回操作确认码,如果返回Ack,跳转执行S8; 如果返回Nak,跳转执行S7;如果未有确认码返回,跳转执行S11。S6: the registry operation unit waits for the registry service unit to return an operation confirmation code, and if the Ack is returned, the jump executes S8; If Nak is returned, the jump proceeds to S7; if no confirmation code is returned, the jump proceeds to S11.
S8:接收Ack数据,确认操作成功。S8: Receive Ack data and confirm that the operation is successful.
S9:判断是否为读取操作,该应该过程不是读取操作,跳转到S12S9: determining whether it is a read operation, the response process is not a read operation, and jumping to S12
S7:接收到Nak数据,添加/修改数据操作失败,通知注册表编辑器或者用户进程操作失败。跳转到S12。S7: Receiving Nak data, adding/modifying data operation fails, notifying the registry editor or user process operation failure. Jump to S12.
S11:未有数据返回,报告通信超时,通知注册表编辑器或者用户进程执行失败。跳转到S12。S11: No data is returned, the communication is reported to be timed out, and the registry editor or the user process is notified to fail. Jump to S12.
S12:读取过程结束。S12: The reading process ends.
S15:内存注册表建立TCP/IP连接,等待接收二进制数据流。S15: The memory registry establishes a TCP/IP connection and waits to receive a binary data stream.
S16:判断是否接收到数据,收到数据跳转S18,未收到数据跳转到S17。S16: It is judged whether data is received, the data jump S18 is received, and the data is not received and jumps to S17.
S17:判断是否结束服务。结束服务跳转到S19,继续运行跳转到S15。S17: Determine whether to end the service. End the service and jump to S19. Continue running to jump to S15.
S19:退出注册表服务单元。S19: Exit the registry service unit.
S18:解析二进制数据流,构建节点数据。S18: Parse the binary data stream and construct the node data.
S20:从节点数据中获取tabRegNode id与tabRegItem id值。S20: Obtain the tabRegNode id and the tabRegItem id value from the node data.
S21:判断该数据操作方式,本过程为添加/修改数据操作,直接跳转S22。S21: judging the data operation mode, the process is to add/modify the data operation, and directly jump to S22.
S22:判断内存注册表内是否存在与传入节点数据相同tabRegNode id与tabRegItem id值的节点。存在跳转S23,不存在跳转S38。S22: Determine whether there is a node in the memory registry that has the same tabRegNode id and tabRegItem id value as the incoming node data. There is a jump S23, and there is no jump S38.
S23:直接修改与tabRegNode id与tabRegItem id值相同的节点数据值。跳转到S24。S23: directly modify the node data value with the same tabRegNode id and tabRegItem id value. Jump to S24.
S38:将节点数据添加入内存注册表中。跳转到S24。S38: Add node data to the memory registry. Jump to S24.
S24:读取临时数据标记tmp,如果为0,跳转S26,否则跳转S25。S24: Read the temporary data mark tmp, if it is 0, jump to S26, otherwise jump to S25.
S25:调用Sqlite3接口将节点数据写入/etc/reg.dat文件中。跳转S26。S25: Call the Sqlite3 interface to write the node data to the /etc/reg.dat file. Jump to S26.
S26:TCP/IP发送Ack与注册表操作单元,确认写入数据成功,跳转到S15。S26: TCP/IP sends the Ack and the registry operation unit, confirms that the data is successfully written, and jumps to S15.
(三)删除数据:(3) Delete data:
S13:注册表服务系统开始运行。S13: The registry service system starts running.
S14:内存注册表构建单元加载/etc/reg.dat文件,通过sqlite3读取已保存配置表数据,构建内存注册表。S14: The memory registry building unit loads the /etc/reg.dat file, reads the saved configuration table data through sqlite3, and builds the memory registry.
S1:注册表操作单元开始被调用。S1: The registry operating unit begins to be called.
S2:注册表编辑器或者用户进程构建出节点数据,并传入节点数据。S2: The registry editor or user process builds the node data and passes in the node data.
S3:调用Reg API读数据接口,将节点数据传入接口。S3: Call the Reg API to read the data interface and pass the node data to the interface.
S4:将节点数据封装成二进制数据流。S4: Encapsulate the node data into a binary data stream.
S5:将二进制数据流通过TCP/IP协议发送到注册表服务单元。注册表服务单元将从S15 开始运作。S5: Send the binary data stream to the registry service unit through the TCP/IP protocol. Registry service unit will be from S15 Start working.
S6:注册表操作单元等待注册表服务单元返回操作确认码,如果返回Ack,跳转执行S8;如果返回Nak,跳转执行S7;如果未有确认码返回,跳转执行S11。S6: The registry operation unit waits for the registry service unit to return an operation confirmation code. If the Ack is returned, the jump executes S8; if Nak is returned, the jump executes S7; if no confirmation code is returned, the jump executes S11.
S8:接收Ack数据,确认操作成功。S8: Receive Ack data and confirm that the operation is successful.
S9:判断是否为读取操作,该应该过程不是读取操作,跳转到S12S9: determining whether it is a read operation, the response process is not a read operation, and jumping to S12
S7:接收到Nak数据,添加/修改数据操作失败,通知注册表编辑器或者用户进程操作失败。跳转到S12。S7: Receiving Nak data, adding/modifying data operation fails, notifying the registry editor or user process operation failure. Jump to S12.
S11:未有数据返回,报告通信超时,通知注册表编辑器或者用户进程执行失败。跳转到S12。S11: No data is returned, the communication is reported to be timed out, and the registry editor or the user process is notified to fail. Jump to S12.
S12:读取过程结束。S12: The reading process ends.
S15:内存注册表建立TCP/IP连接,等待接收二进制流数据。S15: The memory registry establishes a TCP/IP connection and waits to receive binary stream data.
S16:判断是否接收到数据,收到数据跳转S18,未收到数据跳转到S17。S16: It is judged whether data is received, the data jump S18 is received, and the data is not received and jumps to S17.
S17:判断是否结束服务。结束服务跳转到S19,继续运行跳转到S15。S17: Determine whether to end the service. End the service and jump to S19. Continue running to jump to S15.
S19:退出注册表操作服务单元。S19: Exit the registry operation service unit.
S18:解析二进制数据流,构建节点数据。S18: Parse the binary data stream and construct the node data.
S20:从节点数据中获取tabRegNode id与tabRegItem id。S20: Obtain a tabRegNode id and a tabRegItem id from the node data.
S21:判断该数据操作方式,本过程删除数据操作,直接跳转S32。S21: judging the data operation mode, the process deletes the data operation, and directly jumps to S32.
S32:判断内存注册表内是否存在与传入节点数据相同tabRegNode id与tabRegItem id值的节点。存在跳转S33,不存在跳转S34。S32: Determine whether there is a node in the memory registry that has the same tabRegNode id and tabRegItem id value as the incoming node data. There is a jump S33, there is no jump S34.
S33:删除所述内存注册表中与tabRegNode id与tabRegItemid相同的节点。跳转到S35。S33: Delete the node in the memory registry that is the same as the tabRegNode id and the tabRegItemid. Jump to S35.
S34:TCP/IP发送Nak注册表操作单元,通知删除失败,跳转到S15。S34: TCP/IP sends a Nak registry operation unit, notifying that the deletion fails, and jumping to S15.
S35:读取tmp临时数据标记,如果为0,跳转S36,否则跳转S37。S35: Read the tmp temporary data flag. If it is 0, it jumps to S36, otherwise it jumps to S37.
S37:调用Sqlite3接口将节点数据从/etc/reg.dat文件中删除。跳转S37。S37: Call the Sqlite3 interface to remove the node data from the /etc/reg.dat file. Jump to S37.
S37:TCP/IP发送Ack与注册表操作单元,确认删除数据成功,跳转到S15。S37: TCP/IP sends the Ack and the registry operation unit, confirms that the deletion of the data is successful, and jumps to S15.
综上所述,本发明实施例提供的注册表服务方法,通过构建内存注册表,并在内存注册表中进行节点数据的操作,可为运行的所有软件提供一种统一、高效、安全的注册表配置数据操作,满足各个进程间数据共享的需求。同时还可以实现与windows注册表兼容的文件格式,提供高效的windows平台代码移植接口,可使windows代码快速移植到Linux内核平台。此外,由于采用内存注册表的操作方式,可提供高效的存储,并保证注册表读写安全与多并发访问的安全。In summary, the registry service method provided by the embodiment of the present invention can provide a unified, efficient, and secure registration for all running software by constructing a memory registry and performing node data operations in the memory registry. Table configuration data operations to meet the needs of data sharing between processes. At the same time, it can also realize the file format compatible with the windows registry, and provide an efficient windows platform code porting interface, which can quickly transplant the windows code to the Linux kernel platform. In addition, due to the operation of the memory registry, it can provide efficient storage and ensure the security of the registry read and write security and multiple concurrent access.
本发明还提供一种金融自助设备,所述金融自助设备可为自助柜员机ATM、远程视频柜 员机VTM、清分机等,其包括上述的基于Linux的注册表服务系统100(或者包括与所述注册表服务方法对应的程序代码)。所述金融自助设备可实现系统自主可控,并提高了设备的安全性。The invention also provides a financial self-service device, which can be a self-service teller machine ATM, a remote video cabinet A VTM, a sorter, etc., including the Linux-based registry service system 100 described above (or including program code corresponding to the registry service method). The financial self-service device can realize the autonomous control of the system and improve the security of the device.
以上所揭露的仅为本发明一种较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。The above disclosure is only a preferred embodiment of the present invention, and of course, the scope of the present invention is not limited thereto, and those skilled in the art can understand all or part of the process of implementing the above embodiments, and according to the present invention. The equivalent changes required are still within the scope of the invention.
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。 One of ordinary skill in the art can understand that all or part of the process of implementing the foregoing embodiments can be completed by a computer program to instruct related hardware, and the program can be stored in a computer readable storage medium. When executed, the flow of an embodiment of the methods as described above may be included. The storage medium may be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM).

Claims (11)

  1. 一种基于Linux的注册表服务系统,其特征在于,包括:A Linux-based registry service system, comprising:
    内存注册表构建单元,用于加载操作系统下的注册表数据文件,并通过数据库接口读取所述注册表数据文件中已保存的配置表数据,在内存中构建内存注册表;a memory registry building unit, configured to load a registry data file under the operating system, and read the saved configuration table data in the registry data file through a database interface, and construct a memory registry in the memory;
    注册表操作单元,用于从注册表编辑器或者用户进程中收集节点数据,并将所述节点数据传输给注册表服务单元;a registry operating unit, configured to collect node data from a registry editor or a user process, and transmit the node data to a registry service unit;
    所述注册表服务单元,用于根据针对所述内存注册表的操作方式,对所述内存注册表中与所述节点数据对应的节点进行相应的操作,并在操作完成后,根据操作结果向所述注册表操作单元返回操作确认符;其中,所述操作方式为读取、写入、删除中的一种。The registry service unit is configured to perform corresponding operations on the node corresponding to the node data in the memory registry according to an operation manner of the memory registry, and after the operation is completed, according to the operation result The registry operation unit returns an operation confirmer; wherein the operation mode is one of reading, writing, and deleting.
  2. 根据权利要求1所述的基于Linux的注册表服务系统,其特征在于,A Linux-based registry service system according to claim 1, wherein
    所述内存注册表为一种将临时配置数据根据预先设计好的数据结构写入内存中,而不写入磁盘的配置表,其中,所述内存注册表由至少一个节点构成,每个节点包括主节点及子节点,所述主节点包括主节点id,所述子节点包括子节点id及节点数据值。The memory registry is a configuration table for writing temporary configuration data into a memory according to a pre-designed data structure without writing to a disk, wherein the memory registry is composed of at least one node, and each node includes A master node and a child node, the master node including a master node id, the child node including a child node id and a node data value.
  3. 根据权利要求1或2所述的基于Linux的注册表服务系统,其特征在于,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点及子节点,所述主节点包括主节点id,所述子节点包括子节点id及节点数据值;所述操作方式为读取;The Linux-based registry service system according to claim 1 or 2, wherein the operation confirmation code is an acknowledgement character or a negative response character, the node data includes a master node and a child node, and the master node includes a master node id, the child node includes a child node id and a node data value; the operation mode is read;
    则所述注册表服务单元具体包括:The registry service unit specifically includes:
    第一id获取模块,用于从所述节点数据中获取所述主节点id及所述子节点id;a first id obtaining module, configured to acquire the primary node id and the child node id from the node data;
    读取模块,用于将所述主节点id及子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则读取所述节点数据中的节点数据值,并向所述注册表操作单元返回所述节点数据及确认字符;若没有,则向所述注册表操作单元返回否定应答字符;a reading module, configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id as the node data and a node of the child node id; if so, reading the node data value in the node data, and returning the node data and the confirmation character to the registry operation unit; if not, to the registry operation unit Return a negative response character;
    所述注册表操作单元,还用于在接收到所述确认字符和所述节点数据后,确认读取操作成功,并将所述节点数据传递至所述注册表编辑器或所述用户进程;在接收到所述否定应答字符后,确认读取操作失败,并向所述注册表编辑器或所述用户进程反馈读取失败信息。The registry operating unit is further configured to: after receiving the confirmation character and the node data, confirm that the reading operation is successful, and deliver the node data to the registry editor or the user process; After receiving the negative response character, it is confirmed that the read operation has failed, and the read failure information is fed back to the registry editor or the user process.
  4. 根据权利要求1或2所述的基于Linux的注册表服务系统,其特征在于,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子节点id、节点数据值及临 时数据标记;所述操作方式为写入;The Linux-based registry service system according to claim 1 or 2, wherein the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a master node id, a child node id, and a node data value. And Time data tag; the operation mode is write;
    则所述注册表服务单元具体包括:The registry service unit specifically includes:
    第二id获取模块,用于从所述节点数据中获取所述主节点id及所述子节点id;a second id obtaining module, configured to acquire the primary node id and the child node id from the node data;
    写入模块,用于将所述主节点id及所述子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则将查询到的所述节点的节点数据值修改为所述节点数据的节点数据值;若没有,则将所述节点数据添加到所述内存注册表中;a writing module, configured to send the primary node id and the child node id into a read interface of the memory registry, and query whether the memory registry has the same primary node as the node data a node of the id and the child node id; if yes, modifying the node data value of the node that is queried to the node data value of the node data; if not, adding the node data to the memory registry in;
    第一临时数据判断模块,用于判断所述节点数据的临时数据标记是否为0,若是,则向所述注册表操作单元返回确认字符;若不是,则调用所述数据库接口将所述节点数据写入到所述注册表数据文件中,并向所述注册表操作单元返回确认字符。a first temporary data determining module, configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit; if not, call the database interface to call the node data Write to the registry data file and return a confirmation character to the registry operating unit.
  5. 根据权利要求1或2所述的基于Linux的注册表服务系统,其特征在于,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子节点id、节点数据值及临时数据标记;所述操作方式为删除;The Linux-based registry service system according to claim 1 or 2, wherein the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a master node id, a child node id, and a node data value. And temporary data tags; the operation mode is deletion;
    则所述注册表服务单元具体包括:The registry service unit specifically includes:
    第三id获取模块,用于从所述节点数据中获取所述主节点id及所述子节点id;a third id obtaining module, configured to acquire the primary node id and the child node id from the node data;
    删除模块,用于将所述主节点id及子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则删除所述节点,并通知第二临时数据判断模块;若没有,则向所述注册表操作单元返回否定应答字符;a deleting module, configured to send the primary node id and the child node id into the read interface of the memory registry, and query whether the memory registry has the same primary node id and the child data as the node data a node of the node id; if so, deleting the node and notifying the second temporary data determination module; if not, returning a negative response character to the registry operation unit;
    所述第二临时数据判断模块,用于判断所述节点数据的临时数据标记是否为0,若是,则向所述注册表操作单元返回确认字符;若不是,则调用所述数据库接口将所述节点数据从所述注册表数据文件中删除,并向所述注册表操作单元返回确认字符。The second temporary data determining module is configured to determine whether the temporary data flag of the node data is 0, and if yes, return a confirmation character to the registry operating unit; if not, calling the database interface to Node data is deleted from the registry data file and a confirmation character is returned to the registry operating unit.
  6. 一种基于Linux的注册表服务方法,其特征在于,包括:A Linux-based registry service method, comprising:
    加载操作系统下的注册表数据文件,并通过数据库接口读取所述注册表数据文件中已保存的配置表数据,在内存中构建内存注册表;Loading a registry data file under the operating system, and reading the saved configuration table data in the registry data file through the database interface, and constructing a memory registry in the memory;
    从注册表编辑器或者用户进程中收集节点数据;Collect node data from a registry editor or user process;
    根据针对所述内存注册表的操作方式,对所述内存注册表中与所述节点数对应的节点进行相应的操作,并在操作完成后,根据操作结果生成操作确认符;其中,所述操作方式为读取、写入、删除中的一种。 Performing, according to the operation mode of the memory registry, a node corresponding to the number of nodes in the memory registry, and after the operation is completed, generating an operation confirmer according to the operation result; wherein the operation The mode is one of reading, writing, and deleting.
  7. 根据权利要求6所述的基于Linux的注册表服务方法,其特征在于,The Linux-based registry service method according to claim 6, wherein
    所述内存注册表为一种将临时配置数据根据预先设计好的数据结构写入内存中,而不写入磁盘的配置表,其中,所述内存注册表由至少一个节点构成,每个节点至少包括主节点id、子节点id及节点数据值。The memory registry is a configuration table for writing temporary configuration data into a memory according to a pre-designed data structure without writing to a disk, wherein the memory registry is composed of at least one node, and each node is at least Includes the primary node id, child node id, and node data values.
  8. 根据权利要求6或7所述的基于Linux的注册表服务方法,其特征在于,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子节点id及节点数据值;所述操作方式为读取;The Linux-based registry service method according to claim 6 or 7, wherein the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a primary node id, a child node id, and a node data value. The operation mode is read;
    则所述根据所述节点数据及针对所述内存注册表的操作方式,对所述内存注册表进行相应的操作,并在操作完成后,根据操作结果生成操作确认符,具体包括:Then, according to the node data and the operation mode of the memory registry, perform corresponding operations on the memory registry, and after the operation is completed, generate an operation confirmation identifier according to the operation result, which specifically includes:
    从所述节点数据中获取所述主节点id及所述子节点id;Obtaining the primary node id and the child node id from the node data;
    将所述主节点id及子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则读取所述节点数据中的节点数据值,并生成确认字符;若没有,则生成否定应答字符。Passing the master node id and the child node id into the read interface of the memory registry, and querying whether there is a node in the memory registry that has the same master node id and child node id as the node data; If so, the node data value in the node data is read and a confirmation character is generated; if not, a negative response character is generated.
  9. 根据权利要求6或7所述的基于Linux的注册表服务方法,其特征在于,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子节点id、节点数据值及临时数据标记;所述操作方式为写入;The Linux-based registry service method according to claim 6 or 7, wherein the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a primary node id, a child node id, and a node data value. And temporary data mark; the operation mode is write;
    则所述根据所述节点数据及针对所述内存注册表的操作方式,对所述内存注册表进行相应的操作,并在操作完成后,根据操作结果生成操作确认符,具体包括:Then, according to the node data and the operation mode of the memory registry, perform corresponding operations on the memory registry, and after the operation is completed, generate an operation confirmation identifier according to the operation result, which specifically includes:
    从所述节点数据中获取所述主节点id及所述子节点id;Obtaining the primary node id and the child node id from the node data;
    将所述主节点id及所述子节点id传入所述内存注册表的读取接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则将查询到的所述节点的节点数据值修改为所述节点数据的节点数据值;若没有,则将所述节点数据添加到所述内存注册表中;Passing the master node id and the child node id into the read interface of the memory registry, and querying whether the memory registry has the same master node id and child node id as the node data. a node; if yes, modifying the node data value of the queried node to a node data value of the node data; if not, adding the node data to the memory registry;
    判断所述节点数据的临时数据标记是否为0,若是,则生成确认字符;若不是,则在调用数据库接口将所述节点数据写入到所述注册表数据文件中后,生成确认字符。Determining whether the temporary data flag of the node data is 0, and if so, generating a confirmation character; if not, generating a confirmation character after calling the database interface to write the node data into the registry data file.
  10. 根据权利要求6或7所述的基于Linux的注册表服务方法,其特征在于,所述操作确认码为确认字符或否定应答字符,所述节点数据包括主节点id、子节点id、节点数据值及 临时数据标记;所述操作方式为删除;The Linux-based registry service method according to claim 6 or 7, wherein the operation confirmation code is an acknowledgement character or a negative response character, and the node data includes a primary node id, a child node id, and a node data value. And Temporary data tag; the operation mode is deletion;
    则所述根据所述节点数据及针对所述内存注册表的操作方式,对所述内存注册表进行相应的操作,并在操作完成后,根据操作结果生成操作确认符,具体包括:Then, according to the node data and the operation mode of the memory registry, perform corresponding operations on the memory registry, and after the operation is completed, generate an operation confirmation identifier according to the operation result, which specifically includes:
    从所述节点数据中获取所述主节点id及所述子节点id;Obtaining the primary node id and the child node id from the node data;
    将所述主节点id及子节点id传入所述内存注册表的读取数据接口中,并查询所述内存注册表中是否存在与所述节点数据具有相同主节点id及子节点id的节点;若有,则删除所述节点,并判断所述节点数据的临时数据标记是否为0,若是,则生成确认字符;若不是,则在调用数据库接口将所述节点数据从所述注册表数据文件中删除后,生成确认字符;若没有,则生成否定应答字符。Passing the primary node id and the child node id into the read data interface of the memory registry, and querying whether there is a node in the memory registry that has the same primary node id and child node id as the node data. And if so, deleting the node and determining whether the temporary data tag of the node data is 0, and if so, generating a confirmation character; if not, calling the database interface to retrieve the node data from the registry data After the file is deleted, a confirmation character is generated; if not, a negative response character is generated.
  11. 一种金融自助设备,其特征在于,包括如权利要求1-5任意一项所述的基于Linux的注册表服务系统。 A financial self-service device, comprising the Linux-based registry service system according to any one of claims 1-5.
PCT/CN2017/082939 2016-05-04 2017-05-03 Linux-based registry service system and method, and financial self-service device WO2017190663A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610293612.3A CN105912952B (en) 2016-05-04 2016-05-04 A kind of registration list service system, method and financial self-service equipment based on Linux
CN201610293612.3 2016-05-04

Publications (1)

Publication Number Publication Date
WO2017190663A1 true WO2017190663A1 (en) 2017-11-09

Family

ID=56752311

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/082939 WO2017190663A1 (en) 2016-05-04 2017-05-03 Linux-based registry service system and method, and financial self-service device

Country Status (2)

Country Link
CN (1) CN105912952B (en)
WO (1) WO2017190663A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912952B (en) * 2016-05-04 2019-07-23 广州广电运通金融电子股份有限公司 A kind of registration list service system, method and financial self-service equipment based on Linux
CN106844581A (en) * 2017-01-10 2017-06-13 山东华软金盾软件股份有限公司 The simulation realizing method of registration table under a kind of Linux
CN109389779A (en) * 2018-08-28 2019-02-26 苏州浪潮智能软件有限公司 A kind of finance device unified call method under linux system
CN113094124A (en) * 2021-03-31 2021-07-09 北京星阑科技有限公司 Sqlite 3-based operating system information processing method and system
CN115328580B (en) * 2022-10-13 2022-12-16 中科方德软件有限公司 Processing method, device and medium for registry operation in application migration environment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101178662A (en) * 2006-11-08 2008-05-14 中兴通讯股份有限公司 Monitoring method of embedded LINUX applications progress
US7448084B1 (en) * 2002-01-25 2008-11-04 The Trustees Of Columbia University In The City Of New York System and methods for detecting intrusions in a computer system by monitoring operating system registry accesses
CN102117286A (en) * 2009-12-30 2011-07-06 北大方正集团有限公司 Registry system and operation method thereof
CN104375841A (en) * 2014-12-03 2015-02-25 广州广电运通金融电子股份有限公司 Structure and implementation method based on CEN/XFS standard of linux system
CN105912952A (en) * 2016-05-04 2016-08-31 广州广电运通金融电子股份有限公司 Linux based registry service system and method as well as financial self-service device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7448084B1 (en) * 2002-01-25 2008-11-04 The Trustees Of Columbia University In The City Of New York System and methods for detecting intrusions in a computer system by monitoring operating system registry accesses
CN101178662A (en) * 2006-11-08 2008-05-14 中兴通讯股份有限公司 Monitoring method of embedded LINUX applications progress
CN102117286A (en) * 2009-12-30 2011-07-06 北大方正集团有限公司 Registry system and operation method thereof
CN104375841A (en) * 2014-12-03 2015-02-25 广州广电运通金融电子股份有限公司 Structure and implementation method based on CEN/XFS standard of linux system
CN105912952A (en) * 2016-05-04 2016-08-31 广州广电运通金融电子股份有限公司 Linux based registry service system and method as well as financial self-service device

Also Published As

Publication number Publication date
CN105912952B (en) 2019-07-23
CN105912952A (en) 2016-08-31

Similar Documents

Publication Publication Date Title
WO2017190663A1 (en) Linux-based registry service system and method, and financial self-service device
US11032140B2 (en) Using a template to update a stack of resources
US11656852B2 (en) System and method for autowiring of a microservice architecture
US9253265B2 (en) Hot pluggable extensions for access management system
US10956374B2 (en) Data recovery method, apparatus, and system
US20230205603A1 (en) Communications Framework for Multi-Cluster Management Systems
JPH11231927A (en) Monitor and control system
CN111262908A (en) Task construction method and system based on jenkins
CN108549542A (en) A kind of file dispositions method, device and equipment
CN104731943A (en) Server and data processing method
CN112583630B (en) Device management method, device, system, device and storage medium
CN113590169B (en) Application deployment method, application deployment system, and computer-readable storage medium
CN112667711B (en) MySQL read-only instance management method, system and computer readable medium
CN111240998B (en) Test case processing method and device
CN115357198B (en) Mounting method and device of storage volume, storage medium and electronic equipment
TW479172B (en) Communication system, database server, control unit, processing terminal, relay server, and method of manufacturing a semiconductor
US10223178B2 (en) Enabling WPD devices to be managed at the capability level
US20020107921A1 (en) Work-flow cooperation processing apparatus, work-flow cooperation processing system, work-flow-system cooperation method, program therefor, and recording medium therefor
CN113672334A (en) Container management method and device
JP2013186765A (en) Batch processing system, progress confirmation device, progress confirmation method and program
CN114691125B (en) Method, system, medium and electronic equipment for applying resource mapping conversion
CN115766438B (en) DPDK-based interface management method and system
JP2010009555A (en) Information processor and program
JP2005055961A (en) Inter-communication program and method
CN114731326B (en) Block chain system, program and network connection device

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17792489

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17792489

Country of ref document: EP

Kind code of ref document: A1