• Title/Summary/Keyword: Software debugging

Search Result 155, Processing Time 0.019 seconds

Visualized Execution Analyzer for the Java Class File (자바 클래스 파일에 대한 시각화 실행 분석기)

  • Ko, Kwang-Man
    • The KIPS Transactions:PartA
    • /
    • v.11A no.5
    • /
    • pp.319-324
    • /
    • 2004
  • The Java language is rapidly being adopted in the Internet. The distributed applications and their application range are being expanded beyond just a programing language and developed Into software applications. A variety of researches are going on with regard to the Java Virtual Machine runtime environment and methods of analyzing the Java class files and utilizing the information for applications. A class file is a converted file that is executable by the Java virtual machine. Analysis on the class file structure and the runtime processes will be convenient in arranging the decompilers and debugging the source programs. This paper is about the runtime process analyzer that presents the runtime processes, including class files, more visually. The content of a class file will be easily accessed and expressed as in a graphic user interface. The information in the class file displayed is divided into Constant_Pool, Class_file, Interface, Field, Method and Attribute with information on method area, operand stack and local variables expressed visually.

Design and Implementation of Educational Embedded Network System (교육용 임베디드 네트워크 실습 장비의 설계 및 구현)

  • Kim, Dae-Hee;Chung, Joong-Soo;Park, Hee-Jung;Jung, Kwang-Wook
    • Journal of the Korea Society of Computer and Information
    • /
    • v.14 no.10
    • /
    • pp.23-29
    • /
    • 2009
  • This paper presents the development of embedded network educational system. This is an educational equipment which enables user to have training over Network Configuration and Embedded network programming practice on Internet environment. The network education system is developed on embedded environment. based on using ethernet interface. On the development environment. PAX255 VLSI chip is used for the processor, the ADSv1.2 for debugging, uC/OS276 for RTOS. The system software was developed using C language. The ping program provided an educational environment for the student to compile and load it to run after doing practice of demonstration behavior. Afterwards programming procedure starts the step-by-step training just like the demonstration function. In other words, programming method how to design the procedure of ARP operation and ICMP operation is explained.

A Remote Trace Debugger for Multi-Task Programs in Qplus-T Embedded Internet System (Qplus-T내장형 인터넷 시스템에서 멀티 태스크 프로그램을 위한 원격 트레이스 디버거)

  • 이광용;김흥남
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.9 no.2
    • /
    • pp.166-181
    • /
    • 2003
  • With the rapid growth of Internet, many devices such as Web TVs, PDAs and Web phones, begin to be directly connected to the Internet. These devices need real-time operating systems (RTOS) to support complex real-time applications running on them. Development of such real-time applications called embedded internet applications, is difficult due to the lack of adequate tools, especially debuggers. In this paper we present a new tracepoint debugging tool for the Qplus-T RTOS embedded system, which facilitates the instrumentations of the real-time software applications with timing trace-points. Compared with traditional breakpoint debugger, this trace-point debugger provides the ability to dynamically collect and record application data for on-line examination and for further off-line analysis. And, the trace-points can also provide the means for assigning new values to the running application's variables, without neither halting its execution nor interfering with its natural execution flow. Our trace-point debugger provides a highly efficient method for adding numerous monitoring trace-points within a real time target application such as Qplus-T internet applications, utilizing these trace-points to monitor and to analyze the application's behavior while it is running. And also, our trace debugger is different from previous one in that we can specify and detect the timing violations using its RTL (Real-Time Logic) trace experiments.

