CN106897089B - System operation execution method and device - Google Patents

System operation execution method and device Download PDF

Info

Publication number
CN106897089B
CN106897089B CN201710045054.3A CN201710045054A CN106897089B CN 106897089 B CN106897089 B CN 106897089B CN 201710045054 A CN201710045054 A CN 201710045054A CN 106897089 B CN106897089 B CN 106897089B
Authority
CN
China
Prior art keywords
function
shared libraries
shared
hook
functions
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN201710045054.3A
Other languages
Chinese (zh)
Other versions
CN106897089A (en
Inventor
张景逸
康凯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Dnion Information Technology Co ltd
Original Assignee
Shanghai Dnion Information Technology Co ltd
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 Shanghai Dnion Information Technology Co ltd filed Critical Shanghai Dnion Information Technology Co ltd
Priority to CN201710045054.3A priority Critical patent/CN106897089B/en
Publication of CN106897089A publication Critical patent/CN106897089A/en
Application granted granted Critical
Publication of CN106897089B publication Critical patent/CN106897089B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

A system operation execution method and device, the method comprises the following steps: hooking the system call shared library operation function library to prevent a hooking function in a pre-configured shared library from calling a corresponding original function; loading a plurality of pre-configured shared libraries; and executing the hook functions in the corresponding shared libraries according to the loading sequence of the shared libraries, and executing the corresponding original functions so as to expand the execution operation of the corresponding original functions. By the scheme, the flexibility of operation can be improved when the execution behavior of the original operation function of the system is expanded.

Description

System operation execution method and device
Technical Field
The invention belongs to the technical field of operating systems, and particularly relates to a system operation execution method and device.
Background
Linux is a Unix-like operating system which is free to use and spread freely, and is a multi-user, multi-task, multi-thread and multi-CPU supporting operating system based on POSIX and UNIX. The UNIX network operating system can run main UNIX tool software, application programs and network protocols, supports 32-bit and 64-bit hardware, inherits the design idea that Unix takes a network as a core, and is a multi-user network operating system with stable performance.
The so file in Linux is similar to the Dynamic Link Library/Dynamic-Link Library (DLL) of microsoft corporation in microsoft Windows (Windows) operating system, and is a way for microsoft corporation to implement the concept of shared function Library in microsoft Windows (Windows) operating system.
However, the dynamic link library preloading method has the problem of poor flexibility when the original operation function of the system is called.
Disclosure of Invention
The problem solved by the embodiment of the invention is how to improve the flexibility of operation when the execution behavior of the original operation function of the system is expanded.
To solve the above problem, an embodiment of the present invention provides a system operation execution method, including: hooking the system call shared library operation function library to prevent a hooking function in a pre-configured shared library from calling a corresponding original function; loading a plurality of pre-configured shared libraries; and executing the hook functions in the corresponding shared libraries according to the loading sequence of the shared libraries, and executing the corresponding original functions so as to expand the execution operation of the corresponding original functions.
Optionally, the loading a preconfigured plurality of shared libraries comprises: and loading the shared libraries according to the arrangement sequence of the addresses of the shared libraries in the acquired shared library configuration file.
Optionally, the executing the hooking functions in the corresponding shared libraries according to the loading order of the shared libraries, and executing the corresponding original functions to expand the execution operations of the corresponding original functions includes: judging whether corresponding cooperation starting hook functions exist in the plurality of shared libraries; determining that the plurality of shared libraries are in a collaboration mode when it is determined that corresponding collaboration initiation hooking functions exist in the plurality of shared libraries; when the shared libraries are determined to be in the cooperation mode, respectively executing cooperation starting hook functions of the shared libraries with corresponding bit sequences according to the loading sequence of the shared libraries; transmitting the execution result of the cooperation starting hook function in the shared library of the corresponding bit sequence and the parameters of the hook function to the cooperation starting hook function in the shared library of the next bit sequence, and executing the cooperation starting hook function in the shared library of the next bit sequence until the cooperation starting hook functions of the plurality of shared libraries are completely executed; and when the cooperation of the shared libraries starts to hook the function and finish the execution, executing the original function.
Optionally, after the original function is executed, the method further includes: and transmitting the execution result of the cooperation starting hook function and the execution result of the original function of the shared library arranged in a preset bit sequence in the shared library to a corresponding cooperation termination function, and executing the cooperation termination function to process the operation result of the original function.
Optionally, the executing the hooking functions in the corresponding shared libraries according to the loading order of the shared libraries, and executing the corresponding original functions to expand the execution operations of the corresponding original functions, further includes: when determining that no corresponding collaboration start hooking function exists in the shared libraries, determining that the shared libraries are in a compatible mode; when the shared libraries are in the compatible mode, the hook functions of the shared libraries with the corresponding bit sequences are respectively executed according to the loading sequence of the shared libraries until the hook functions of the shared libraries are completely executed; and when the hook functions of the plurality of shared libraries are determined to be completely executed, executing the original function.
The embodiment of the present invention further provides a system operation executing apparatus, including: the hooking unit is suitable for hooking the system call shared library operation function library so as to prevent hooking functions in the pre-configured shared library from calling corresponding original functions; a loading unit adapted to load a plurality of pre-configured shared libraries; and the execution unit is suitable for executing the hook functions in the corresponding shared libraries according to the loading sequence of the plurality of shared libraries and executing the corresponding original functions so as to expand the execution operation of the corresponding original functions.
Optionally, the loading unit is adapted to load the shared libraries according to an arrangement order of the shared library addresses in the obtained shared library configuration file.
Optionally, the executing unit is adapted to determine whether a corresponding collaboration start hooking function exists in the plurality of shared libraries; determining that the plurality of shared libraries are in a collaboration mode when it is determined that corresponding collaboration initiation hooking functions exist in the plurality of shared libraries; when the shared libraries are determined to be in the cooperation mode, respectively executing cooperation starting hook functions of the shared libraries with corresponding bit sequences according to the loading sequence of the shared libraries; transmitting the execution result of the cooperation starting hook function in the shared library of the corresponding bit sequence and the parameters of the hook function to the cooperation starting hook function in the shared library of the next bit sequence, and executing the cooperation starting hook function in the shared library of the next bit sequence until the cooperation starting hook functions of the plurality of shared libraries are completely executed; and when the cooperation of the shared libraries starts to hook the function and finish the execution, executing the original function.
Optionally, the execution unit is further adapted to, after the original function is executed, transfer an execution result of a cooperation start hook function of a shared library arranged in a preset bit sequence in the shared library and an execution result of the original function to a corresponding cooperation termination function, and execute the cooperation termination function to process an operation result of the original function.
Optionally, the executing unit is further adapted to determine that the plurality of shared libraries are in a compatible mode when it is determined that no corresponding collaboration start hooking function exists in the plurality of shared libraries; when the shared libraries are in the compatible mode, the hook functions of the shared libraries with the corresponding bit sequences are respectively executed according to the loading sequence of the shared libraries until the hook functions of the shared libraries are completely executed; and when the hook functions of the plurality of shared libraries are determined to be completely executed, executing the original function.
Compared with the prior art, the technical scheme of the invention has the following advantages:
according to the scheme, the hook functions in the shared libraries are hooked with the original functions of the system, and the hook functions in the shared libraries can be used for arbitrarily expanding the operation of the original functions, so that the flexibility of system operation can be improved.
Further, when the plurality of shared libraries are determined to be in the cooperation mode, the hook functions and the original functions in the corresponding shared libraries are executed according to the loading sequence of the plurality of shared libraries, and the execution behaviors of the corresponding original functions can be expanded through cooperation among the plurality of pre-configured shared libraries; when determining that a plurality of shared libraries can respectively expand the execution behaviors of the original functions, the flexibility of operation can be further improved.
Drawings
FIG. 1 is a flow chart of a method for performing system operations in one embodiment of the invention;
FIG. 2 is a flow chart of another method of performing system operations in accordance with embodiments of the present invention;
fig. 3 is a schematic structural diagram of a system operation execution device according to an embodiment of the present invention.
Detailed Description
As background, when using shared library preloading techniques, only one system native operation function is allowed to hook into the shared library. When a plurality of shared libraries hook the original operation function of a system at the same time, the system only calls the hook function in one shared library of the plurality of shared libraries.
Therefore, when the operation implemented by the original operation function of the system needs to be expanded and the expanded operation is more, the hook functions corresponding to the corresponding multiple expansion functions need to be written into one shared library, which causes the logic of the hook functions in the shared library to be more loaded, thereby causing the operation to be more complicated and increasing the error rate.
In order to solve the above problems, in the technical solution of the embodiment of the present invention, hooking functions in multiple shared libraries are hooked with an original function of a system, and operations of the original function can be arbitrarily expanded through hooking functions in multiple shared libraries, so that flexibility of operations of the original function can be improved.
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, embodiments accompanied with figures are described in detail below.
Fig. 1 is a flowchart of a system operation execution method in an embodiment of the present invention. The system operation execution method shown in fig. 1 may include:
step S101: and hooking the system call shared library operation function.
In an embodiment of the present invention, the adopted operating system is a Unix system, and the system call shared library operating function is a dyslm function. In particular implementations, system calls in the respective operating systems may be employed to share library operating functions.
Step S102: a pre-configured plurality of shared libraries is loaded.
In a particular implementation, the preconfigured plurality of shared libraries may be loaded in accordance with an absolute address list of the preconfigured plurality of shared libraries.
Step S103: and executing the hook functions in the corresponding shared libraries according to the loading sequence of the shared libraries, and executing the corresponding original functions so as to expand the execution operation of the corresponding original functions.
In a specific implementation, the corresponding original function is a system operation function corresponding to a plurality of pre-configured shared libraries.
According to the scheme, the hook functions in the shared libraries are hooked with the original functions of the system, and the operation of the original functions can be expanded arbitrarily through the hook functions in the shared libraries, so that the flexibility of the operation of the original functions can be improved.
The following describes the system operation execution method in the embodiment of the present invention in further detail.
Referring to fig. 2, a system operation execution method in the embodiment of the present invention is suitable for expanding an operation executed by an original operation function of a system, and may specifically be implemented by the following steps:
step S201: and hooking the system call shared library operation function.
In an embodiment of the present invention, when the operating system is a Unix system, the system call shared library operating function dlsym may be hooked to the plurality of preconfigured shared libraries, and a null pointer may be returned to prevent a hooking function in the plurality of preconfigured shared libraries from calling the hooked original function.
Step S202: a pre-configured plurality of shared libraries is loaded.
In an embodiment of the present invention, the absolute addresses in the preconfigured plurality of shared libraries are stored in the corresponding shared library configuration file, and the absolute addresses in the preconfigured plurality of shared libraries are stored in the shared library configuration file in sequence. The method comprises the steps of loading a corresponding shared library configuration file, reading absolute addresses of corresponding shared libraries in the configuration file according to a sequence, and obtaining the corresponding shared libraries from the corresponding absolute addresses, so that a plurality of preconfigured shared libraries are loaded.
Step S203: judging whether a corresponding cooperation starting hook function exists in the plurality of shared libraries; when the judgment result is yes, step S204 may be performed; otherwise, step S207 may be performed.
In a particular implementation, the pre-configured plurality of shared libraries may be in a collaboration mode and a compatibility mode. The cooperation mode refers to that corresponding logical relations exist among operations corresponding to hook functions in a plurality of preconfigured shared libraries. In contrast to the collaboration mode, the operations corresponding to the plurality of pre-configured shared libraries in the compatible mode are independent of each other and do not have corresponding logical relationships.
In an embodiment of the present invention, when the preconfigured shared libraries are in the collaboration mode, each shared library has a corresponding collaboration start hooking function, so that whether the preconfigured shared libraries are in the collaboration mode or the compatible mode can be determined by whether the preconfigured shared libraries each have a corresponding collaboration start hooking function.
Step S204: and executing the cooperation starting hook function in the shared library of the corresponding bit sequence according to the loading sequence of the plurality of shared libraries, and transmitting the execution result of the cooperation starting hook function of the shared library of the corresponding bit sequence and the parameters of the hook function to the cooperation starting hook function in the shared library of the next bit sequence until the cooperation starting hook functions of the plurality of shared libraries are completely executed.
In a specific implementation, when a plurality of shared libraries in a collaboration mode hook corresponding original functions, a hooking function and a collaboration start hooking function are required. The hooking function is used for reloading the hooked function and can be directly called by the preloading of the shared library. The run logic for each hook function includes: (1) calling a cooperation starting hook function; (2) and calling the original function and returning the execution result of the original function.
In a specific implementation, the collaboration of multiple shared libraries in collaboration mode begins the hooking function for performing the previous logical operations on the original function. In an embodiment of the present invention, the collaboration start hooking function in each shared library is named "hooked function name + frame _ begin", and its parameter is (the operation result of the collaboration hooking function in the last shared library is returned to the collaboration end hooking function, and the parameter of the hooking function), and its return value is (the parameter passed to the original function).
In specific implementation, when it is determined that corresponding collaboration start hook functions exist in each of the plurality of preconfigured shared libraries, the collaboration start hook functions in the shared library of the corresponding bit sequence may be executed first according to a loading order of the plurality of preconfigured shared libraries, and an execution result of the collaboration start hook functions and parameters of the hook functions in the shared library of the corresponding bit sequence are transferred to the collaboration start hook functions in the shared library of the next bit sequence until all the collaboration start hook functions in the plurality of preconfigured shared libraries are executed.
Step S205: the original function is executed.
In specific implementation, when all the hook functions are executed after collaboration in a plurality of preconfigured shared libraries is started, the original function may be called, and the execution result of the original function is returned.
In an embodiment of the present invention, when the execution result of the original function needs to be further processed, the system operation execution method in the embodiment of the present invention may include:
step S206: and transmitting the execution result of the cooperation starting hook function and the execution result of the original function of the shared libraries which are arranged in a preset bit sequence in the plurality of shared libraries to the corresponding cooperation termination function, and executing the cooperation termination function so as to process the operation result of the original function.
In an embodiment of the present invention, when the execution result of the original function needs to be further processed, the operation logic of the hook function further includes: (3) and calling a cooperation termination hook function and returning an execution result of the cooperation termination hook function.
The cooperation termination hook function in the shared library is used for executing program logic after the original function, namely, further processing the execution result of the original function. In an embodiment of the present invention, the cooperation termination hook function of each shared library is named "hooked function name + frame _ end", and its parameters are (a returned value of a cooperation start hook function of a shared library arranged in a first bit order among a plurality of shared libraries in the cooperation mode, a value of a cooperation start hook function returned to a shared library in a next bit order, and a returned value of an original function), and its returned value is a value returned to the hook function.
When the cooperation of the plurality of pre-configured shared libraries terminates the hooking function, the execution result of the cooperation start hooking function of the shared library arranged in the preset bit sequence in the plurality of shared libraries and the execution result of the original function may be received, and corresponding logic operation may be performed to process the execution result of the original function. The number of the cooperation termination functions may be set according to actual needs, and is not limited herein.
In a specific implementation, the preset bit sequence may be set according to an actual requirement, for example, the preset bit sequence is set as the first bit sequence, which is not limited herein.
Step S207: and sequentially executing the hook functions in the shared libraries with the corresponding bit sequences according to the loading sequence of the plurality of shared libraries.
In a particular implementation, when it is determined that no corresponding collaboration initiation hooking function exists in the preconfigured plurality of shared libraries, it may be determined that the preconfigured plurality of shared libraries are in a compatible mode. When a hook function in a shared library of a corresponding bit sequence is called, since a system call shared library operation function dlsym is adopted to hook with a plurality of pre-configured shared libraries before, the shared libraries cannot call an original function by using the system call shared library operation function dlsym. Meanwhile, when the method belongs to the compatible mode, the execution process of the hook function in the shared library cannot be interrupted, so that the execution result of the original function cannot be further processed.
Step S208: and calling the original function and returning the execution result of the original function.
In specific implementation, after the plurality of pre-configured shared libraries are sequentially executed, the shared library cannot repeatedly call the original function because a system call shared library operation function dlsym is used for hooking with the plurality of pre-configured shared libraries and returning null pointers. After the shared libraries are executed, the original function is called to ensure that the original function can be called only once.
The method in the embodiment of the present invention is described in detail above, and the apparatus corresponding to the method will be described below.
Fig. 3 shows a structure of a system operation execution apparatus in the embodiment of the present invention. Referring to fig. 3, a system operation performing apparatus 300 may include a hooking unit 301, a loading unit 302, and an executing unit 303, wherein:
the hooking unit 301 is adapted to hook the system call shared library operation function library to prevent a hooking function in a preconfigured shared library from calling a corresponding original function;
the loading unit 302 is suitable for loading a plurality of pre-configured shared libraries; in an embodiment of the present invention, the loading unit 302 is adapted to load the shared libraries according to an arrangement order of the addresses of the shared libraries in the obtained shared library configuration file.
The executing unit 303 is adapted to execute the hooking functions in the corresponding shared libraries according to the loading order of the plurality of shared libraries, and execute the corresponding original functions, so as to expand the executing operation of the corresponding original functions.
In an embodiment of the present invention, the executing unit 303 is adapted to determine whether corresponding collaboration start hooking functions exist in the plurality of shared libraries; determining that the plurality of shared libraries are in a collaboration mode when it is determined that corresponding collaboration initiation hooking functions exist in the plurality of shared libraries; when the shared libraries are determined to be in the cooperation mode, respectively executing cooperation starting hook functions of the shared libraries with corresponding bit sequences according to the loading sequence of the shared libraries; transmitting the execution result of the cooperation starting hook function in the shared library of the corresponding bit sequence and the parameters of the hook function to the cooperation starting hook function in the shared library of the next bit sequence, and executing the cooperation starting hook function in the shared library of the next bit sequence until the cooperation starting hook functions of the plurality of shared libraries are completely executed; and when the cooperation of the shared libraries starts to hook the function and finish the execution, executing the original function.
In an embodiment of the present invention, the executing unit 303 is further adapted to, after the original function is executed, transfer an execution result of a cooperation start hook function of a shared library arranged in a preset bit sequence in the shared library and an execution result of the original function to a corresponding cooperation termination function, and execute the cooperation termination function to process an operation result of the original function.
In an embodiment of the present invention, the executing unit 303 is further adapted to determine that the plurality of shared libraries are in a compatible mode when it is determined that no corresponding collaboration start hooking function exists in the plurality of shared libraries; when the shared libraries are in the compatible mode, the hook functions of the shared libraries with the corresponding bit sequences are respectively executed according to the loading sequence of the shared libraries until the hook functions of the shared libraries are completely executed; and when the hook functions of the plurality of shared libraries are determined to be completely executed, executing the original function.
By adopting the scheme in the embodiment of the invention, the hook functions in the shared libraries are hooked with the original functions of the system, and the operation of the original functions can be expanded arbitrarily through the hook functions in the shared libraries, so that the flexibility of the system operation can be improved.
Further, when the plurality of shared libraries are determined to be in the cooperation mode, the hook functions and the original functions in the corresponding shared libraries are executed according to the loading sequence of the plurality of shared libraries, and the execution behaviors of the corresponding original functions can be expanded through cooperation among the plurality of pre-configured shared libraries; when determining that a plurality of shared libraries can respectively expand the execution behaviors of the original functions, the flexibility of operation can be further improved.
Those skilled in the art will appreciate that all or part of the steps in the methods of the above embodiments may be implemented by instructions associated with hardware via a program, which may be stored in a computer-readable storage medium, and the storage medium may include: ROM, RAM, magnetic or optical disks, and the like.
The method and system of the embodiments of the present invention have been described in detail, but the present invention is not limited thereto. Various changes and modifications may be effected therein by one skilled in the art without departing from the spirit and scope of the invention as defined in the appended claims.

Claims (8)

1. A method for performing system operations, comprising:
hooking the system call shared library operation function library to prevent a hooking function in a pre-configured shared library from calling a corresponding original function;
loading a plurality of pre-configured shared libraries;
executing the hook function in the corresponding shared library according to the loading sequence of the shared libraries, and executing the corresponding original function to expand the execution operation of the corresponding original function, wherein the method comprises the following steps:
judging whether corresponding cooperation starting hook functions exist in the plurality of shared libraries;
determining that the plurality of shared libraries are in a collaboration mode when it is determined that corresponding collaboration initiation hooking functions exist in the plurality of shared libraries;
when the shared libraries are determined to be in the cooperation mode, respectively executing cooperation starting hook functions of the shared libraries with corresponding bit sequences according to the loading sequence of the shared libraries;
transmitting the execution result of the cooperation starting hook function in the shared library of the corresponding bit sequence and the parameters of the hook function to the cooperation starting hook function in the shared library of the next bit sequence, and executing the cooperation starting hook function in the shared library of the next bit sequence until the cooperation starting hook functions of the plurality of shared libraries are completely executed;
and when the cooperation of the shared libraries starts to hook the function and finish the execution, executing the original function.
2. The system operation execution method of claim 1, wherein the loading a preconfigured plurality of shared libraries comprises:
and loading the shared libraries according to the arrangement sequence of the addresses of the shared libraries in the acquired shared library configuration file.
3. The system operation execution method of claim 1, further comprising, after the original function is executed:
and transmitting the execution result of the cooperation starting hook function and the execution result of the original function of the shared library arranged in a preset bit sequence in the shared library to a corresponding cooperation termination function, and executing the cooperation termination function to process the operation result of the original function.
4. The method according to claim 1, wherein the executing the hooking functions in the corresponding shared libraries according to the loading order of the shared libraries and executing the corresponding original functions to expand the executing operation of the corresponding original functions further comprises:
when determining that no corresponding collaboration start hooking function exists in the shared libraries, determining that the shared libraries are in a compatible mode;
when the shared libraries are in the compatible mode, the hook functions of the shared libraries with the corresponding bit sequences are respectively executed according to the loading sequence of the shared libraries until the hook functions of the shared libraries are completely executed;
and when the hook functions of the plurality of shared libraries are determined to be completely executed, executing the original function.
5. A system operation performing apparatus, comprising:
the hooking unit is suitable for hooking the system call shared library operation function library so as to prevent the hooking function in the pre-configured shared library from calling the corresponding original function;
a loading unit adapted to load a plurality of pre-configured shared libraries;
the execution unit is adapted to execute the hooking functions in the corresponding shared libraries according to the loading sequence of the plurality of shared libraries, and execute the corresponding original functions to expand the execution operations of the corresponding original functions, and specifically includes: judging whether corresponding cooperation starting hook functions exist in the plurality of shared libraries; determining that the plurality of shared libraries are in a collaboration mode when it is determined that corresponding collaboration initiation hooking functions exist in the plurality of shared libraries; when the shared libraries are determined to be in the cooperation mode, respectively executing cooperation starting hook functions of the shared libraries with corresponding bit sequences according to the loading sequence of the shared libraries; transmitting the execution result of the cooperation starting hook function in the shared library of the corresponding bit sequence and the parameters of the hook function to the cooperation starting hook function in the shared library of the next bit sequence, and executing the cooperation starting hook function in the shared library of the next bit sequence until the cooperation starting hook functions of the plurality of shared libraries are completely executed; and when the cooperation of the shared libraries starts to hook the function and finish the execution, executing the original function.
6. The system operation executing apparatus according to claim 5, wherein the loading unit is adapted to load the shared libraries in an order of the addresses of the shared libraries in the acquired shared library configuration file.
7. The system operation execution device according to claim 5, wherein the execution unit is further adapted to, after the original function is executed, transfer an execution result of a cooperation start hook function of a shared library arranged in a preset bit order among the shared libraries and an execution result of the original function to a corresponding cooperation termination function, and execute the cooperation termination function to process an execution result of the original function.
8. The system operation execution device of claim 5, wherein the execution unit is further adapted to determine that the plurality of shared libraries are in a compatible mode when it is determined that no corresponding collaboration start hooking function exists in the plurality of shared libraries; when the shared libraries are in the compatible mode, the hook functions of the shared libraries with the corresponding bit sequences are respectively executed according to the loading sequence of the shared libraries until the hook functions of the shared libraries are completely executed; and when the hook functions of the plurality of shared libraries are determined to be completely executed, executing the original function.
CN201710045054.3A 2017-01-19 2017-01-19 System operation execution method and device Active CN106897089B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710045054.3A CN106897089B (en) 2017-01-19 2017-01-19 System operation execution method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710045054.3A CN106897089B (en) 2017-01-19 2017-01-19 System operation execution method and device

Publications (2)

Publication Number Publication Date
CN106897089A CN106897089A (en) 2017-06-27
CN106897089B true CN106897089B (en) 2020-04-03

Family

ID=59199181

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710045054.3A Active CN106897089B (en) 2017-01-19 2017-01-19 System operation execution method and device

Country Status (1)

Country Link
CN (1) CN106897089B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114116072A (en) * 2020-08-31 2022-03-01 华为技术有限公司 Shared library multiplexing method and electronic equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101387968A (en) * 2008-09-28 2009-03-18 杭州华三通信技术有限公司 Method and apparatus for resolving multi graphic identification and verifying dynamic link library collision
CN103246848A (en) * 2013-03-26 2013-08-14 北京深思数盾科技有限公司 Software security protection method and equipment
CN105204861A (en) * 2015-09-29 2015-12-30 上海二三四五网络科技有限公司 Registry re-directing method and device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005149164A (en) * 2003-11-17 2005-06-09 Hitachi Ltd Method for calling external disclosure function stored in shared library

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101387968A (en) * 2008-09-28 2009-03-18 杭州华三通信技术有限公司 Method and apparatus for resolving multi graphic identification and verifying dynamic link library collision
CN103246848A (en) * 2013-03-26 2013-08-14 北京深思数盾科技有限公司 Software security protection method and equipment
CN105204861A (en) * 2015-09-29 2015-12-30 上海二三四五网络科技有限公司 Registry re-directing method and device

Also Published As

Publication number Publication date
CN106897089A (en) 2017-06-27

Similar Documents

Publication Publication Date Title
CN107943577B (en) Method and device for scheduling tasks
US9678767B2 (en) Unified extensible firmware interface (UEFI) driver and protocol
WO2018028055A1 (en) Method and apparatus for running android application program on windows system
US9766958B2 (en) Runtime emulating static thread local storage of portable executable software code
US10019598B2 (en) Dynamic service discovery
CN108446146B (en) Game data acquisition method and device
US20110113229A1 (en) Method for Shortening the Boot Time of a Computer System
US20120227056A1 (en) Method and system for enabling access to functionality provided by resources outside of an operating system environment
CN111459691A (en) Read-write method and device for shared memory
CN104932933A (en) Spin lock acquisition method and apparatus
US9098701B2 (en) Application module injection device, computing device including application module injection function, and recording medium for recording program for executing application module injection method
CN111338829B (en) Calling method and device for remote procedure call service
CN111949513A (en) Configuration file loading method and device, electronic equipment and readable storage device
CN106897089B (en) System operation execution method and device
CN109829678B (en) Rollback processing method and device and electronic equipment
US20160253275A1 (en) Information processing device, information processing system, and exclusive control program
CN112559067A (en) Dynamic library loading method and related device
CN108446144B (en) Application program starting method and device, terminal and storage medium
US9348667B2 (en) Apparatus for managing application program and method therefor
JP2008537248A (en) Perform multitasking on a digital signal processor
CN109426529B (en) Method, device and terminal for drawing graphics based on X window system
CN108958967B (en) Data processing method and server
US9418175B2 (en) Enumeration of a concurrent data structure
CN110069221B (en) Data release method and device
EP4418110A1 (en) Application launch method, application launch system, storage medium, and intelligent terminal

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant