CN111858325A - Task-level real-time debugging device and method based on hawk wing brightness operating system - Google Patents

Task-level real-time debugging device and method based on hawk wing brightness operating system Download PDF

Info

Publication number
CN111858325A
CN111858325A CN202010669881.1A CN202010669881A CN111858325A CN 111858325 A CN111858325 A CN 111858325A CN 202010669881 A CN202010669881 A CN 202010669881A CN 111858325 A CN111858325 A CN 111858325A
Authority
CN
China
Prior art keywords
debugging
debugged
debugger
command
agent unit
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
CN202010669881.1A
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 Research Institute of Mechanical and Electrical Technology
Original Assignee
Beijing Research Institute of Mechanical and Electrical Technology
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 Research Institute of Mechanical and Electrical Technology filed Critical Beijing Research Institute of Mechanical and Electrical Technology
Priority to CN202010669881.1A priority Critical patent/CN111858325A/en
Publication of CN111858325A publication Critical patent/CN111858325A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3644Software debugging by instrumenting at runtime

Abstract

The invention relates to a task-level real-time debugging device and method based on a Haiyingjianghui operating system, belongs to the technical field of embedded operating systems, and solves the problems of low development speed and poor development quality caused by the fact that the existing embedded operating system can only adopt a serial port printing output mode to debug an application program. The debugging device comprises a host machine and a target machine, wherein the host machine comprises a debugger, the target machine comprises a hawk wingglow operating system, a debugging agent unit and a debugged unit, and the debugged unit comprises a plurality of debugged programs; the debugging agent unit and the debugged programs are all operated on the Haiying winged operating system, and the debugging agent unit is used for receiving and processing debugging commands sent by the debugger so as to control the operation of the debugged programs. The remote debugging of the task level of the Haiying wing glow operating system is realized, and the efficiency and the quality of software development are improved.

Description

