KR19990004963A - How to print debug messages at electronic exchange - Google Patents

How to print debug messages at electronic exchange Download PDF

Info

Publication number
KR19990004963A
KR19990004963A KR1019970029124A KR19970029124A KR19990004963A KR 19990004963 A KR19990004963 A KR 19990004963A KR 1019970029124 A KR1019970029124 A KR 1019970029124A KR 19970029124 A KR19970029124 A KR 19970029124A KR 19990004963 A KR19990004963 A KR 19990004963A
Authority
KR
South Korea
Prior art keywords
message
program
debugging
output control
signal
Prior art date
Application number
KR1019970029124A
Other languages
Korean (ko)
Inventor
이훈희
Original Assignee
유기범
대우통신 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 유기범, 대우통신 주식회사 filed Critical 유기범
Priority to KR1019970029124A priority Critical patent/KR19990004963A/en
Publication of KR19990004963A publication Critical patent/KR19990004963A/en

Links

Abstract

본 발명은 전전자 교환기에서 디버깅 메시지를 출력하는 방법에 관한 것이다.The present invention relates to a method for outputting a debugging message in an electronic switchboard.

이러한 본 발명의 방법은 전전자 교환시스템에서 운용되는 응용 프로그램에서 오류가 발생되면 공유 라이브러리를 호출하는 단계; 호출된 라이브러리가 응용 프로그램으로부터 파라메터를 전달받아 매시지를 재구성하여 출력제어블록에 시그널을 송부하는 단계; 출력제어블록이 시그널을 수신하면 콘솔에 해당 디버깅 메시지를 출력하는 단계를 포함하여 전전자 교환기에서 응용되는 프로그램에 오류가 발생되면 해당 프로그램의 오류위치 및 원인을 표시하여 디버깅을 용이하게 한다.Such a method of the present invention comprises the steps of calling a shared library when an error occurs in an application running in the electronic switching system; The called library receives parameters from the application program and reconfigures the message to send a signal to the output control block; When the output control block receives a signal, it outputs the corresponding debugging message to the console. When an error occurs in the program applied to the electronic switchboard, the error location and cause of the corresponding program are displayed to facilitate debugging.

Description

전전자 교환기에서 디버그 메시지 출력방법 (Methodofprintingdebugmessages in ATM exchange)Method of printing debug messages in ATM exchange (Methodofprintingdebugmessages in ATM exchange)

본 발명은 전전자 교환기에서 디버깅 메시지를 출력하는 방법에 관한 것이다.The present invention relates to a method for outputting a debugging message in an electronic switchboard.

일반적으로, 교환시스템과 같은 실시간 내장형(embeded) 시스템은 범용 운영체계를 사용하는 호스트 컴퓨터에서 편집하고, 목적(target) 시스템의 실행코드를 생산하는 교차 컴파일러를 이용하여 컴파일한 다음 목적 시스템에 다운 로딩하여 실행시킨다. 이러한 교차 개발방법을 사용하는 이유는 목적 시스템에서는 메모리 또는 디스크 등과 같은 시스템 자원이 한정되어 있으므로 필요한 응용 프로그램을 충분히 내장하여 사용할 수 없지만 호스트 컴퓨터는 그러한 자원 및 응용 프로그램을 충분히 활용할 수 있기 때문이다. 그러므로 프로그래머는 편집, 컴파일하는 호스트 컴퓨터에서 목적 시스템에 다운 로딩할 프로그램을 고급언어 수준으로 디버깅하는 것이 보다 편리하고 생산성이 향상될 수 있다.In general, real-time embedded systems, such as switching systems, are edited on a host computer using a general-purpose operating system, compiled using a cross-compiler that produces the target system's executable code, and then downloaded to the target system. Run it. The reason for using this cross-development method is that the target system has limited system resources such as memory or disk, so that necessary applications cannot be built-in enough, but the host computer can fully utilize such resources and applications. Therefore, it can be more convenient and more productive for programmers to debug the high-level language of the program to download to the target system from the host computer editing and compiling.

