CN118193383A - Fuzzy test system and method for real-time operation system - Google Patents

Fuzzy test system and method for real-time operation system Download PDF

Info

Publication number
CN118193383A
CN118193383A CN202410336632.9A CN202410336632A CN118193383A CN 118193383 A CN118193383 A CN 118193383A CN 202410336632 A CN202410336632 A CN 202410336632A CN 118193383 A CN118193383 A CN 118193383A
Authority
CN
China
Prior art keywords
test
module
real
time
fuzzy
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.)
Pending
Application number
CN202410336632.9A
Other languages
Chinese (zh)
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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN202410336632.9A priority Critical patent/CN118193383A/en
Publication of CN118193383A publication Critical patent/CN118193383A/en
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

The application provides a fuzzy test system and a fuzzy test method for a real-time operating system, wherein the fuzzy test module determines a system call relation table, a test task and a test log of a target operating system, generates a test case according to the system call relation table, the test task and the test log, and sends the test case to a task execution module; the task execution module is used for executing the test case to determine a test result of the test case and sending the test result to the feedback information collection module; the feedback information collecting module collects test results and sends the test results to the real-time evaluation test module and the fuzzy test module; the real-time evaluation test module carries out real-time detection and real-time evaluation on the target operating system according to the test result, and determines the real-time performance of the target operating system; the system call relation learning module determines the current system call relation, determines the explicit relation and the implicit relation of the target operating system according to the current system call relation, and updates the system call relation table.

Description