Task-level real-time debugging device and method based on hawk wing brightness operating system
Technical Field
The invention relates to the technical field of embedded operating systems, in particular to a task-level real-time debugging device and method based on a hawk wing brightness operating system.
Background
Debugging is an essential link in the software development process, correctness verification of grammar rules and logic structures is required, the check of the grammar rules is generally completed in a code compiling stage, the correctness check of the logic structures is required to be dynamically assisted by a debugging tool, and the logic verification is performed by setting breakpoints in a program, printing trace information and the like.
The embedded operating system and the general desktop operating system have obvious difference on debugging environment. A debugger and a debugged program of the general desktop system run in the same desktop system, and the debugger controls and accesses the debugged program through the debugger specially provided by the desktop operating system. Different from a desktop operating system, an embedded operating system adopts a remote debugging mode, namely a debugger runs in a general desktop operating system, a debugged program runs in the embedded operating system, and the debugger controls and accesses the debugged program running on a target machine system through a debugging agent unit at a target machine end.
At present, most of research on debugging agent units is based on vxworks, linux, rtems and other systems, no research is available on a debugging system of a domestic Haiying winged operating system, and most of developers applying the system can only debug application programs by adopting a serial port printing output mode, so that the development period and the development cost are greatly increased, and the development speed and the development quality of an embedded operating system are reduced.
Disclosure of Invention
In view of the foregoing analysis, embodiments of the present invention provide a task-level real-time debugging apparatus and method based on a hawk-wing-brightness operating system, so as to solve the problems of slow development speed and poor development quality caused by that the existing embedded operating system can only adopt a serial port printout mode to debug an application program.
On one hand, the embodiment of the invention provides a task-level real-time debugging device based on a hawk wing brightness operating system, which comprises a host machine and a target machine, wherein the host machine comprises a debugger, the target machine comprises a hawk wing brightness operating system, a debugging agent unit and a debugged unit, and the debugged unit comprises a plurality of debugged programs;
the debugger is used for sending a debugging command to a debugging agent unit of the target machine and receiving the execution state of the debugged program fed back by the debugging agent unit;
the debugging agent unit and the debugged programs are operated on a Haiying winged operating system, wherein the debugging agent unit is used for receiving and processing debugging commands sent by a debugger so as to control the operation of the debugged programs;
the debugging agent unit is further configured to obtain an execution state of the debuggee program, and display the obtained execution state of the debuggee program by using the debugging agent command attribute.
Further, the network address and port of the debug agent unit are consistent with the debugger.
Further, the debugging agent unit comprises a hook function module;
the debugging agent unit is further configured to obtain an execution state of the debuggee program, including: and based on the hook function module, calling a hook function to suspend the debugged program and acquire the execution state of the debugged program.
Further, the debugging agent unit is used for receiving and processing a debugging command sent by a debugger so as to control the running of the debuggee program, and includes:
the debugging agent unit receives a debugging command sent by a debugger, judges whether the debugging command conforms to an RSP protocol or not, if not, discards the debugging command, and if so, cuts in to an executing process according to the debugging command;
judging whether a debugged program corresponding to the debugging command is in the executing process, if so, responding to and processing the debugging command; if not, responding and processing the debugging command after starting the debugged program;
after the debugging command is processed, the debugging agent unit hangs up the debugged program and acquires the execution state of the debugged program by calling the hook function, checks the execution state of the debugged program by using the attribute of the debugging agent command, and simultaneously feeds back the execution state of the debugged program to the debugger;
Logging off the debugged program and finishing debugging.
Further, the debugger and the debugging agent unit communicate with each other in an Ethernet mode.
On the other hand, the embodiment of the invention provides a task-level real-time debugging method based on a hawk wing brightness operating system, which comprises the following steps:
setting up a task-level real-time debugging device, wherein the task-level real-time debugging device comprises a host machine and a target machine, the host machine comprises a debugger, the target machine comprises a hawk wingglow operating system, a debugging agent unit and a debugged unit, and the debugged unit comprises a plurality of debugged programs; the debugger is used for sending a debugging command to a debugging agent unit of the target machine and receiving the execution state of the debugged program fed back by the debugging agent unit; the debugging agent unit and the debugged programs are operated on a Haiying winged operating system, wherein the debugging agent unit is used for receiving and processing debugging commands sent by a debugger so as to control the operation of the debugged programs;
acquiring a network address and a port of a debugging agent unit;
and performing task-level debugging on the Haiying wing brightness operating system based on the debugging agent unit for acquiring the network address and the port.
Further, the network address and port of the debug agent unit are consistent with the debugger.
Further, the debugging agent unit is further configured to obtain an execution state of the debuggee program, including calling a hook function to suspend the debuggee program and obtain the execution state of the debuggee program.
Further, the debugging agent is used for receiving and processing a debugging command sent by a debugger so as to control the running of the debuggee program, and comprises:
the debugging agent receives a debugging command sent by a debugger, judges whether the debugging command conforms to an RSP protocol or not, if not, discards the debugging command, and if so, cuts in to an executing process according to the debugging command;
judging whether a debugged program corresponding to the debugging command is in the executing process, if so, responding to and processing the debugging command; if not, responding and processing the debugging command after starting the debugged program;
after the debugging command is processed, the debugging agent hangs up the debugged program and acquires the execution state of the debugged program by calling the hook function, checks the execution state of the debugged program by using the attribute of the debugging agent command, and simultaneously feeds back the execution state of the debugged program to the debugger;
Logging off the debugged program and finishing debugging.
Further, the debugger and the debugging agent unit communicate with each other in an Ethernet mode.
Compared with the prior art, the invention can realize at least one of the following beneficial effects:
1. a task-level real-time debugging device based on a Haiyinghei operating system sends a debugging command through a debugger of a host machine, a debugging agent unit on a target machine receives and processes the debugging command to control the running of a debugged program, and finally, debugging information is fed back to the debugger.
2. The debugger, the debugged program and the debugging agent unit are connected by setting the network addresses and ports of the debugging agent unit and the debugger, so that the debugging agent unit serves as an intermediary between the debugger and the debugged program, can receive debugging commands sent by the debugger and feed debugging information back to the debugger, is simple and easy to implement, is easy to implement, and provides support and basis for task-level real-time debugging of a later-stage embedded operating system.
3. The Ethernet is used for realizing the communication between the debugger on the host machine and the debugging agent unit on the target machine, the reliability is higher, the transmission speed is high, and meanwhile, the development cost of software can be saved.
4. A task-level real-time debugging method based on a Haiying winglet operating system sends a debugging command through a debugger of a host machine, a debugging agent unit on a target machine receives and processes the debugging command to control the running of a debugged program, and finally, debugging information is fed back to the debugger.
In the invention, the technical schemes can be combined with each other to realize more preferable combination schemes. Additional features and advantages of the invention will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. The objectives and other advantages of the invention will be realized and attained by the structure particularly pointed out in the written description and drawings.
Drawings
The drawings are only for purposes of illustrating particular embodiments and are not to be construed as limiting the invention, wherein like reference numerals are used to designate like parts throughout.
FIG. 1 is a diagram of an embodiment of a task-level real-time debugging apparatus based on a hawk-wing-glow operating system;
FIG. 2 is a diagram of the internal structure of a debug agent unit in one embodiment;
FIG. 3 is a flowchart of another embodiment of a task-level real-time debugging method based on the Haiyinghei operating system;
reference numerals:
100-a debugger; 200-sea eagle winged operating system; 300-debug agent unit; 400-debuggee unit.
Detailed Description
The accompanying drawings, which are incorporated in and constitute a part of this application, illustrate preferred embodiments of the invention and together with the description, serve to explain the principles of the invention and not to limit the scope of the invention.
At present, no research is carried out on a debugging system of a domestic Haiying winged operating system, and most developers using the system can only debug application programs by adopting a serial port printing output mode, so that for the developers, the development period and the development cost are greatly increased, and the development speed and the development quality of an embedded operating system are reduced. The debugging agent unit on the target machine receives and processes the debugging command to control the running of the debugged program, and finally after the debugging agent unit executes a certain debugging command, the debugged program is hung through a hook function and the execution state of the tested program is acquired and fed back to the debugger on the host machine, so that the remote debugging of the embedded operating system is realized, the software development period is shortened, and the software development quality is improved.
A specific embodiment of the present invention discloses a task-level real-time debugging apparatus based on a hawk winglet operating system, as shown in fig. 1, including a host machine and a target machine, where the host machine includes a debugger 100, and the target machine includes a hawk winglet operating system 200, a debugging agent unit 300, and a debugged unit 400, where the debugged unit includes a plurality of debugged programs. The debugger is used for sending a debugging command to the debugging agent unit of the target machine and receiving the execution state of the debugged program fed back by the debugging agent unit. The debugging agent unit and the debuggee programs are all operated on the Haiyingwinging operating system, wherein the debugging agent unit is used for receiving and processing debugging commands sent by the debugger so as to control the operation of the debuggee programs. The debugging agent unit is also used for acquiring the execution state of the debuggee program and displaying the acquired execution state of the debuggee program by using the attribute of the debugging agent command. The debugging agent command is obtained by writing program code registration by a developer and is mainly used for checking the state of a debugged program through a debugging agent unit by the developer. Through the debugging agent command, developers can check the execution state of the debugged program in real time, and the embedded operating system is beneficial to real-time debugging at the task level.
In implementation, the host may further include a desktop computer, a desktop operating system, and a project source file unit, where the desktop computer provides support for running the desktop operating system and the debugger, and the project source file unit is used to store the source code of the debugged application program. The target machine further comprises an embedded device, wherein the hawk wing glow operating system runs on the embedded device, and the debugging agent unit and the debugged unit run on the hawk wing glow operating system.
Compared with the prior art, according to the task-level real-time debugging device based on the eagle wing brightness operating system, the debugging command is sent by the debugger of the host, the debugging agent unit on the target machine receives and processes the debugging command to control the running of the debugged program, and finally the debugging information is fed back to the debugger.
Preferably, the network address and port of the debug agent unit are consistent with the debugger.
Preferably, the debug agent unit includes a hook function module; the debugging agent unit is further configured to obtain an execution state of the debuggee program, including calling a hook function based on the hook function module to suspend the debuggee program and obtain the execution state of the debuggee program.
Specifically, the hook function belongs to a message processing mechanism, and can intercept all message events and hang the debugged program into the system. The debugging agent unit in the application can suspend the debugged program by setting and calling the hook function, acquire the execution state of the debugged program and feed back the execution state of the debugged program to the debugger in real time.
Preferably, the debugger and the debug agent unit communicate with each other via an ethernet.
Specifically, before debugging, the network addresses and ports of the debug agent unit and the debugger need to be set to be consistent, so that the debugger and the debug agent unit directly perform data communication through the ethernet. The debugging agent unit can suspend the debugged program which finishes executing the debugging command and acquire the execution state of the debugged program by constructing the hook function and calling the hook function. The function of the debugging agent command is mainly used for displaying the execution state of the debugged program acquired by calling the hook function, so that a developer can conveniently check the execution state. The Ethernet is used for communication between the debugger on the host machine and the debugging agent unit on the target machine, so that the reliability is high, the transmission speed is high, and the cost of software development can be saved.
The debugging command sent by the debugger comprises single step execution, continuous operation, register information reading, register information modifying, designated register setting, designated memory address value reading, memory checking, breakpoint inserting, breakpoint deleting and the like. The debugger and the debugged program are connected with the debugging proxy unit by setting the network addresses and ports of the debugging proxy unit and the debugger, so that the debugging proxy unit is used as an intermediary between the debugger and the debugged program, can receive debugging commands sent by the debugger and feed debugging information back to the debugger, is simple and easy to implement, is easy to implement, and provides support and basis for task-level real-time debugging of a later-stage embedded operating system.
Preferably, the debugging agent unit is configured to receive and process a debugging command sent by a debugger to control the running of the debuggee program, and includes:
the debugging agent unit receives a debugging command sent by a debugger, judges whether the debugging command conforms to an RSP protocol or not, discards the debugging command if the debugging command does not conform to the RSP protocol, and cuts into an executing process according to the debugging command if the debugging command does conform to the RSP protocol;
judging whether the debugged program corresponding to the debugging command is in the executing process, if so, directly responding and processing the debugging command by using the corresponding debugged program in the executing process; if not, starting the debugged program, responding and processing the debugging command;
After the debugging command is processed, the debugging agent unit hangs up the debugged program in a hook function calling mode and acquires the execution state of the debugged program, checks the execution state of the debugged program by using the attribute of the debugging agent command, and simultaneously feeds back the execution state of the debugged program to the debugger;
logging off the debugged program and finishing debugging.
Specifically, as shown in fig. 2, the debug agent unit includes a data transceiver module, an initialization module, and a breakpoint exception handling module. The data receiving and sending module comprises a data receiving unit and a data sending unit, wherein the data receiving unit is used for receiving debugging signals sent by a debugger on the host machine, and the data sending unit is used for feeding back relevant information of a debugged program to the debugger. The initialization module comprises a communication path initialization unit and a registration breakpoint exception handling unit, wherein the communication path initialization unit is used for calling initialization operation of a serial port or a network to complete initialization of a communication path between the debugger and the debugging agent unit, and the registration breakpoint exception handling unit is used for registering an instruction related to a breakpoint into the debugging agent unit. The breakpoint exception handling module comprises a breakpoint management unit, an RSP protocol checking unit and a command processing unit, wherein the breakpoint management unit is used for recovering an original instruction replaced by a breakpoint instruction, and avoiding that a debugged program runs continuously to get into the same breakpoint exception, the RSP protocol checking unit is mainly used for judging whether a debugging command sent by a debugger conforms to the RSP protocol, if not, the debugging command is directly discarded, and if so, the command processing unit responds to and processes the debugging command.
When the task-level debugging is carried out, firstly, a debugger sends a debugging command to the debugging agent unit, wherein the debugging command sent by the debugger comprises single step execution, continuous operation, register information reading, memory checking, breakpoint insertion or breakpoint deletion. After receiving a debugging command sent by a debugger, a data receiving unit in the debugging agent unit sends the debugging command to an RSP protocol checking unit, the RSP protocol checking unit judges whether the debugging command accords with an RSP protocol, if the debugging command does not accord with the RSP protocol, the debugging command is discarded, if the debugging command accords with the RSP protocol, the RSP protocol checking unit sends the debugging command to a command processing unit, the command processing unit is enabled to be switched into an executing process according to the debugging command, whether a debugged program corresponding to the debugging command is in the executing process is judged, if yes, the corresponding debugging command is responded and processed, and if not, the debugged program is started, and then the corresponding debugging command is responded and processed. After the debugging command is processed and executed, the debugging agent unit calls the hook function to suspend the debugged program which finishes executing the debugging command and acquire the execution state of the debugged program, checks the execution state of the debugged program by using the attribute of the debugging agent command, and simultaneously feeds back the execution state of the debugged program to the debugger through the data sending module. And after debugging is finished, logging out the debugged program and finishing debugging.
The debugger and the debugging agent unit are mutually matched to realize the task-level real-time debugging of the Haiying wing brightness operating system, the method is simple and easy to implement, and the quality of application software is improved.
Another embodiment of the present invention discloses a task-level real-time debugging method based on the hawk-wing-brightness operating system, as shown in fig. 3. The method comprises the following steps:
step S1, a task-level real-time debugging device is set up, the task-level real-time debugging device comprises a host machine and a target machine, the host machine comprises a debugger, and the target machine comprises a hawk wingglow operating system, a debugging agent unit and a debugged unit, wherein the debugged unit comprises a plurality of debugged programs, and the debugger is used for sending debugging commands to the debugging agent unit of the target machine and receiving the execution state of the debugged programs fed back by the debugging agent unit; the debugging agent unit and the debuggee programs are all operated on the Haiyingwinging operating system, wherein the debugging agent unit is used for receiving and processing debugging commands sent by the debugger so as to control the operation of the debuggee programs.
And step S2, acquiring the network address and the port of the debugging agent unit.
And step S3, performing task-level debugging of the Haiyinghei operating system based on the debugging agent unit for acquiring the network address and the port.
According to the task-level real-time debugging method based on the Haiying winglet operating system, a debugger of a host machine is used for sending a debugging command, a debugging agent unit on a target machine receives and processes the debugging command to control the running of a debugged program, and finally debugging information is fed back to the debugger.
Preferably, the network address and port of the debug agent unit are consistent with the debugger.
Preferably, the debugging agent unit is further configured to acquire the execution state of the debuggee program, including calling a hook function to suspend the debuggee program and acquiring the execution state of the debuggee program.
The debugger and the debugged program are connected with the debugging proxy unit by setting the network addresses and ports of the debugging proxy unit and the debugger, so that the debugging proxy unit is used as an intermediary between the debugger and the debugged program, can receive debugging commands sent by the debugger and feed debugging information back to the debugger, is simple and easy to implement, is easy to implement, and provides support and basis for task-level real-time debugging of a later-stage embedded operating system.
Preferably, the debugging agent is used for receiving and processing a debugging command sent by the debugger so as to control the running of the debuggee program, and comprises:
the debugging agent receives a debugging command sent by the debugger, judges whether the debugging command conforms to the RSP protocol or not, discards the debugging command if the debugging command does not conform to the RSP protocol, and cuts into an executing process according to the debugging command if the debugging command does conform to the RSP protocol;
judging whether a debugged program corresponding to the debugging command is in the executing process, if so, responding to and processing the debugging command; if not, responding and processing the debugging command after starting the debugged program;
after the debugging command is processed, the debugging agent hangs up the debugged program in a hook function calling mode and acquires the execution state of the debugged program, checks the execution state of the debugged program by using the command attribute of the debugging agent and feeds the execution state of the debugged program back to the debugger;
logging off the debugged program and finishing debugging.
The debugger and the debugging agent unit are mutually matched to realize the task-level real-time debugging of the Haiying wing brightness operating system, the method is simple and easy to implement, and the quality of application software is improved.
Preferably, the debugger and the debug agent unit communicate with each other via an ethernet. Specifically, the Ethernet is used for communication between the debugger on the host machine and the debugging agent unit on the target machine, so that the reliability is high, the transmission speed is high, and meanwhile, the cost can be saved.
Those skilled in the art will appreciate that all or part of the flow of the method implementing the above embodiments may be implemented by a computer program, which is stored in a computer readable storage medium, to instruct related hardware. The computer readable storage medium is a magnetic disk, an optical disk, a read-only memory or a random access memory.
The above description is only for the preferred embodiment of the present invention, but the scope of the present invention is not limited thereto, and any changes or substitutions that can be easily conceived by those skilled in the art within the technical scope of the present invention are included in the scope of the present invention.