그러나 전전자 교환시스템과 같이 대용량의 복잡한 분산 실시간 시스템은 수많은 프로세스들로 이루어진 병행 프로그램으로 이루어지며, 수행 환경도 범용 운용체계가 아닌 핵심되는 분산 실시간 기능을 구현한 특수 운영체계를 자체 개발하여 사용하는 경우가 많으므로 범용 운용체계 환경을 기준으로 개발한 상용 디버깅 도구를 사용하기에는 부적합할 뿐만 아니라 병행 프로그램을 효과적으로 디버깅할 수 있도록 지원하는 운영체계의 기능도 미흡하다.However, large-scale, complex, distributed real-time systems, such as electronic exchange systems, consist of parallel programs consisting of numerous processes.In addition, the operating environment is not a general-purpose operating system, but a special operating system that implements core distributed real-time functions. In many cases, it is not suitable to use commercial debugging tools developed based on general-purpose operating system environment, and it also lacks the function of the operating system that enables effective debugging of parallel programs.

즉, 전전자 교환기에서 특히 ATM교환기와 같은 대형 시스템의 경우 많은 종류의 소프트웨어 프로그램, 많은 양의 소프트웨어가 존재하게 된다. 이러한 소프트웨어는 설계 단계에서부터 최종 검증 시험단계까지 많은 시험 단계를 거쳐 검증되고, 이 과정에서 프로그램의 오류등이 수정된다. 이러한 프로그램의 오류수정은 문제점의 형태가 명확할수록 쉽게 수정이 가능하게 되나 검증과정이 반복됨에 따라 문제점의 형태는 애매하게 되고, 불특정 주기의 수정하기 어려운 문제들만이 잔존하게 된다.In other words, many types of software programs and large amounts of software exist in an electronic switching system, especially in a large system such as an ATM switching system. This software is verified through a number of test steps from the design stage to the final validation test stage, where the errors in the program are corrected. Error correction of such a program can be easily corrected as the problem type is clear, but as the verification process is repeated, the problem type becomes ambiguous, and only problems that are difficult to correct in an unspecified period remain.

종래의 기술에서는 이러한 문제점 발생시 프로세서의 디버그 포트를 이용하여 프로그램 수행중 출력되는 프린트 메시지를 보고서 판단할 수밖에 없는데, 이러한 방법은 디버그 포트가 가지고 있는 위험성에 따른 문제점이 있다. 즉, 도 1은 전전자 교환기에서 종래에 디버그 메시지를 프린팅하는 흐름을 도시한 흐름도인데, 정상 프로그램을 수행하는 중에 오류가 검출되면 프린트문을 통해 디버그 포트로 메시지를 출력하였다.In the prior art, when such a problem occurs, the print port outputted during program execution can only be determined by using the debug port of the processor. However, this method has a problem due to the danger that the debug port has. That is, FIG. 1 is a flowchart illustrating a conventional printing of a debug message in an electronic switchboard. When an error is detected during a normal program, a message is output to a debug port through a print statement.

따라서 본 발명의 목적은 소프트웨어 설계자가 지정한 디버깅 지점을 시스템 메시지를 이용하여 출력하여 디버그 포트를 이용하지 않고도 시스템 운용상태에서 소프트웨어 문제점을 추적하여 원인을 파악하도록 할 수 있는 전전자 교환기에서 디버그 메시지 출력방법을 제공하는데 있다.Accordingly, an object of the present invention is to output a debugging point specified by the software designer using a system message to output the debug message in the electronic switchboard which can identify the cause by tracking the software problem in the system operating state without using the debug port. To provide.

상기와 같은 목적을 달성하기 위하여 본 발명은, 전전자 교환시스템에서 운용되는 응용 프로그램에서 오류가 발생되면 공유 라이브러리를 호출하는 단계; 호출된 라이브러리가 응용 프로그램으로부터 파라메터를 전달받아 매시지를 재구성하여 출력제어블록에 시그널을 송부하는 단계; 출력제어블록이 시그널을 수신하면 콘솔에 해당 디버깅 메시지를 출력하는 단계를 포함하여 전전자 교환기에서 응용되는 프로그램에 오류가 발생되면 해당 프로그램의 오류위치 및 원인을 표시하여 디버깅을 용이하게 하는 것을 특징으로 한다.In order to achieve the above object, the present invention comprises the steps of: calling a shared library when an error occurs in the application running in the electronic switching system; The called library receives parameters from the application program and reconfigures the message to send a signal to the output control block; When the output control block receives a signal, it outputs the corresponding debugging message to the console. When an error occurs in the program applied to the electronic switchboard, the error location and cause of the corresponding program are displayed to facilitate debugging. do.