Detecting Shared Resource Usage Errors with Global Predicates (광역조건식에 의한 공유자원 접근오류 검색)

  • Lee, Eun-Jeong;Yun, Gi-Jung
    • Journal of KIISE:Software and Applications
    • /
    • v.26 no.12
    • /
    • pp.1445-1454
    • /
    • 1999
  • 광역 조건식의 계산은 분산 프로그램의 수행을 테스트 또는 디버깅하기 위한 방법으로 활 발히 연구되고 있다. 이제까지 주로 연구된 광역조건식은 AND 또는 OR 광역 조건식 등이 있는데, 특히 AND 광역 조건식은 분산 프로그램의 동시적 조건을 표현하는데 유용하여 효율적인 검색 알고리즘이 활발히 연구되었다. 분산프로그램의 수행오류로서 공유자원의 배타적 접근조건은 가장 중요하고 일반적인 경우라 할 수 있다. 본 논문에서는 XOR 연산을 이용하여 공유자원 프로그램의 오류 검색을 위한 광역조건식을 기술하는 방식에 대해 제안하였다. XOR 연산을 이용한 광역 조건식은 연산자 중 많아야 하나의 지역조건식만이 참일 때 전체 조건식이 참이 되는데 이러한 성질은 여러 프로세스 중 한번에 하나만이 공유자원에 배타적으로 접근할 수 있는 조건을 표현하는데 매우 유용하다. n 개의 프로세스로 이루어진 분산프로그램에서 한개의 공유자원에 대한 배타적 접근 조건을 기술하기 위해서 AND로 연결된 광역조건식을 이용하면 O(n2)개의 광역 조건식이 필요한데 반해 XOR 연산으로는 하나의 조건식으로 나타낼 수 있다. 더구나 XOR 연산을 이용한 광역조건식은 최근 소개된 겹치는 구간의 개념을 활용하면 매우 간단하게 검색할 수 있다. 본 논문에서는 겹치는 구간을 찾는 검색 알고리즘을 소개하고 증명하였다.Abstract Detecting global predicates is an useful tool for debugging and testing a distributed program. Past research has considered several restricted forms of predicates, including conjunctive or disjunctive form of predicates. Especially, conjunctive predicates have attracted main attention not only because they are useful to describe simultaneous conditions in a distributed program, but also because it is possible to find algorithms to evaluate them within reasonable time bound. Detecting errors in accessing shared resources are the most popular and important constraints of distributed programs. In this paper, we introduced an exclusive OR predicates as a model of global predicates to describe shared resource conditions in distributed programs. An exclusive OR predicate holds only when at most one operand is true, which is useful to describe mutual exclusion conditions of distributed programs where only one process should be allowed to access the shared resource at a time. One exclusive OR predicate is enough to describe mutual exclusion condition of n processes with one shared resource, while it takes O(n2) conjunctive predicates. Moreover, exclusive OR condition is easily detectable using the concept of overlapping intervals introduced by Venkatesan and Dathan. An off-line algorithm for evaluating exclusive OR global predicates is presented with a correctness proof.

Design of Programming Failure Feedback System Based on Control Flow of Test Case to Support Programming Training (프로그래밍 훈련 지원을 위한 테스트케이스의 제어흐름에 기반한 프로그래밍 실패 피드백 시스템 설계)

  • Lee, Sunghee;Kim, Deok Yeop;Seo, Kang Bok;Lee, Woo Jin
    • KIPS Transactions on Software and Data Engineering
    • /
    • v.8 no.8
    • /
    • pp.317-322
    • /
    • 2019
  • Programming judge systems for programming training support are typically built on the Web, where the examiners uploads a programming problem, which the student reads and submits an answer to the problem. The judge system executes the submitted answer of source code to provide feedback such as pass, failure, and error messages. Students who receive the feedback except for the pass continues debugging the source code until they are judged to pass. We developed an online judge system to support programming training and analyzed answers submitted by the students and found that many of the students who were not judged to pass that test did not know exactly where they were wrong but continued to solve the problem. The current judge system generally feeds runtime error messages back to students. However, with only runtime error message, it is difficult for student who train to find the wrong part of the answer. Therefore, in this paper, we propose a system that provides the feedback of programming failure by analyzing the control flow of the test cases used in the source code submitted by the student. The proposed system helps students find the wrong parts more quickly by feeding back the paths where faults in the control flow may exist. In addition, we show that this system is applicable to the answer source code that the actual student submitted.