• Title/Summary/Keyword: Debugger

Search Result 59, Processing Time 0.023 seconds

An Implementation of JTAG API to Perform Dynamic Program Analysis for Embedded Systems (임베디드 시스템 동적 프로그램 분석을 위한 JTAG API 구현)

  • Kim, Hyung Chan;Park, Il Hwan
    • KIPS Transactions on Computer and Communication Systems
    • /
    • v.3 no.2
    • /
    • pp.31-42
    • /
    • 2014
  • Debugger systems are necessary to apply dynamic program analysis when evaluating security properties of embedded system software. It may be possible to make the use of software-based debugger and/or DBI framework if target devices support general purpose operating systems, however, constraints on applicability as well as environmental transparency might be incurred thereby hindering overall analyzability. Analysis with JTAG (IEEE 1149.1) debugging devices can overcome these difficulties in that no change would be involved in terms of internal software environment. In that sense, JTAG API can facilitate to practically perform dynamic program analysis for evaluating security properties of target device software. In this paper, we introduce an implementation of JTAG API to enable analysis of ARM core based embedded systems. The API function set includes the categories of debugger and target device controls: debugging environment and operation. To verify API applicability, we also provide example analysis tool implementations: our JTAG API could be used to build kernel function fuzzing and live memory forensics modules.

Multicast Routing Debugger (MRD) - A System to Monitor the Status of Multicast Network (멀티캐스트 네트워크를 모니터하는 시스템의 설계 및 구현)

  • Lee, Jae-Young;Choi, Woo-Hyung;Park, Heon-Kyu;Chon, Kil-Nam
    • Proceedings of the Korea Information Processing Society Conference
    • /
    • 2001.10b
    • /
    • pp.1355-1358
    • /
    • 2001
  • IP Multicast can efficiently provide enormous bandwidth savings by enabling sources to send a single copy of a message to multiple recipients who explicitly want to receive the information. But due to the complexity of IP multicast and its fundamental differences from unicast, there are not very many tools available fer monitoring and debugging multicast networks, and only a few experts understand the tools that do exist. This thesis proposes a Multicast Routing Debugger (MRD) system that monitor the status of a multicast network. This system is aimed to multicast-related faults detection. In thesis, first, we define the set of information that should be monitored. Second, the method is developed to take out such information from multicast routers. Third, MRD system is prototyped to collect, process information from heterogeneous routers on a multicast network and to display the various status of the network comprehensively. The prototype of MRD system is implemented and deployed. We perform experiments with several scenarios. Experimental results show we can detect various problems as information that we define is monitored. The MRD system is simple to use, web-based and intuitive tool that can monitor the status of a specific multicast network.

  • PDF

On-Chip Debug Architecture for Multicore Processor

  • Park, Hyeong-Bae;Xu, Jing-Zhe;Kim, Kil-Hyun;Park, Ju-Sung
    • ETRI Journal
    • /
    • v.34 no.1
    • /
    • pp.44-54
    • /
    • 2012
  • Because of the intrinsic lack of internal-system observability and controllability in highly integrated multicore processors, very restricted access is allowed for the debugging of erroneous chip behavior. Therefore, the building of an efficient debug function is an important consideration in the design of multicore processors. In this paper, we propose a flexible on-chip debug architecture that embeds a special logic supporting the debug functionality in the multicore processor. It is designed to support run-stop-type debug functions that can halt and control the execution of the multicore processor at breakpoint events and inspect the possible causes of any errors. The debug architecture consists of the following three functional components: the core debug support block, the multicore debug support block, and the debug interface and control block. By embedding this debug infrastructure, the embedded processor cores within the multicore processor can be debugged simultaneously as well as independently. The debug control is performed by employing a JTAG-based scanning operation. We apply this on-chip debug architecture to build a debugger for a prototype multicore processor and demonstrate the validity and scalability of our approach.