도 1은 전전자 교환기에서 종래에 디버그 메시지를 프린팅하는 흐름을 도시한 흐름도,1 is a flowchart illustrating a flow of conventionally printing debug messages in an electronic switchgear;

도 2는 본 발명에 따라 전전자 교환기에서 디버그 메시지를 출력하는 방법을 도시한 흐름도,2 is a flowchart illustrating a method of outputting a debug message in an electronic switch according to the present invention;

도 3은 본 발명에 따른 신호전달 흐름을 도시한 개략도,3 is a schematic diagram illustrating a signaling flow in accordance with the present invention;

도 4는 본 발명에 따른 디버그 메시지의 예,4 is an example of a debug message in accordance with the present invention;

도 5는 본 발명에 따른 디버그 메시지의 프린트 예이다.5 is a printing example of a debug message according to the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 자세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명에 따라 전전자 교환기에서 디버그 메시지를 출력하는 방법을 도시한 흐름도이고, 도 3은 본 발명에 따른 신호전달 흐름을 도시한 개략도다.2 is a flowchart illustrating a method of outputting a debug message in an electronic switch according to the present invention, and FIG. 3 is a schematic diagram illustrating a signal transmission flow according to the present invention.

도 2를 참조하면, 본 발명에 따른 디버깅 메시지 출력방법은 단계 201 내지 단계205로 이루어진다. 전전자 교환시스템에서 운용되기 위한 프로그램이 정상적으로 수행되고 있다(201)가 단계 202에서 오류가 발생되면 단계203에서 공유 라이브러리를 호출하고, 단계204에서는 공유 라이브러리의 해당 루틴이 출력제어블록에 시그널을 송부한다. 단계205에서는 시그널을 수신한 출력제어블록이 콘솔에 디버그 메시지를 출력한다.Referring to Figure 2, the debugging message output method according to the present invention consists of steps 201 to 205. The program for operating in the electronic switching system is normally executed (201), if an error occurs in step 202, the shared library is called in step 203, and in step 204, the corresponding routine of the shared library sends a signal to the output control block. do. In step 205, the output control block receiving the signal outputs a debug message to the console.

이러한 본 발명의 개념을 좀더 이해하기 쉽게 도 3을 참조하여 설명하면, 응용프로그램은 공유 라이브러리의 해당 루틴에 파라메터를 호출하여 파라메터를 전달하고, 공유메모리는 이에 따라 시그널을 출력 제어블록에 전달한다. 이때 공유 라이브러리의 해당 루틴은 처리결과를 응용 프로그램에 통보하고, 출력제어 블록은 시그널에 따라 메시지를 콘솔에 프린팅한다. 즉, 각 응용 프로그램 수행중 디버깅 메시지 처리 루틴을 받으면 이는 실제 프로그램이 있는 공유 라이브러리를 호출한다. 공유 라이브러리는 파라미터 입력을 받아서 메시지를 재구성하고, 시그널을 통해서 출력제어 블록으로 메시지 출력을 요청한다. 출력 제어블록은 이를 받아서 운용자 콘솔로 메시지를 출력한다.Referring to FIG. 3 to more easily understand the concept of the present invention, an application program calls a parameter to a corresponding routine of a shared library to transfer the parameter, and the shared memory transfers a signal to the output control block accordingly. At this time, the corresponding routine of the shared library notifies the application program of the processing result, and the output control block prints a message to the console according to the signal. That is, when each application receives a debugging message handling routine while it is running, it calls the shared library where the actual program resides. The shared library takes parameter inputs, reconstructs the message, and requests the message output to the output control block via the signal. The output control block receives this and outputs a message to the operator console.