Claims (10)

1. A task-level real-time debugging device based on a hawk wingglow operating system is characterized by comprising a host machine and a target machine, wherein the host machine comprises a debugger, and the target machine comprises the hawk wingglow operating system, a debugging agent unit and a debugged unit, wherein the debugged unit comprises a plurality of debugged programs;
the debugger is used for sending a debugging command to a debugging agent unit of the target machine and receiving the execution state of the debugged program fed back by the debugging agent unit;
The debugging agent unit and the debugged programs are operated on a Haiying winged operating system, wherein the debugging agent unit is used for receiving and processing debugging commands sent by a debugger so as to control the operation of the debugged programs;
the debugging agent unit is further configured to obtain an execution state of the debuggee program, and display the obtained execution state of the debuggee program by using a debugging agent command attribute of the debugging agent unit.
2. The hawk winglet operating system-based task-level real-time debugging device of claim 1, wherein the network address and port of the debugging agent unit are consistent with those of a debugger.
3. The hawk winglet operating system-based task-level real-time debugging device of claim 2, wherein the debugging agent unit comprises a hook function module;
the debugging agent unit is further configured to obtain an execution state of the debuggee program, including: and based on the hook function module, calling a hook function to suspend the debugged program and acquire the execution state of the debugged program.
4. The hawk wingglow operating system-based task-level real-time debugging device according to claim 3, wherein the debugging agent unit is configured to receive and process a debugging command sent by a debugger to control the running of a debugged program, and includes:
The debugging agent unit receives a debugging command sent by a debugger, judges whether the debugging command conforms to an RSP protocol or not, if not, discards the debugging command, and if so, cuts in to an executing process according to the debugging command;
judging whether a debugged program corresponding to the debugging command is in the executing process, if so, responding to and processing the debugging command; if not, the debugged program is started and then the debugging command is responded and processed;
after the debugging command is processed, the debugging agent unit hangs up the debugged program and acquires the execution state of the debugged program by calling the hook function, checks the execution state of the debugged program by using the attribute of the debugging agent command, and simultaneously feeds back the execution state of the debugged program to the debugger;
logging off the debugged program and finishing debugging.
5. The task-level real-time debugging device based on Haiyingwinglet operating system according to any one of claims 1-4, wherein the debugger and the debugging agent unit communicate with each other via Ethernet.
6. A task-level real-time debugging method based on a sea eagle wing glow operating system is characterized by comprising the following steps:
Setting up a task-level real-time debugging device, wherein the task-level real-time debugging device comprises a host machine and a target machine, the host machine comprises a debugger, the target machine comprises a hawk wingglow operating system, a debugging agent unit and a debugged unit, and the debugged unit comprises a plurality of debugged programs; the debugger is used for sending a debugging command to a debugging agent unit of the target machine and receiving the execution state of the debugged program fed back by the debugging agent unit; the debugging agent unit and the debugged programs are operated on a Haiying winged operating system, wherein the debugging agent unit is used for receiving and processing debugging commands sent by a debugger so as to control the operation of the debugged programs;
acquiring a network address and a port of a debugging agent unit;
and performing task-level debugging on the Haiying wing brightness operating system based on the debugging agent unit for acquiring the network address and the port.
7. The method as claimed in claim 6, wherein the network address and port of the debugging agent unit are consistent with those of the debugger.
8. The hawk wingglow-based task-level real-time debugging method of claim 7, wherein the debugging agent unit is further configured to obtain the execution state of the debuggee program, including calling a hook function to suspend the debuggee program and obtain the execution state of the debuggee program.
9. The method for task-level real-time debugging of hawk wingglow-based operating system according to claim 8, wherein the debugging agent is configured to receive and process a debugging command sent by a debugger to control the running of a debuggee program, and comprises:
the debugging agent receives a debugging command sent by a debugger, judges whether the debugging command conforms to an RSP protocol or not, if not, discards the debugging command, and if so, cuts in to an executing process according to the debugging command;
judging whether a debugged program corresponding to the debugging command is in the executing process, if so, responding to and processing the debugging command; if not, responding and processing the debugging command after starting the debugged program;
after the debugging command is processed, the debugging agent hangs up the debugged program and acquires the execution state of the debugged program by calling the hook function, checks the execution state of the debugged program by using the attribute of the debugging agent command, and simultaneously feeds back the execution state of the debugged program to the debugger;
logging off the debugged program and finishing debugging.
10. The task-level real-time debugging method based on Haiyingwinglet operating system according to any one of claims 6-9, wherein the debugger and the debugging agent unit communicate with each other via Ethernet.
CN202010669881.1A 2020-07-13 2020-07-13 Task-level real-time debugging device and method based on hawk wing brightness operating system Pending CN111858325A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010669881.1A CN111858325A (en) 2020-07-13 2020-07-13 Task-level real-time debugging device and method based on hawk wing brightness operating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010669881.1A CN111858325A (en) 2020-07-13 2020-07-13 Task-level real-time debugging device and method based on hawk wing brightness operating system