Development of a Remote Multi-Task Debugger for Qplus-T RTOS (Qplus-T RTOS를 위한 원격 멀티 태스크 디버거의 개발)

  • 이광용;김흥남
    • Journal of KIISE:Computing Practices and Letters
    • /
    • v.9 no.4
    • /
    • pp.393-409
    • /
    • 2003
  • In this paper, we present a multi-task debugging environment for Qplus-T embedded-system such as internet information appliances. We will propose the structure and functions of a remote multi-task debugging environment supporting environment effective ross-development. And, we are going enhance the communication architecture between the host and target system to provide more efficient cross-development environment. The remote development toolset called Q+Esto consists to several independent support tools: an interactive shell, a remote debugger, a resource monitor, a target manager and a debug agent. Excepting a debug agent, all these support tools reside on the host systems. Using the remote multi-task debugger on the host, the developer can spawn and debug tasks on the target run-time system. It can also be attached to already-running tasks spawned from the application or from interactive shell. Application code can be viewed as C/C++ source, or as assembly-level code. It incorporates a variety of display windows for source, registers, local/global variables, stack frame, memory, event traces and so on. The target manager implements common functions that are shared by Q+Esto tools, e.g., the host-target communication, object file loading, and management of target-resident host tool´s memory pool and target system´s symbol-table, and so on. These functions are called OPEn C APIs and they greatly improve the extensibility of the Q+Esto Toolset. The Q+Esto target manager is responsible for communicating between host and target system. Also, there exist a counterpart on the target system communicating with the host target manager, which is called debug agent. Debug agent is a daemon task on real-time operating systems in the target system. It gets debugging requests from the host tools including debugger via target manager, interprets the requests, executes them and sends the results to the host.

운영체계 소프트웨어

  • Gang, Seok-Yeol
    • ETRI Journal
    • /
    • v.8 no.2
    • /
    • pp.83-91
    • /
    • 1986
  • 컴퓨터의 많은 응용에 따라 분산처리, 실시간처리, 고장감내처리 등에 대해 운영체계의 연구가 많이 되어왔다. 본고는 한국형 전전자교환기인 TDX-1 시스팀에서 사용된 TDXOS의 실현과 그 특성에 관해 서술하였다. TDXOS는 고실시간처리(Hard real time processing)와 분산처리, 컴퓨터의 이중화, 과부하제어, 실시간 디버거(Debugger) 들을 실현하였으며 뱅크(Bank)시스팀 형태의 메모리 관리기법이 사용되었다. 특히, 소형 마이크로프로세서(Z80) 및 어셈블리 언어에 최적의 동작 환경을 제공하도록 설계되어 실시간의 효율이 최대화되었다.

  • PDF

Implementation of Open Source Embedded Software Educational Integrated Development Environment Using Portable Game Console (휴대용 게임기를 이용한 공개 SW 기반 임베디드 소프트웨어 교육 IDE 환경 구성)

  • Lee, MinSuk
    • IEMEK Journal of Embedded Systems and Applications
    • /
    • v.7 no.2
    • /
    • pp.113-120
    • /
    • 2012
  • In this paper we describe the integrated development environment for embedded software education. Our environment uses a cheap and widely available portable game console, Nintendo DS-lite. We have integrated open source development tools, and have implemented download shell, remote debugger. The results are all open source, and were used for university class for real embedded software education.

Enhancing the Debugger Performance for CDSP16V2 Processor (CDSP16V2 프로세서용 디버거 성능 향상)

  • Nam, Pyung-Yul;Kim, Seon-Wook
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2011.06b
    • /
    • pp.325-327
    • /
    • 2011
  • 온보드 대상의 디버깅은 타깃머신의 처리 속도 및 통신 속도의 제약으로 인해 발생하는 지연시간 때문에 개발 기간이 길어지게 된다. 이런 문제를 해결하고자 소프트웨어 에뮬레이터를 상위 성능의 머신에서 구동하고 온보드로는 인스트럭션과 그에 필요한 데이터의 전송만 진행하여 온보드로부터의 메모리 전송을 최소화함으로써 지연시간을 감소시키는 효과를 얻을 수 있다. 본 논문에서는 Zaram사(社)의 CDSP16V2 프로세서를 위한 디버거 성능 개선 방법 및 구현에 대하여 서술한다.