도 4는 본 발명에 따른 디버그 메시지의 코드예이고, 도 5는 본 발명에 따른 디버그 메시지의 프린트 예이다.4 is a code example of a debug message according to the present invention, and FIG. 5 is a print example of a debug message according to the present invention.

도 4를 참조하면, 디버그 메시지의 분류를 위한 코드의 체계를 살펴보면, 첫 번째 D는 디버그 메시지임을 표시하는 식별자로 다른 메시지와 구분하기 위해 사용하고, 12는 블록명칭(block name)으로서 어떤 블록에서 오류가 발생하였는지를 보여주는 식별자이다. 블록명칭은 00∼99까지 등록 가능하며 소프트웨어 관리자에 의해 블록당 한 개씩이 지정된다.Referring to FIG. 4, when looking at the code structure for classifying a debug message, the first D is an identifier indicating that the debug message is used to distinguish it from other messages, and 12 is a block name. Identifier that indicates whether an error occurred. Block names can be registered from 00 to 99. One block is designated by the software manager.

도 4에서 34는 프로그램 소스(source)의 모듈 명칭(module name)으로서, 00 내지 99까지 100개의 값이 등록 가능하며, 소프트웨어 설계자에 의해 임의로 지정 가능하다. 소프트웨어 설계자는 이 번호에 의해 프로그램의 어느 부분에 오류가 발생하였는지를 추정할 수 있다.In FIG. 4, 34 is a module name of a program source, and 100 values from 00 to 99 can be registered and can be arbitrarily designated by a software designer. This number allows the software designer to estimate where in the program the error occurred.

도 5는 본 발명에 의해 출력된 디버그 메시지의 출력 예이다.5 is an example of output of a debug message output by the present invention.

도 5를 참조하면, D7230이라는 코드가 발생되었을 경우, 프로그램 소스의 블록 명칭(BLOCK NAME), 모듈 명칭(MODULE NAME), 소스 번호(SOURCE_NO), 에러원인(REASON) 등이 표시되는데, 블록명칭은 코드번호 72로 지정되는 프로그램 소스 블록의 명칭이고, 모듈명칭은 코드번호 30으로 저정되는 프로그램 소스 모듈의 명칭이다.Referring to FIG. 5, when a code D7230 is generated, a block name (BLOCK NAME), a module name (MODULE NAME), a source number (SOURCE_NO), an error cause (REASON), and the like of a program source are displayed. A program source block designated by code number 72 is a module name, and a module name is a name of a program source module stored at code number 30. FIG.

이상에서 살펴본 바와 같이, 본 발명에 의하면 교환기 소프트웨어 개발중 혹은 운용중 설계자의 오류를 운용자 출력 단말을 통해 쉽게 출력하도록 하고, 디버깅을 위해 별도의 프린트문을 소스에 삽입하지 않아도 된다. 그리고 소프트웨어 문제 발생시 이의 원인, 장애 부위 등을 정확히 판단하여 이에 대한 상세한 정보를 제공하므로써 설계자가 문제점을 쉽게 추적하도록 하며 수정을 용이하게 하는 효과가 있다.As described above, according to the present invention, the error of the designer during the development or operation of the switch software can be easily output through the operator output terminal, and a separate print statement is not inserted into the source for debugging. And when a software problem occurs, it accurately determines the cause of the problem and the problem site, and provides detailed information on the problem so that the designer can easily trace the problem and facilitate the correction.

Claims (3)