Fuzzy test system and method for real-time operation system
Technical Field
The application relates to the technical field of information security, in particular to a fuzzy test system and a fuzzy test method for a real-time operating system.
Background
Real-time operating systems (Real-Time Operating System, i.e., RTOS) play a vital role in modern industrial applications, which are designed to meet stringent time constraint requirements, ensuring that tasks can be completed accurately within a specified time. With the continuous development of industrial automation and intelligence, the application of RTOS is rapidly expanding, and the stability and the safety of the RTOS are particularly important. RTOS is not only responsible for resource allocation and task scheduling, but also directly affects the overall stability and security of the system. Any internal vulnerability can cause the system to be unstable or crash, thereby bringing a security risk.
However, the existing fuzzy test in the vulnerability detection of the real-time operating system ignores the system call relationship, so that the equivalent or invalid system call combination is repeatedly tested, and the test case has hysteresis, thereby causing the problems of wasting computing resources and reducing the accuracy of the fuzzy test.
Disclosure of Invention
In view of the above, the present application is directed to a fuzzy test system and method for a real-time operating system.
Based on the above object, the present application provides a fuzzy test system for a real-time operating system, comprising:
The fuzzy test module is used for determining a system call relation table, a test task and a test log of a target operating system, generating a test case of a fuzzy test according to the system call relation table, the test task and the test log, and sending the test case to the task execution module;
The task execution module is used for executing the test case, determining a test result of the test case and sending the test result to the feedback information collection module;
the feedback information collection module is used for collecting the test result and sending the test result to the real-time evaluation test module and the fuzzy test module;
The real-time evaluation test module is used for carrying out real-time detection and real-time evaluation on the target operating system according to the test result and determining the real-time performance of the target operating system;
and the system call relation learning module is used for determining a current system call relation, determining an explicit relation and an implicit relation of the target operating system according to the current system call relation, and updating the system call relation table according to the explicit relation and the implicit relation.
Optionally, the system further comprises: a virtual machine management module;
the virtual machine management module is used for configuring a virtual machine environment, initializing a virtual machine, monitoring the state of the virtual machine, starting the virtual machine and automatically restarting the virtual machine in the test process.
Optionally, the system further includes:
And the virtual machine management module performs information transmission with the fuzzy test module through a remote procedure call technology.
Optionally, the system calls a relationship learning module, including: a static learning module and a dynamic learning template;
The static learning module is used for carrying out static analysis on the current system call relationship and determining the explicit relationship;
The dynamic learning template is used for dynamically analyzing the target operating system and determining the implicit relation.
Optionally, the test result includes: coverage information, crash information, real-time detection information, reproduction information, and execution log;
the system further comprises: the task execution module executes the test case, determines the coverage rate information, the crash information, the real-time detection information, the reproduction information and the execution log, and sends the coverage rate information, the crash information, the real-time detection information, the reproduction information and the execution log to the feedback information collection module.
Optionally, the system further includes:
And in response to determining that one test is completed, the fuzzy test module receives the test result and the system call relation table, and updates the test case according to the test result and the system call relation table.
Optionally, the system further includes:
The real-time performance evaluation test module performs data analysis on the real-time performance, generates a test report according to the data analysis result, and sends the test report to a developer; wherein the test report includes: software bugs and performance bottlenecks.
Optionally, the system further includes:
the real-time evaluation test module acquires the test result in real time, and determines the request response time and the execution request time when the test is performed according to the test case according to the test result;
determining a time sum according to the request response time and the execution request time;
And in response to determining that the time sum is greater than a preset time threshold, recording a system call when the test case is executed, and generating the test report according to the system call.
Optionally, the ambiguity test module further includes:
And according to the test result and the system call relation table, mutating the test case, and carrying out a new round of fuzzy test according to the mutated test case.
Based on the same inventive concept, the embodiment of the application also provides a fuzzy test method for a real-time operation system, which is used for a fuzzy test system, wherein the fuzzy test system comprises a fuzzy test module, a task execution module, a feedback information collection module, a real-time evaluation test module and a system call relation learning module, and the method comprises the following steps:
the fuzzy test module determines a system call relation table, a test task and a test log of a target operating system, generates a test case of a fuzzy test according to the table, the test task and the test log, and sends the test case to the considered execution module;
The task execution module executes the test case, determines a test result of the test case, and sends the test result to the feedback information collection module;
The feedback information collection module is used for collecting the test result and sending the test result to the real-time evaluation test module and the fuzzy test module;
The real-time evaluation test module is used for carrying out real-time detection and real-time evaluation on the target operating system according to the test result and determining the real-time performance of the target operating system;
The system call relation learning module determines a current system call relation, determines an explicit relation and an implicit relation of the target operating system according to the current system call relation, and updates the system call relation table according to the explicit relation and the implicit relation.
From the above, it can be seen that the ambiguity test system and method for a real-time operating system provided by the present application includes: the fuzzy test module is used for determining a system call relation table, a test task and a test log of the target operating system, generating a test case of a fuzzy test according to the system call relation table, the test task and the test log, and sending the test case to the task execution module; the task execution module is used for executing the test case, determining a test result of the test case and sending the test result to the feedback information collection module; the feedback information collection module is used for collecting test results and sending the test results to the real-time evaluation test module and the fuzzy test module; the real-time evaluation test module is used for carrying out real-time detection and real-time evaluation on the target operating system according to the test result and determining the real-time performance of the target operating system; and the system call relation learning module is used for determining the current system call relation, determining the explicit relation and the implicit relation of the target operating system according to the current system call relation, and updating the system call relation table according to the explicit relation and the implicit relation. According to the application, the feedback information collection module is used for collecting the test information in real time, so that the fuzzy test system can deeply detect and evaluate various factors influencing the real-time performance of the real-time operation system, and the test cases are updated according to the detected calling relation and program test data, so that more targeted test cases are generated, the generation of invalid and equivalent test cases is reduced, and the time efficiency of the fuzzy test is improved.
Drawings
In order to more clearly illustrate the technical solutions of the present application or related art, the drawings that are required to be used in the description of the embodiments or related art will be briefly described below, and it is apparent that the drawings in the following description are only embodiments of the present application, and other drawings may be obtained according to the drawings without inventive effort to those of ordinary skill in the art.
FIG. 1 is a schematic diagram of a fuzzy test system for a real-time operating system according to an embodiment of the present application;
FIG. 2 is a schematic diagram of an embodiment of a fuzzy test system architecture for a real-time operating system according to an embodiment of the present application;
FIG. 3 is a schematic diagram of a fuzzy test system for a real-time operating system according to an embodiment of the present application;
fig. 4 is a schematic structural diagram of an electronic device according to an embodiment of the application.
Detailed Description
The present application will be further described in detail below with reference to specific embodiments and with reference to the accompanying drawings, in order to make the objects, technical solutions and advantages of the present application more apparent.
It should be noted that unless otherwise defined, technical or scientific terms used in the embodiments of the present application should be given the ordinary meaning as understood by one of ordinary skill in the art to which the present application belongs. The terms "first," "second," and the like, as used in embodiments of the present application, do not denote any order, quantity, or importance, but rather are used to distinguish one element from another. The word "comprising" or "comprises", and the like, means that elements or items preceding the word are included in the element or item listed after the word and equivalents thereof, but does not exclude other elements or items. The terms "connected" or "connected," and the like, are not limited to physical or mechanical connections, but may include electrical connections, whether direct or indirect. "upper", "lower", "left", "right", etc. are used merely to indicate relative positional relationships, which may also be changed when the absolute position of the object to be described is changed.
As described in the background section, real-time operating systems (Real-Time Operating System, RTOS) play a critical role in modern industrial applications, which are designed to meet stringent time constraint requirements, ensuring that tasks can be completed accurately within a specified time. With the continuous development of industrial automation and intelligence, the application of RTOS is rapidly expanding, and the stability and the safety of the RTOS are particularly important. RTOS is not only responsible for resource allocation and task scheduling, but also directly affects the overall stability and security of the system. Any internal vulnerability can cause the system to be unstable or crash, thereby bringing a security risk.
However, the existing fuzzy test in the vulnerability detection of the real-time operating system ignores the system call relationship, so that the equivalent or invalid system call combination is repeatedly tested, and the test case has hysteresis, thereby causing the problems of wasting computing resources and reducing the time of the fuzzy test.
In the prior art, with the increase of the real-time requirements, the application of a real-time operating system (RTOS) in the fields of industrial control, communication, medical treatment and the like is more and more widespread, the requirements of the application scenes on the real-time performance and the reliability are extremely high, and any real-time defect can cause serious consequences, so that the code logic of the RTOS is also more complex, which not only increases the difficulty of system maintenance, but also increases the risk of error introduction. In actual use, RTOS's such as FreeRTOS (Free Real-Time Operating System, open-sourced Real-time operating system kernel), rt-Linux (patch set and toolkit to add hard Real-time capability to Linux operating system) have reported hundreds of errors. These problems not only affect system performance, but may also cause economic loss and safety accidents. It can be seen that efficient vulnerability detection and quality assurance of RTOS becomes extremely important. With the progress of software engineering technology, the introduction of automated testing and intelligent vulnerability detection tools is also an effective method for improving the quality of RTOS codes. Continuous optimization and quality control of the RTOS to meet the ever-increasing real-time requirements and processing system complexity has become a necessary trend in software development.
In view of this, the embodiment of the application provides a fuzzy test system and a fuzzy test method for a real-time operating system. A fuzzy test system for a real-time operating system, comprising: the fuzzy test module is used for determining a system call relation table, a test task and a test log of the target operating system, generating a test case of a fuzzy test according to the system call relation table, the test task and the test log, and sending the test case to the task execution module; the task execution module is used for executing the test case, determining a test result of the test case and sending the test result to the feedback information collection module; the feedback information collection module is used for collecting test results and sending the test results to the real-time evaluation test module and the fuzzy test module; the real-time evaluation test module is used for carrying out real-time detection and real-time evaluation on the target operating system according to the test result and determining the real-time performance of the target operating system; and the system call relation learning module is used for determining the current system call relation, determining the explicit relation and the implicit relation of the target operating system according to the current system call relation, and updating the system call relation table according to the explicit relation and the implicit relation. The feedback information collection module is used for collecting the test information in real time, so that the fuzzy test system can deeply detect and evaluate various factors influencing the real-time performance of the real-time operation system, and the test cases are updated according to the detected calling relation and program test data, so that more targeted test cases are generated, the generation of invalid and equivalent test cases is reduced, and the time efficiency of the fuzzy test is improved.
As shown in fig. 1, the ambiguity test system includes: the system comprises a fuzzy test module 100, a task execution module 200, a feedback information collection module 300, a real-time evaluation test module 400 and a system call relation learning module 500;
The fuzzy test module 100 is configured to determine a system call relation table, a test task and a test log of a target operating system, generate a test case of a fuzzy test according to the system call relation table, the test task and the test log, and send the test case to the task execution module;
The execution module 200 is configured to execute the test case, determine a test result of the test case, and send the test result to the feedback information collection module;
The feedback information collection module 300 is configured to collect the test result, and send the test result to the real-time evaluation test module and the fuzzy test module;
the real-time evaluation test module 400 is configured to perform real-time detection and real-time evaluation on the target operating system according to the test result, and determine real-time performance of the target operating system;
The system call relation learning module 500 is configured to determine a current system call relation, determine an explicit relation and an implicit relation of the target operating system according to the current system call relation, and update the system call relation table according to the explicit relation and the implicit relation.
In some embodiments, a stable and controllable test environment including the construction of hardware platforms and the configuration of software tools is required for the test team to establish before fuzzing by the fuzzing test system. By simulating the real operating system running environment, i.e., the virtual machine, it is ensured that test cases can run on a system that is close to the production environment. Further, the environment preparation comprises the steps of installing an RTOS, configuring a network and device driving, so that isolation of a test platform is ensured, and potential influences in the test process can be effectively prevented from being spread to an external system.
In some alternative embodiments, as shown in fig. 2, the present system further comprises: a virtual machine management module 600; the virtual machine management module is the core of the system and is responsible for the whole life cycle management of the virtual machine, including but not limited to configuration of the virtual machine environment, initialization of the virtual machine, monitoring of the state of the virtual machine, starting of the virtual machine, automatic restarting and management of the virtual machine in the test process, and the like. The virtual machine is used for starting and managing various test processes in the virtual machine, and providing basic support for fuzzy test.
Further, the virtual machine management module runs on a host machine, wherein the host machine is configured with a high-stability kernel to ensure that virtual machine operations during testing do not adversely affect the host system.
It should be noted that the virtual machine management module provides a highly isolated environment for each test case by using advanced virtualization technology, so as to avoid mutual interference between test activities.
In some optional embodiments, the virtual machine management module is further configured to perform preliminary static analysis on the system call relationship learning module, and determine the system call relationship model; and the virtual machine management module performs information transmission with the fuzzy test module through a remote procedure call technology, so that the issuing of a test command and the collection of a test result are realized.
Furthermore, the virtual machine management module can also instruct the task execution module to execute specific test cases according to a given test plan through a remote procedure call technology, so that various abnormal scenes in the real-time operating system are simulated.
In some optional embodiments, the fuzzy test module is a core for implementing fuzzy test logic and is responsible for key operations such as generation, mutation and minimization of test cases. Through a mutation algorithm, the fuzzy test module can automatically generate a large amount of random test data (namely test cases), so that potential defects or loopholes of the real-time operating system are detected according to the test cases. As shown in fig. 3, the test file (i.e., the test task) is generated according to the system call description file, and the mutation of the test case may be to modify the priority of the call in the test case.
In some alternative embodiments, during the running process of the system, the fuzzy test module may automatically generate test cases according to an existing system call relationship model (a system call relationship table may be determined according to the system call relationship model). By identifying the dependency relationships and the execution sequences among the system calls and generating test cases according to the dependency relationships and the execution sequences among the system calls, more targeted test cases can be generated. The method can not only reduce the generation of invalid and equivalent test cases, but also improve the time efficiency of fuzzy test, so that the test process is more concentrated on a key path which can reveal important loopholes. Wherein, the system call relation learning module comprises: a static learning module and a dynamic learning template; the static learning module is used for carrying out static analysis on the current system call relationship and determining the explicit relationship; the dynamic learning template is used for dynamically analyzing the target operating system and determining the implicit relation.
Further, in a real-time operating system (RTOS) or a system requiring high real-time performance, it is not sufficient to merely detect whether software crashes or execution is abnormal. Real-time, i.e., the ability of a system to complete a given task in a specified or expected time, is also a key indicator for evaluating system performance. Insufficient real-time performance of an operating system may lead to task delays, untimely data processing, and even failure in critical task execution, thereby severely impacting system stability and reliability.
Therefore, after the task execution module receives the test cases generated by the fuzzy test module, specific system call sequences are executed according to the instructions to determine coverage rate information, collapse information, real-time detection information, reproduction information and execution logs, and a series of information is fed back to the feedback information collection module, and the feedback information collection module optimizes the generation of subsequent test cases according to the coverage rate information, the collapse information, the real-time detection information, the reproduction information and the execution logs, namely, the initial test cases are mutated to optimize the test cases. In the process, the virtual machine management module monitors the state of the virtual machine and ensures the stability of the test environment.
For a crash report, if a kernel crashes in the fuzzy test process, the crash report can collect detailed information of the crash, wherein the detailed information comprises crash stack tracking, a system call sequence and possible reproduction steps when the crash occurs; for coverage data, by inserting specific coverage measurement code into the kernel, it is tracked which code is executed during test case execution. These coverage data are useful for understanding the depth and breadth of the test, and also help optimize future test case generation; for log information, the log information comprises memory use condition, CPU use rate and execution time of system call; for the real-time related information, the real-time related information comprises kernel event data of interrupt, scheduling, task execution and resource allocation.
In some optional embodiments, coverage information, crash information, real-time detection information, reproduction information and execution log may also be transmitted to the fuzzy test module, where after the fuzzy test module receives the coverage information, crash information, real-time detection information, reproduction information and execution log, the fuzzy test module may update the test case according to the coverage information, crash information, real-time detection information, reproduction information and execution log, determine the current latest test case, and further perform a fuzzy test on the target operating system (i.e. the real-time operating system RTOS) according to the latest test case, so that accuracy of the test case may be effectively improved.
In some alternative embodiments, the task execution module (also referred to as a task execution module) is designed to be compact and efficient, and it directly executes the input sequence (i.e., a series of predefined or randomly generated system calls) generated by the fuzzy test module. The task execution module is compiled into a binary file through static compiling, and data exchange is carried out by utilizing the shared memory, so that the expenditure of system call is reduced, and the high efficiency of test execution is ensured.
Further, the task execution module adopts a parallel execution mode to execute the task generated from the task mutation module. Each task is assigned a pid (controller) to facilitate its monitoring by the subsequent feedback information gathering module. And maintains a pidList to prevent crashes caused by a received pid conflict. When each task is completed, information to be recorded such as return information thereof is temporarily stored in one infoList. After all tasks are executed, the information in infoList is organized into a feedback information file for use by the feedback information collection module.
In some alternative embodiments, the present test system further comprises: and in response to determining that one test is completed, the fuzzy test module receives the test result and the system call relation table, and updates the test case according to the test result and the system call relation table.
In some alternative embodiments, the system further comprises: the real-time evaluation test module is used for determining a series of indexes related to real-time performance, including but not limited to a critical task related to real-time performance, a maximum delay and the like. In the fuzzy test execution process, the task execution module continuously triggers the system to execute the key task through the automatically generated test case, and meanwhile, the real-time evaluation test module monitors the execution time of the key task and the response time of the system, collects and analyzes real-time performance data, identifies the conditions incapable of meeting the real-time performance requirement, generates a test report according to the data analysis result, and sends the test report to a developer, so that the developer can optimize the calling relation learning model according to the test report, and further optimize the generation of the subsequent test case. The content of the test report includes: software bugs and performance bottlenecks.
In addition, the real-time evaluation detection module is also responsible for monitoring and evaluating various factors which may influence the real-time performance of the system in the test process in real time, such as interrupt processing delay, task scheduling and response time, resource contention and synchronization mechanism problems, system call and kernel operation, and the like. Through fine detection and analysis, the real-time evaluation detection module can timely find and report the problem which possibly negatively affects the real-time performance of the system, and provides important feedback information for the test team, so that the test team can timely adjust the test strategy or optimize the tested system.
In some optional embodiments, the real-time performance evaluation test module acquires the test result in real time, and determines a request response time and an execution request time when the test is performed according to the test case according to the test result; determining a time sum according to the request response time and the execution request time; and in response to determining that the time sum is greater than a preset time threshold, recording a system call when the test case is executed, and generating the test report according to the system call.
In particular, the real-time performance of a task is represented by the response time of a task's request plus the time required to execute the request, the sum not exceeding the maximum allowable time specified by the system. Meanwhile, the time delay is also an important index of real-time performance, and the larger the time delay is, the worse the real-time performance is. Therefore, the module realizes the following functions: recording response time and running time of each system call, judging whether the running time exceeds the maximum time set in the configuration file and whether the delay exceeds the maximum delay, recording the exceeded system call, and generating a real-time problem report.
In some optional embodiments, the fuzzy test system for a real-time operating system further includes a system call relation learning module, and the system call relation learning module performs call relation learning and data updating according to the test execution result of the task execution module and the real-time evaluation data of the real-time evaluation test module. The calling relation learning is performed through a system calling relation learning module, and the system calling relation learning module deeply analyzes the correlation relation between system calling through static and dynamic learning methods. Static learning focuses on the parameter dependencies and explicit relationships of system calls, while dynamic learning focuses on capturing implicit, possibly global or shared variable-affected relationships between system calls through actual test execution. The module aims to accurately construct the relation between system calls through continuous learning and analysis, and feed back the latest relation between the system calls to the fuzzy test module for generating test cases, so that test data can be more intelligently selected or mutated in the process of generating the test cases, and the efficiency of fuzzy test and the deep logic and potential defects of a tested system are effectively improved.
By deeply analyzing factors in the RTOS which may affect the real-time performance, the invention creates and develops a special test strategy for more effectively identifying and evaluating the influence of interrupt processing delay, task scheduling problem, resource contention, synchronization mechanism defect and the like on the real-time performance.
In some embodiments, the static learning module needs to perform static analysis on the existing system call description file of the corresponding system, so as to identify the direct dependency relationship between the system calls. The static learning module first needs to define a data structure to represent system calls, parameters and types according to the system call description language. After the static learning module establishes the preliminary calling relation table, the dynamic learning module takes over (calling relation table) immediately, and further refines the relation table by utilizing the actual fuzzy test running condition. The algorithm logic of the dynamic learning module is based on real-time feedback information, and the relevance among system calls is adjusted and optimized by analyzing coverage rate changes in the test process and checking coverage rate changes among calls running before and after. The display relationship comprises an input-output relationship of the system, and the implicit relationship is that a system variable is called, so that the relationship is generated.
In some embodiments, the fuzzy test system further includes customizable system call descriptors, adapters and drivers, which can improve compatibility of the fuzzy test system with various RTOSs, and ensure that the test method can be widely applied to different real-time operating systems to detect and evaluate real-time performance thereof. By in-depth analyzing the architecture and APIs of the target RTOS, the development team can customize the test environment and tools for each RTOS, ensure that test cases can be executed efficiently on the target system, and trigger and evaluate the real-time performance of the system.
Therefore, the fuzzy test system provided by the application not only can improve the application efficiency and accuracy of the fuzzy test in a real-time operation system, but also can provide a more effective and systematic technical means for the security evaluation of the RTOS, thereby providing a powerful support for guaranteeing the system security and stability in the key application field.
From the above, it can be seen that the ambiguity test system for a real-time operating system provided by the present application includes: the fuzzy test module is used for determining a system call relation table, a test task and a test log of the target operating system, generating a test case of a fuzzy test according to the system call relation table, the test task and the test log, and sending the test case to the task execution module; the task execution module is used for executing the test case, determining a test result of the test case and sending the test result to the feedback information collection module; the feedback information collection module is used for collecting test results and sending the test results to the real-time evaluation test module and the fuzzy test module; the real-time evaluation test module is used for carrying out real-time detection and real-time evaluation on the target operating system according to the test result and determining the real-time performance of the target operating system; and the system call relation learning module is used for determining the current system call relation, determining the explicit relation and the implicit relation of the target operating system according to the current system call relation, and updating the system call relation table according to the explicit relation and the implicit relation. According to the application, the feedback information collection module is used for collecting the test information in real time, so that the fuzzy test system can deeply detect and evaluate various factors influencing the real-time performance of the real-time operation system, and the test cases are updated according to the detected calling relation and program test data, so that more targeted test cases are generated, the generation of invalid and equivalent test cases is reduced, and the time efficiency of the fuzzy test is improved.
It should be noted that, the method of the embodiment of the present application may be performed by a single device, for example, a computer or a server. The method of the embodiment can also be applied to a distributed scene, and is completed by mutually matching a plurality of devices. In the case of such a distributed scenario, one of the devices may perform only one or more steps of the method of an embodiment of the present application, the devices interacting with each other to accomplish the method.
It should be noted that the foregoing describes some embodiments of the present application. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments described above and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
Based on the same inventive concept, the application also provides a fuzzy test method for the real-time operating system, which corresponds to the method of any embodiment.
The fuzzy test module determines a system call relation table, a test task and a test log of a target operating system, generates a test case of a fuzzy test according to the table, the test task and the test log, and sends the test case to the considered execution module;
The task execution module executes the test case, determines a test result of the test case, and sends the test result to the feedback information collection module;
The feedback information collection module is used for collecting the test result and sending the test result to the real-time evaluation test module and the fuzzy test module;
The real-time evaluation test module is used for carrying out real-time detection and real-time evaluation on the target operating system according to the test result and determining the real-time performance of the target operating system;
The system call relation learning module determines a current system call relation, determines an explicit relation and an implicit relation of the target operating system according to the current system call relation, and updates the system call relation table according to the explicit relation and the implicit relation.
For convenience of description, the above devices are described as being functionally divided into various modules, respectively. Of course, the functions of each module may be implemented in the same piece or pieces of software and/or hardware when implementing the present application.
The device of the foregoing embodiment is used for implementing the corresponding fuzzy test method for the real-time operating system in any of the foregoing embodiments, and has the beneficial effects of the corresponding method embodiment, which is not described herein.
Based on the same inventive concept, the application also provides an electronic device corresponding to the method of any embodiment, which comprises a memory, a processor and a computer program stored on the memory and capable of running on the processor, wherein the processor implements the fuzzy test method for the real-time operating system according to any embodiment when executing the program.
Fig. 4 shows a more specific hardware architecture of an electronic device according to this embodiment, where the device may include: a processor 1010, a memory 1020, an input/output interface 1030, a communication interface 1040, and a bus 1050. Wherein processor 1010, memory 1020, input/output interface 1030, and communication interface 1040 implement communication connections therebetween within the device via a bus 1050.
The processor 1010 may be implemented by a general-purpose CPU (Central Processing Unit ), a microprocessor, an Application SPECIFIC INTEGRATED Circuit (ASIC), or one or more integrated circuits, etc. for executing related programs to implement the technical solutions provided in the embodiments of the present disclosure.
The Memory 1020 may be implemented in the form of ROM (Read Only Memory), RAM (Random Access Memory ), static storage, dynamic storage, etc. Memory 1020 may store an operating system and other application programs, and when the embodiments of the present specification are implemented in software or firmware, the associated program code is stored in memory 1020 and executed by processor 1010.
The input/output interface 1030 is used to connect with an input/output module for inputting and outputting information. The input/output module may be configured as a component in a device (not shown) or may be external to the device to provide corresponding functionality. Wherein the input devices may include a keyboard, mouse, touch screen, microphone, various types of sensors, etc., and the output devices may include a display, speaker, vibrator, indicator lights, etc.
Communication interface 1040 is used to connect communication modules (not shown) to enable communication interactions of the present device with other devices. The communication module may implement communication through a wired manner (such as USB, network cable, etc.), or may implement communication through a wireless manner (such as mobile network, WIFI, bluetooth, etc.).
Bus 1050 includes a path for transferring information between components of the device (e.g., processor 1010, memory 1020, input/output interface 1030, and communication interface 1040).
It should be noted that although the above-described device only shows processor 1010, memory 1020, input/output interface 1030, communication interface 1040, and bus 1050, in an implementation, the device may include other components necessary to achieve proper operation. Furthermore, it will be understood by those skilled in the art that the above-described apparatus may include only the components necessary to implement the embodiments of the present description, and not all the components shown in the drawings.
The electronic device of the foregoing embodiment is configured to implement the corresponding fuzzy test method for a real-time operating system in any of the foregoing embodiments, and has the beneficial effects of the corresponding method embodiment, which is not described herein.
Based on the same inventive concept, the present application also provides a non-transitory computer readable storage medium storing computer instructions for causing the computer to perform the fuzzy test method for a real-time operating system according to any of the above embodiments, corresponding to the method of any of the above embodiments.
The computer readable media of the present embodiments, including both permanent and non-permanent, removable and non-removable media, may be used to implement information storage by any method or technology. The information may be computer readable instructions, data structures, modules of a program, or other data. Examples of storage media for a computer include, but are not limited to, phase change memory (PRAM), static Random Access Memory (SRAM), dynamic Random Access Memory (DRAM), other types of Random Access Memory (RAM), read Only Memory (ROM), electrically Erasable Programmable Read Only Memory (EEPROM), flash memory or other memory technology, compact disc read only memory (CD-ROM), digital Versatile Discs (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices, or any other non-transmission medium, which can be used to store information that can be accessed by a computing device.
The storage medium of the foregoing embodiments stores computer instructions for causing the computer to execute the ambiguity test method for a real-time operating system according to any one of the foregoing embodiments, and has the beneficial effects of the corresponding method embodiments, which are not described herein.
Based on the same inventive concept, the present disclosure also provides a computer program product corresponding to the fuzzy test method for a real-time operating system according to any of the above embodiments, which includes computer program instructions. In some embodiments, the computer program instructions may be executable by one or more processors of a computer to cause the computer and/or the processor to perform the fuzzy test method for a real-time operating system. Corresponding to the execution subject corresponding to each step in each embodiment of the fuzzy test method for a real-time operating system, the processor executing the corresponding step may belong to the corresponding execution subject.
The computer program product of the above embodiment is configured to enable the computer and/or the processor to perform the fuzzy test method for a real-time operating system according to any one of the above embodiments, and has the beneficial effects of the corresponding method embodiment, which is not described herein.
Those of ordinary skill in the art will appreciate that: the discussion of any of the embodiments above is merely exemplary and is not intended to suggest that the scope of the application (including the claims) is limited to these examples; the technical features of the above embodiments or in the different embodiments may also be combined within the idea of the application, the steps may be implemented in any order, and there are many other variations of the different aspects of the embodiments of the application as described above, which are not provided in detail for the sake of brevity.
Additionally, well-known power/ground connections to Integrated Circuit (IC) chips and other components may or may not be shown within the provided figures, in order to simplify the illustration and discussion, and so as not to obscure the embodiments of the present application. Furthermore, the devices may be shown in block diagram form in order to avoid obscuring the embodiments of the present application, and also in view of the fact that specifics with respect to implementation of such block diagram devices are highly dependent upon the platform within which the embodiments of the present application are to be implemented (i.e., such specifics should be well within purview of one skilled in the art). Where specific details (e.g., circuits) are set forth in order to describe example embodiments of the application, it should be apparent to one skilled in the art that embodiments of the application can be practiced without, or with variation of, these specific details. Accordingly, the description is to be regarded as illustrative in nature and not as restrictive.
While the application has been described in conjunction with specific embodiments thereof, many alternatives, modifications, and variations of those embodiments will be apparent to those skilled in the art in light of the foregoing description. For example, other memory architectures (e.g., dynamic RAM (DRAM)) may use the embodiments discussed.
The present embodiments are intended to embrace all such alternatives, modifications and variances which fall within the broad scope of the appended claims. Therefore, any omissions, modifications, equivalent substitutions, improvements, and the like, which are within the spirit and principles of the embodiments of the application, are intended to be included within the scope of the application.

Claims (10)

1. A fuzzy test system for a real-time operating system, comprising:
The fuzzy test module is used for determining a system call relation table, a test task and a test log of a target operating system, generating a test case of a fuzzy test according to the system call relation table, the test task and the test log, and sending the test case to the task execution module;
The task execution module is used for executing the test case, determining a test result of the test case and sending the test result to the feedback information collection module;
the feedback information collection module is used for collecting the test result and sending the test result to the real-time evaluation test module and the fuzzy test module;
The real-time evaluation test module is used for carrying out real-time detection and real-time evaluation on the target operating system according to the test result and determining the real-time performance of the target operating system;
and the system call relation learning module is used for determining a current system call relation, determining an explicit relation and an implicit relation of the target operating system according to the current system call relation, and updating the system call relation table according to the explicit relation and the implicit relation.
2. The system of claim 1, wherein the system further comprises: a virtual machine management module;
the virtual machine management module is used for configuring a virtual machine environment, initializing a virtual machine, monitoring the state of the virtual machine, starting the virtual machine and automatically restarting the virtual machine in the test process.
3. The system of claim 2, wherein the system further comprises:
And the virtual machine management module performs information transmission with the fuzzy test module through a remote procedure call technology.
4. The system of claim 1, wherein the system calls a relationship learning module comprising: a static learning module and a dynamic learning template;
The static learning module is used for carrying out static analysis on the current system call relationship and determining the explicit relationship;
The dynamic learning template is used for dynamically analyzing the target operating system and determining the implicit relation.
5. The system of claim 1, wherein the test results comprise: coverage information, crash information, real-time detection information, reproduction information, and execution log;
The system further comprises:
the task execution module executes the test case, determines the coverage rate information, the crash information, the real-time detection information, the reproduction information and the execution log, and sends the coverage rate information, the crash information, the real-time detection information, the reproduction information and the execution log to the feedback information collection module.
6. The system of claim 5, wherein the system further comprises:
And in response to determining that one test is completed, the fuzzy test module receives the test result and the system call relation table, and updates the test case according to the test result and the system call relation table.
7. The system of claim 5, wherein the system further comprises:
The real-time performance evaluation test module performs data analysis on the real-time performance, generates a test report according to the data analysis result, and sends the test report to a developer; wherein the test report includes: software bugs and performance bottlenecks.
8. The system of claim 7, wherein the system further comprises:
the real-time evaluation test module acquires the test result in real time, and determines the request response time and the execution request time when the test is performed according to the test case according to the test result;
determining a time sum according to the request response time and the execution request time;
And in response to determining that the time sum is greater than a preset time threshold, recording a system call when the test case is executed, and generating the test report according to the system call.
9. The system of claim 6, wherein the ambiguity test module further comprises:
And according to the test result and the system call relation table, mutating the test case, and carrying out a new round of fuzzy test according to the mutated test case.
10. The utility model provides a fuzzy test method for real-time operation system, is used for fuzzy test system, fuzzy test system includes fuzzy test module, task execution module, feedback information collection module, real-time evaluation test module and system call relation learning module, its characterized in that, the method includes:
the fuzzy test module determines a system call relation table, a test task and a test log of a target operating system, generates a test case of a fuzzy test according to the table, the test task and the test log, and sends the test case to the considered execution module;
The task execution module executes the test case, determines a test result of the test case, and sends the test result to the feedback information collection module;
The feedback information collection module is used for collecting the test result and sending the test result to the real-time evaluation test module and the fuzzy test module;
The real-time evaluation test module is used for carrying out real-time detection and real-time evaluation on the target operating system according to the test result and determining the real-time performance of the target operating system;
The system call relation learning module determines a current system call relation, determines an explicit relation and an implicit relation of the target operating system according to the current system call relation, and updates the system call relation table according to the explicit relation and the implicit relation.
CN202410336632.9A 2024-03-22 2024-03-22 Fuzzy test system and method for real-time operation system Pending CN118193383A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410336632.9A CN118193383A (en) 2024-03-22 2024-03-22 Fuzzy test system and method for real-time operation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410336632.9A CN118193383A (en) 2024-03-22 2024-03-22 Fuzzy test system and method for real-time operation system

Publications (1)

Publication Number Publication Date
CN118193383A true CN118193383A (en) 2024-06-14

Family

ID=91413910

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410336632.9A Pending CN118193383A (en) 2024-03-22 2024-03-22 Fuzzy test system and method for real-time operation system

Country Status (1)

Country Link
CN (1) CN118193383A (en)

Similar Documents

Publication Publication Date Title
CN108197004B (en) IOS application method time consumption and view loading time consumption monitoring method and system
CN107608609B (en) Event object sending method and device
CN114297666B (en) Cloud deployment automation vulnerability mining system based on fuzzy test
TWI684916B (en) Function selection method and server
CN107179982B (en) Cross-process debugging method and device
CN112131315A (en) Database synchronization method and device under multi-task parallel development
JP2016511484A (en) Operating system support for contracts
US10185647B2 (en) Debugging remote vertex code on test machine
CN110750453A (en) HTML 5-based intelligent mobile terminal testing method, system, server and storage medium
CN114116455A (en) Clustering fuzzy test method and device for open-source basic component library
CN111625446B (en) Software testing method and device, computer readable medium and electronic equipment
CN114840410A (en) Test analysis method and device, computer equipment and storage medium
CN115656788B (en) Chip testing system, method, equipment and storage medium
CN118193383A (en) Fuzzy test system and method for real-time operation system
CN112231231B (en) Cloud service debugging method, system and device
CN115202712A (en) Application management method, application subscription method and related equipment
CN112612474A (en) Product transplanting method and device, storage medium and electronic equipment
CN112579460A (en) Multi-level debugging method based on multi-core embedded system
US20230350392A1 (en) Method and system for seamless transition of runtime system from controller device to digitalization platform
CN114327648B (en) Driving debugging method and device, electronic equipment and storage medium
KR101761732B1 (en) Apparatus and method for detecting error of application source code
EP4328681A1 (en) Method and system for managing technical installation during occurrence of error state in a controller
CN112559090B (en) Method and related device for collecting performance events during running of application program
CN117806720A (en) Operating system switching method, device, equipment and storage medium
EP4095770A1 (en) Computer-automated processing with rule-supplemented machine learning

Legal Events

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