Implementation of SDL Symbol Debugger based on CHILL (CHILL 기반의 SDL 심벌 디버거의 구현)

  • 최원혁;김성재;김승호
    • Proceedings of the Korean Information Science Society Conference
    • /
    • 2000.04a
    • /
    • pp.570-572
    • /
    • 2000
  • 현재의 소프트웨어 개발은 구현 중심에서 설계 중심으로 변하고 있다. 설계 중심의 개발은 구현 프로그램의 자동생성을 바탕으로 설계 수준에서 정형화된 명세를 검증함으로써 설계와 구현 사이의 불일치를 없앨 수 있고, 유지보수가 효율적이다. 본 논문에서는 설계 중심의 개발 방법을 구축하기 위한 SDL과 CHILL 의 통합된 개발환경에서 디버깅 환경을 제공하기 위한 도구를 제안하고, 정합, 추적, 제어 언터페이스를 통하여 실행 주인CHILL 프로그램의 수행을 시스템 구현의 전단계 설계 문서인 SDL/GR의 심벌로 디버깅하는 SDL 심벌 디버거를 구현하였다.

  • PDF

Building of Integrated Increment Interpretation System Based on Action Equations (작용 식 기반 통합 점진 해석 시스템 구축)

  • Han, Jung-Ran;Choi, Sung
    • The KIPS Transactions:PartA
    • /
    • v.11A no.3
    • /
    • pp.149-156
    • /
    • 2004
  • As software is large and sophisticate, in order to increase the productivity and efficiency of programs in programming development environments, it is necessary to support the integrated system that offers user interface integrated editing, compiling, debugging, and running steps. The key tool in such environments is an incremental translation. In this paper, in order to increase the productivity and reusability of software, the goal is to construct the integrated incremental interpretation system that supports friendly user interface with editor, debugger, and incremental interpreter. We define the new object-oriented language, IMPLO(IMPerative Language with Object) using EBNF notation, and construct the integrated incremental interpretation system using incremental interpreter of the language. To do so, we extend attribute grammars for specifying static semantics and present new action equations to describe the dynamic semantics. We executed the incremental interpretation by using analyzing the dynamic semantics and then implemented integrated incremental interpretation system with editor and debugger in C, Lex and Yacc using X windows on SUN. We obtain about 50% speedups in case of incremental execution time for example programs.

A Efficient Debugging Method for Java Programs (자바 프로그램을 위한 효율적인 디버깅 방법)

  • 고훈준;유원희
    • Proceedings of the Korea Society for Industrial Systems Conference
    • /
    • 2002.06a
    • /
    • pp.170-176
    • /
    • 2002
  • Java language is a representative object-oriented language that is used at the various platform and fields. A structure of java language is simpler than traditional procedural-oriented language because of characters of object-oriented language But it is difficult to debug complicated java programs. Debugging has always been a costly part of software development. Syntax errors of java programs is easily found by the current debugging system. But it is difficult to locate logical errors included in java programs. Traditional debugging techniques locating logical errors in java program have been still used with conventional methods that are used at procedural-oriented languages. Unfortunately, these traditional methods are often inadequate for the task of isolating specific program errors. Debugger users may spend considerable time debugging code of program development with sequential methods according as program size is large and is complicated. It is important to easily locate errors included in java program in the software development. In this paper, we apply algorithmic debugging method that debugger user can easily debug programs to java program. This method executes a program and makes an execution tree from calling relation of functions. And it locates errors at the execution tree. So, Algorithmic debugging method can reduce the number of debugging than conventional sequential method.

  • PDF