Publications (1)

Publication Number Publication Date
CN111858325A true CN111858325A (en) 2020-10-30

Family

ID=72984756

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010669881.1A Pending CN111858325A (en) 2020-07-13 2020-07-13 Task-level real-time debugging device and method based on hawk wing brightness operating system

Country Status (1)

Country Link
CN (1) CN111858325A (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101504626A (en) * 2009-03-06 2009-08-12 中兴通讯股份有限公司 Debugging control implementing method and system
GB201122290D0 (en) * 2010-12-23 2012-02-01 Intel Corp no title
CN103729288A (en) * 2013-11-01 2014-04-16 华中科技大学 Application program debugging method under embedded multi-core environment
WO2014082577A1 (en) * 2012-11-29 2014-06-05 腾讯科技(深圳)有限公司 Remote debugging method and system
CN107870855A (en) * 2016-09-27 2018-04-03 北京计算机技术及应用研究所 Debugging system based on the bright embedded OS in day

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101504626A (en) * 2009-03-06 2009-08-12 中兴通讯股份有限公司 Debugging control implementing method and system
GB201122290D0 (en) * 2010-12-23 2012-02-01 Intel Corp no title
WO2014082577A1 (en) * 2012-11-29 2014-06-05 腾讯科技(深圳)有限公司 Remote debugging method and system
CN103729288A (en) * 2013-11-01 2014-04-16 华中科技大学 Application program debugging method under embedded multi-core environment
CN107870855A (en) * 2016-09-27 2018-04-03 北京计算机技术及应用研究所 Debugging system based on the bright embedded OS in day

Similar Documents

Publication Publication Date Title
US5630049A (en) Method and apparatus for testing software on a computer network
EP3352083B1 (en) Debugging method, multi-core processor, and debugging equipment
US5933639A (en) System and method for debugging distributed programs
EP2724235B1 (en) N-way runtime interoperative debugging
US8930912B2 (en) Method and system for performing software verification
US8589881B2 (en) Web-based software debugging apparatus and method for remote debugging
US20130007720A1 (en) Dynamic Isolated Debugging via Class Instrumentation
CN109726135B (en) Multi-core debugging method and device and computer readable storage medium
CN103729288A (en) Application program debugging method under embedded multi-core environment
CN100444127C (en) System and method for testing software
CN110688313B (en) Fault injection method for software testing under VxWorks operating system
CN100370432C (en) Automated testing apparatus and method for embedded software
CN111708662B (en) Debugging method and device
CN113960391A (en) Abnormal power failure testing device and method for storage medium
CN113032246B (en) SSD firmware operation method and device, readable storage medium and electronic equipment
US11409636B2 (en) Processor including debug unit and debug system
TW202242642A (en) Method for real-time firmware configuration and apparatus for debugging
CN110704315B (en) Fault injection device for embedded software test
CN111858325A (en) Task-level real-time debugging device and method based on hawk wing brightness operating system
CN112285542B (en) Debugging and testing method for FPGA external interface logic
US10534682B2 (en) Method and diagnostic apparatus for performing diagnostic operations upon a target apparatus using transferred state and emulated operation of a transaction master
CN114168259A (en) Virtual chip and method for externally arranging serial port in virtual chip
CN111625450B (en) Dead halt debugging method and device based on SCP processor
CN113688055B (en) Single DSP equipment testing arrangement based on DSS
TWI794997B (en) Method and apparatus and computer program product for debugging solid state disk devices

Legal Events

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