전전자 교환시스템에서 운용되는 응용 프로그램에서 오류가 발생되면 공유 라이브러리를 호출하는 단계;Invoking the shared library when an error occurs in an application running in the electronic switching system; 호출된 라이브러리가 응용 프로그램으로부터 파라메터를 전달받아 매시지를 재구성하여 출력제어블록에 시그널을 송부하는 단계;The called library receives parameters from the application program and reconfigures the message to send a signal to the output control block; 출력제어블록이 시그널을 수신하면 콘솔에 해당 디버깅 메시지를 출력하는 단계를 포함하여If the output control block receives a signal, including the step of outputting the corresponding debugging message to the console 전전자 교환기에서 응용되는 프로그램에 오류가 발생되면 해당 프로그램의 오류위치 및 원인을 표시하여 디버깅을 용이하게 하는 전전자 교환기에서 디버그 메시지 출력방법.If an error occurs in a program that is applied to the electronic exchange, the debug message output method of the electronic exchange will display the error location and cause of the corresponding program to facilitate debugging. 제1항에 있어서, 상기 디버깅 메시지는 프로그램소스의 모듈 명칭, 블록 명칭, 에러원인 등을 포함하는 것을 특징으로 하는 전전자 교환기에서 디버그 메시지 출력방법.The method of claim 1, wherein the debugging message includes a module name of a program source, a block name, an error cause, and the like. 제1항에 있어서, 상기 디버깅 메시지를 분류하기 위한 코드가 식별자 D와 두자리 수의 블록명칭, 두자리수의 모듈명칭으로 이루어진 것을 특징으로 하는 전전자 교환기에서 디버그 메시지 출력방법.The method of claim 1, wherein the code for classifying the debugging message comprises an identifier D, a two-digit block name, and a two-digit module name.
KR1019970029124A 1997-06-30 1997-06-30 How to print debug messages at electronic exchange KR19990004963A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970029124A KR19990004963A (en) 1997-06-30 1997-06-30 How to print debug messages at electronic exchange

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970029124A KR19990004963A (en) 1997-06-30 1997-06-30 How to print debug messages at electronic exchange

Publications (1)

Publication Number Publication Date
KR19990004963A true KR19990004963A (en) 1999-01-25

Family

ID=65987285

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970029124A KR19990004963A (en) 1997-06-30 1997-06-30 How to print debug messages at electronic exchange

Country Status (1)

Country Link
KR (1) KR19990004963A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010073374A (en) * 2000-01-14 2001-08-01 박종섭 Apparatus and method using shared object for carrying out instruction

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010073374A (en) * 2000-01-14 2001-08-01 박종섭 Apparatus and method using shared object for carrying out instruction

Similar Documents

Publication Publication Date Title
US5630049A (en) Method and apparatus for testing software on a computer network
CA2292123C (en) Method and system for modifying executable code to add additional functionality
US5528753A (en) System and method for enabling stripped object software monitoring in a computer system
US6539501B1 (en) Method, system, and program for logging statements to monitor execution of a program
US4819234A (en) Operating system debugger
US7647584B2 (en) Automation and isolation of software component testing
JP2000305809A (en) Memory access analyzing method, memory access tracing device, and computer-readable recording medium
EP0430182B1 (en) Method for assembly language programming potential error detection sensing apparent inconsistency with a previous operation
WO1998034170A1 (en) Method and apparatus for allowing continued operation for overflow and invalid data
US20080127061A1 (en) Method and system for editing code
CN113742215A (en) Method and system for automatically configuring and calling test tool to perform test analysis
US20020129336A1 (en) Automatic symbol table selection in a multi-cell environment
KR19990004963A (en) How to print debug messages at electronic exchange
CN115756935A (en) Abnormal fault positioning method, device and equipment of embedded software system
EP0417916B1 (en) Procedure state descriptor system for digital data processors
EP0801348A1 (en) Method of monitoring the operation of a computer
JPH10133914A (en) Computer system and device input/output simulator
US20040015876A1 (en) Method and structure of implementing a safe pointer
US20060101415A1 (en) Service logic program tracing
AU651682B2 (en) Improved system and method for detecting cross-domain instruction calls and data references especiallly adapted for code interface jacketing in a multi-code execution and debugging system within a multi-architecture environment
EP1164488A1 (en) Remote debugging in an embedded system enviroment
CN112527660B (en) Static detection method and device for codes
KR100310291B1 (en) Method for simulating parallel program on single system
US6530044B1 (en) System and disassembling test data and method
US6654879B1 (en) Method and apparatus for analyzing code for out-of-range data involving base and seed tables/lists

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application