KR101684405B1 - 휴대용 단말기에서 에러 발생을 분석하기 위한 장치 및 방법 - Google Patents

휴대용 단말기에서 에러 발생을 분석하기 위한 장치 및 방법 Download PDF

Info

Publication number
KR101684405B1
KR101684405B1 KR1020100037238A KR20100037238A KR101684405B1 KR 101684405 B1 KR101684405 B1 KR 101684405B1 KR 1020100037238 A KR1020100037238 A KR 1020100037238A KR 20100037238 A KR20100037238 A KR 20100037238A KR 101684405 B1 KR101684405 B1 KR 101684405B1
Authority
KR
South Korea
Prior art keywords
information
error
calling
register
portable terminal
Prior art date
Application number
KR1020100037238A
Other languages
English (en)
Other versions
KR20110117806A (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 KR1020100037238A priority Critical patent/KR101684405B1/ko
Priority to US13/091,467 priority patent/US8972793B2/en
Publication of KR20110117806A publication Critical patent/KR20110117806A/ko
Application granted granted Critical
Publication of KR101684405B1 publication Critical patent/KR101684405B1/ko

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/366Software debugging using diagnostics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0742Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in a mobile device, e.g. mobile phones, handheld devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Telephone Function (AREA)
  • Debugging And Monitoring (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)

Abstract

본 발명의 휴대용 단말기의 에러 발생 감지 장치 및 방법에 관한 것으로, 특히 휴대용 단말기에서 별도의 디버깅 장치없이 실시간적으로 디바이스 드라이버의 에러를 분석하여 리포팅하기 위한 장치 및 방법에 관한 것으로, 에러가 발생한 디바이스가 존재할 경우, 상기 디바이스의 레지스터 범위 안에서 에러 발생 원인 분석에 필요한 오류 정보를 호출하고, 상기 호출에 상응하는 정보를 덤프받는 덤퍼와, 상기 덤프받은 정보를 분석하여 에러 발생 원인을 파악하는 분석부를 포함하는 것을 특징으로 한다.

Description

휴대용 단말기에서 에러 발생을 분석하기 위한 장치 및 방법{APPARATUS AND METHOD FOR ANALYZING ERROR IN PORTABLE TERMINAL}
본 발명의 휴대용 단말기의 에러 발생 감지 장치 및 방법에 관한 것으로, 특히 휴대용 단말기에서 별도의 디버깅 장치없이 실시간적으로 디바이스 드라이버의 에러를 분석하여 리포팅하기 위한 장치 및 방법에 관한 것이다.
최근 휴대용 단말기는 휴대의 편리성 때문에 사용이 급격히 확산되고 있는 추세이다. 따라서, 서비스 제공자(단말기 제조자)들은 많은 사용자를 확보하기 위해 더욱 편리한 기능을 갖는 상기 휴대용 단말기를 경쟁적으로 개발하고 있다.
예를 들어, 상기 휴대용 단말기는 폰북(phone book), 게임(game), 스케쥴러(Scheduler), 단문 메시지 서비스(short message Service), 멀티미디어 메시지 서비스(Multimedia message service), 방송메시지서비스(Cell broadcasting service), 인터넷 서비스(internet Service), 이메일(e-mail), 모닝콜(morning call), MP 3(MPEG Layer 3), 디지털 카메라(Digital camera) 등의 기능을 제공하고 있다.
상기와 같은 휴대용 단말기는 개발 단계에서 여러 가지 오류를 발견하고 개선하는 작업을 거쳐 사용자에게 판매되는데, 이때 디버깅 프로그램에 의해 어떤 프로그램 파일의 몇 번째 라인이 원인이 되어 오류가 발생하는지, 그리고 어떤 정보들을 가지고 있는지를 모니터링 함으로써 디버깅을 수행하고 있다.
상기와 같은 오류 개선 작업을 거쳐 사용자에게 판매된 휴대용 단말기 역시 많은 디바이스를 구비함에 따라 특정 디바이스에 대한 에러가 발생하게 된다. 일반적으로 상기 휴대용 단말기는 OS에서 제공하는 덤프 툴을 이용하여 디버깅을 수행하거나 고가의 장비를 이용하여 하드웨어적으로 발생하는 오류에 대한 디버깅 과정을 수행한다.
이때, 상기 덤프 툴을 이용한 디버깅 방법은 로그 정보를 분석하여 에러 원인을 판단하고, 상기 고가의 장비를 이용하는 디버깅 과정은 비용 문제 뿐만 아니라 발생한 에러를 재현할 수 있는 경로 및 실제 재현 결과가 필요하여 많은 시간이 소요되는 문제점이 있다.
상기 휴대용 단말기의 제조자가 개발 단계에서 여러 오류에 대하여 충분한 재현 경로를 확인하였을 경우, 어느 정도 에러 발생 원인을 분석하여 해결할 수 있으나 재현 경로가 부정확한 에러에 대하여는 에러 재현이 힘들어 에러 발생 원인 분석에 많은 어려움이 발생하게 된다.
이에 따라, 상기와 같은 휴대용 단말기에서 재현 경로가 부정확한 에러 발생과 동시에 해당 에러에 대한 정보를 획득하고, 상기 획득한 정보로 에러 발생 원인을 파악하기 위한 장치 및 방법이 요구된다.
본 발명은 상술한 바와 같은 문제점을 해결하기 위하여 도출된 것으로서, 본 발명의 목적은 휴대용 단말기에서 내부적으로 디바이스 드라이버의 에러를 분석하기 위한 장치 및 방법을 제공함에 있다.
본 발명의 다른 목적은 휴대용 단말기에서 디바이스 드라이버의 에러를 실시간 분석하기 위한 장치 및 방법을 제공함에 있다.
본 발명의 또 다른 목적은 휴대용 단말기에서 디바이스 드라이버의 에러 발생을 감지할 경우, 에러 발생한 디바이스와 관련된 레지스터의 범위 안의 오류 정보를 획득하기 위한 장치 및 방법을 제공함에 있다.
본 발명의 또 다른 목적은 휴대용 단말기에서 디바이스 드라이버의 오류를 분석하여 리포팅하기 위한 장치 및 방법을 제공함에 있다.
상술한 목적들을 달성하기 위한 본 발명의 제 1 견지에 따르면, 휴대용 단말기에서 에러 발생을 분석하기 위한 장치는 에러가 발생한 디바이스가 존재할 경우, 상기 디바이스의 레지스터 범위 안에서 에러 발생 원인 분석에 필요한 오류 정보를 호출하고, 상기 호출에 상응하는 정보를 덤프받는 덤퍼와, 상기 덤프받은 정보를 분석하여 에러 발생 원인을 파악하는 분석부를 포함하는 것을 특징으로 한다.
상술한 목적들을 달성하기 위한 본 발명의 제 2 견지에 따르면, 휴대용 단말기에서 에러 발생을 분석하기 위한 방법은 에러가 발생한 디바이스가 존재할 경우, 상기 디바이스의 레지스터 범위 안에서 에러 발생 원인 분석에 필요한 오류 정보를 호출하는 과정과, 상기 호출한 정보를 덤프받는 과정과, 상기 덤프받은 정보를 분석하여 에러 발생 원인을 파악하는 과정을 포함하는 것을 특징으로 한다.
상술한 바와 같이 본 발명은 휴대용 단말기에서 실시간으로 디바이스 드라이버의 에러 발생 원인을 파악하기 위한 장치 및 방법에 관한 것으로, 상기 디바이스 드라이버의 에러 발생을 감지할 경우, 에러 발생한 디바이스와 관련된 레지스터의 범위 안의 오류 정보를 획득하여 실시간으로 에러 발생 원인 분석 및 리포팅하도록 함으로써, 고가의 장비없이 에러 발생 원인을 파악할 수 있고, 재현 경로가 부정확한 에러에 대한 분석을 가능하게 한다.
도 1은 본 발명에 따른 에러 발생을 분석 과정을 수행하는 휴대용 단말기의 구성을 도시한 블록도,
도 2는 본 발명의 바람직한 일 실시 예에 따른 에러 분석을 위한 덤퍼의 구성을 도시한 블록도,
도 3은 본 발명에 따른 휴대용 단말기에서 실시간으로 디바이스 드라이브의 에러를 분석하는 과정을 도시한 흐름도 및,
도 4는 본 발명의 바람직한 일 실시 예에 따른 휴대용 단말기에서 실시간으로 디바이스 드라이브의 에러를 분석하는 과정을 도시한 흐름도.
이하 본 발명의 바람직한 실시 예를 첨부된 도면의 참조와 함께 상세히 설명한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.
이하 설명에서는 본 발명에 따른 휴대용 단말기에서 디바이스 드라이버의 에러 발생을 감지할 경우, 에러 발생한 디바이스와 관련된 레지스터의 범위 안의 오류 정보를 획득함으로써 별도의 장치없이 내부적으로 디바이스 드라이버의 에러를 실시간으로 검출하기 위한 장치 및 방법에 대하여 설명할 것이다.
도 1은 본 발명에 따른 에러 발생을 분석 과정을 수행하는 휴대용 단말기의 구성을 도시한 블록도이다.
상기 도 1을 참조하면, 상기 휴대용 단말기는 제어부(100), 에러 감지부(102), 메모리부(114), 입력부(116), 표시부(118) 및 통신부(120)를 포함하여 구성할 수 있으며, 상기 에러 감지부(102)는 덤퍼(104), 분석부(106), 인터페이스 확인부(108), 레지스터 확인부(110), 메모리 확인부(112)를 포함하여 구성할 수 있다.
먼저, 상기 휴대용 단말기의 제어부(100)는 상기 휴대용 단말기의 전반적인 동작을 제어한다. 예를 들어, 음성통화 및 데이터 통신을 위한 처리 및 제어를 수행하고, 통상적인 기능에 더하여 본 발명에 따라 상기 제어부(100)는 디바이스 드라이버의 에러 발생을 감지할 경우, 에러 발생한 디바이스와 관련된 레지스터의 범위 안의 오류 정보를 획득함으로써 별도의 장치없이 내부적으로 디바이스 드라이버의 에러를 실시간으로 분석하도록 처리한다.
즉, 상기 제어부(100)는 에러가 발생한 디바이스가 존재함을 확인할 경우, 상기 디바이스의 로그 메시지 정보, 레지스터 정보, 인터페이스 정보, 메모리 정보 등과 같이 해당 디바이스의 에러를 분석하는데 필요한 정보를 호출하도록 처리한다.
이후, 상기 제어부(100)는 상기와 같은 호출에 따라 덤프받은 정보를 분석하여 에러 발생의 원인을 판단하고, 상기 판단한 에러 발생 원인을 해당 디바이스의 제조업체에 리포팅하도록 처리한다.
상기 에러 감지부(102)는 상기 제어부(100)의 제어를 받아 에러가 발생한 디바이스의 에러 발생 원인을 분석하고, 상기 분석한 원인을 상기 제어부(100)로 제공하여 에러 발생 원인의 리포팅을 가능하게 한다.
이때, 상기 에러 감지부(102)는 상기 인터페이스 확인부(108)로부터 해당 디바이스의 통신 상태에 대한 정보를 덤프받고, 상기 레지스터 확인부(110)로부터 후 처리 프로세서의 레지스터 정보 및 해당 디바이스에 해당하는 레지스터 정보를 덤프받는다. 또한, 상기 에러 감지부(102)는 상기 메모리 확인부(112)로부터 상기 디바이스에게 할당된 메모리 맵 주소를 제공받아 상기 디바이스에 의해 저장된 데이터를 요청하여 해당 데이터에 대한 정보를 덤프받는다.
상기와 같은 정보를 덤프받은 에러 감지부(102)는 상기 분석부(106)를 통해 에러 발생 원인을 파악하도록 처리한다.
상기 에러 감지부(102)의 덤퍼(104)는 상기 에러 감지부(102)의 제어를 받아 디바이스에 발생한 에러를 분석하기 위한 정보를 호출하고, 상기 호출을 통해 덤프받은 정보를 상기 분석부(106)로 제공한다.
상기 에러 감지부(102)의 분석부(106)는 상기 에러 감지부(102)의 제어를 받아 상기 덤퍼(104)로부터 제공받은 정보를 분석하여 해당 디바이스의 에러 발생 원인을 파악한 후, 상기 제어부(100)로 제공하도록 처리한다.
상기 메모리부(114)는 롬(ROM : Read Only Memory), 램(RAM : Random Access Memory), 플래쉬롬(flash ROM)으로 구성된다. 상기 롬은 상기 제어부(100), 에러 감지부(102)의 처리 및 제어를 위한 프로그램의 마이크로코드와 각종 참조 데이터를 저장한다.
상기 램은 상기 제어부(100)의 워킹 메모리(working memory)로, 각종 프로그램 수행 중에 발생하는 일시적인 데이터를 저장한다. 또한, 상기 플래쉬롬은 전화번호부(phone book), 발신메시지 및 수신메시지와 같은 갱신 가능한 각종 보관용 데이터를 저장한다.
상기 입력부(116)는 0 ~ 9의 숫자키 버튼들과, 메뉴버튼(menu), 취소버튼(지움), 확인버튼, 통화버튼(TALK), 종료버튼(END), 인터넷접속 버튼, 네비게이션 키(또는 방향키) 버튼들 및 문자 입력 키 등 다수의 기능키들을 구비하며, 사용자가 누르는 키에 대응하는 키 입력 데이터를 상기 제어부(100)로 제공한다.
상기 표시부(118)는 상기 휴대용 단말기의 동작 중에 발생되는 상태 정보, 제한된 숫자의 문자들, 다량의 동영상 및 정지영상 등을 디스플레이한다. 상기 표시부(118)는 컬러 액정 디스플레이 장치(LCD : Liquid Crystal Display)를 사용할 수 있으며, 상기 표시부(118)는 터치 입력 장치를 구비하여 터치 입력 방식의 휴대용 단말기에 적용할 경우 입력 장치로 사용할 수 있다.
상기 통신부(120)는 안테나(미도시)를 통해 입출력되는 데이터의 무선신호를 송수신 처리하는 기능을 수행한다. 예를 들어, 송신인 경우, 송신할 데이터를 채널 코딩(Channel coding) 및 확산(Spreading)한 후, RF처리하여 송신하는 기능을 수행하고, 수신인 경우, 수신된 RF신호를 기저대역신호로 변환하고 상기 기저대역신호를 역 확산(De-spreading) 및 채널 복호(Channel decoding)하여 데이터를 복원하는 기능을 수행한다.
상기 에러 감지부(102)의 역할은 상기 휴대용 단말기의 제어부(100)에 의해 수행할 수 있으나, 본 발명에서 이를 별도로 구성하여 도시한 것은 설명의 편의를 위한 예시적인 구성이지 결코 본 발명의 범위를 제한하자는 것이 아니며, 당업자라면 본 발명의 범위 내에서 다양한 변형 구성이 가능하다는 것을 알 수 있을 것이다. 예를 들어, 이들 모두를 상기 제어부(100)에서 처리하도록 구성할 수도 있다.
도 2는 본 발명의 바람직한 일 실시 예에 따른 에러 분석을 위한 덤퍼의 구성을 도시한 블록도이다.
상기 도 2를 참조하면, 상기 에러 분석을 위한 덤퍼(200)는 메모리 설정부(202)와 콜백 함수 설정부(204)를 포함한다.
먼저, 상기 메모리 설정부(202)는 상기 휴대용 단말기에 포함된 각각의 디바이스의 특성에 맞게 후처리 프로세스의 레지스트 범위를 설정하고, 상기 디바이스(디바이스 드라이버)에서 사용되는 메모리의 범위, 상기 디바이스의 통신을 위한 인터페이스의 상태 확인을 위한 메모리와 레지스터 범위를 설정한다. 이는 각각의 디바이스를 제조하는 제조업체에 의해 설정될 수 있으며, 상기 제조업체에 의해 설정된 설정 값을 저장할 수 있다.
상기 콜백 함수 설정부(204)는 에러 발생 원인을 분석하는데 필요한 정보를 호출하는 함수를 설정하는 블록으로, 상기 에러 감지부(102)는 상기 콜백 함수 설정부(204)에 설정된 콜백 함수를 이용하여 상기 인터페이스 확인부(108)로 해당 디바이스의 통신 상태에 대한 정보를 호출하고, 상기 레지스터 확인부(110)로 후 처리 프로세서의 레지스터 정보 및 해당 디바이스에 해당하는 레지스터 정보를 호출한다. 또한, 상기 에러 감지부(102)는 상기 메모리 확인부(112)로 상기 디바이스에게 할당된 메모리 맵 주소를 제공받아 상기 디바이스에 의해 저장된 데이터를 호출하여 해당 정보를 덤프받는다.
도 3은 본 발명에 따른 휴대용 단말기에서 실시간으로 디바이스 드라이브의 에러를 분석하는 과정을 도시한 흐름도이다.
상기 도 3을 참조하면, 상기 휴대용 단말기는 먼저 301단계에서 에러가 발생하는 디바이스가 존재하는지 확인한다. 상기 301단계는 상기 휴대용 단말기의 블루투스 모듈, CDMA/GPRS/WCDMA/WiFi/Wimax/LTE 등의 무선 네트워크 모듈, 카메라 모듈 등과 같은 디바이스의 동작에 오류가 발생하는지 확인하는 과정이다.
만일, 상기 301단계에서 에러가 발생하는 디바이스가 존재하지 않음을 확인할 경우, 상기 휴대용 단말기는 313단계로 진행하여 해당 기능(예; 해당 디바이스의 동작 제어)을 수행한다.
한편, 상기 301단계에서 에러가 발생하는 디바이스가 존재함을 확인할 경우, 상기 휴대용 단말기는 303단계로 진행하여 에러 감지를 위한 프로그램을 동작시킨다. 여기에서, 상기 에러 감지를 위한 프로그램은 에러가 발생하는 디바이스의 에러를 분석하는 프로그램으로 상기 도 1의 에러 감지부(102)의 기능을 말한다.
이후, 상기 휴대용 단말기는 305단계로 진행하여 에러가 발생한 디바이스와 관련된 레지스터를 확인한 후, 307단계로 진행하여 상기 확인한 레지스터의 범위 안의 오류 정보를 획득한다.
이후, 상기 휴대용 단말기는 309단계로 진행하여 상기 디바이스가 사용하는 모듈에 대한 정보를 획득한 후, 311단계로 진행하여 상기 획득한 정보를 분석하여 에러 발생 원인을 파악한다. 여기에서, 상기 디바이스가 사용하는 모듈에 대한 정보는 상기 디바이스와 연결된 모듈 간의 통신 상태를 확인하기 위한 정보로 상기 에러가 발생한 디바이스의 인터페이스 상태 정보를 포함할 수 있다.
이후, 상기 휴대용 단말기는 본 알고리즘을 종료한다.
도 4는 본 발명의 바람직한 일 실시 예에 따른 휴대용 단말기에서 실시간으로 디바이스 드라이브의 에러를 분석하는 과정을 도시한 흐름도이다.
상기 도 4를 참조하면, 상기 휴대용 단말기는 먼저 401단계에서 에러가 발생한 디바이스가 존재하는지 확인한다. 상기 401단계는 앞서 설명한 바와 같이 상기 휴대용 단말기의 블루투스 모듈, CDMA/GPRS/WCDMA/WiFi/Wimax/LTE 등의 무선 네트워크 모듈, 카메라 모듈 등과 같은 디바이스의 동작에 오류가 발생하는지 확인하는 과정이다.
만일, 상기 401단계에서 에러가 발생하는 디바이스가 존재하지 않음을 확인할 경우, 상기 휴대용 단말기는 313단계로 진행하여 해당 기능(예; 해당 디바이스의 동작 제어)을 수행한다.
한편, 상기 401단계에서 에러가 발생하는 디바이스가 존재함을 확인할 경우, 상기 휴대용 단말기는 상기 에러가 발생한 디바이스에 대한 정보(로그 메시지 정보, 프로세서 관련 레지스터 정보, 메모리 정보, 인터페이스 정보 등)를 덤프받는다.
상기와 같이 에러가 발생한 디바이스에 대한 정보를 덤프받기 위한 휴대용 단말기는 403단계로 진행하여 에러가 발생한 디바이스의 로그 메시지를 분석하여 에러 발생을 분석하기 위하여 로그 메시지를 덤프받은 후, 405단계로 진행하여 후처리 프로세서(BEP; Back End Processor)와 관련된 레지스터를 덤프받는다.
이후, 상기 휴대용 단말기는 407단계로 진행하여 상기 에러가 발생한 디바이스의 메모리 정보를 덤프받는다. 이는 상기 디바이스를 통해 메모리에 저장된 데이터를 분석하여 발생한 에러를 분석하기 위한 것으로, 상기 휴대용 단말기는 에러 분석에 필요한 정보를 획득하고 있는 것이다.
이후, 상기 휴대용 단말기는 409단계로 진행하여 상기 에러가 발생한 디바이스가 통신시 사용한 인터페이스의 상태를 나타내는 정보를 덤프받은 후, 411단계로 진행하여 해당 디바이스의 레지스터를 덤프받는다. 여기에서, 상기 409단계는 상기 에러가 발생한 디바이스가 인터페이스 상에서 에러가 발생하였는지 판단하기 위하여 인터페이스 상태를 나타내는 정보를 획득하는 것이며, 상기 411단계는 상기 휴대용 단말기에 할당된 해당 디바이스의 IP블록에 대한 정보를 획득하는 것이다. 상기와 같이 덤프받는 정보는 상기 휴대용 단말기가 에러 발생 디바이스를 확인할 경우, 각각의 정보를 제공하는 블럭으로 콜백 함수를 호출함으로써 획득할 수 있다
이후, 상기 휴대용 단말기는 413단계로 진행하여 상기 덤프받은 정보를 통해 에러를 분석하는 과정을 수행한다.
이때, 상기 휴대용 단말기는 기존의 에러 분석 과정과 다르게 별도의 장비를 사용하지 않고도 발생한 에러를 분석할 수 있다. 또한, 상기 휴대용 단말기는 상기 덤프받은 정보를 통해 에러 재현 필요없이 에러 발생 원인을 파악할 수 있으며 에러 발생시 바로 에러 발생 원인을 파악할 수 있다.
상기 413단계에서 에러 발생 원인을 분석한 휴대용 단말기는 415단계로 진행하여 상기 분석한 에러 발생 원인을 해당 디바이스의 제조업체로 리포팅하게 되며, 상기 제조업체는 에러 발생에 대한 정보를 쉽게 획득하고, 후처리 프로세서의 상태뿐만 아니라 특정 디바이스와 연결되는 모듈의 상태를 확인할 수 있다.
이후, 상기 휴대용 단말기는 본 알고리즘을 종료한다.
이하 설명에서는 본 발명의 바람직한 일 실시 예에 휴대용 단말기에서 카메라 장치에 에러가 발생함을 확인하여 에러 발생 원인을 파악하는 동작을 예를 들어 설명한다.
만일 상기 휴대용 단말기의 사용자가 카메라 장치를 이용하여 이미지 촬영을 수행하기 위하여 이미지 촬영을 위한 샷버튼을 길게 입력할 경우, 상기 휴대용 단말기는 상기 카메라 장치를 구동시키는 드라이버가 긴 입력에 대한 동작을 처리하도록 하는 명령을 상기 카메라 장치로 전송하게 된다.
이후, 상기 드라이버는 상기 카메라 장치로부터 제공받은 응답을 통해 긴 입력에 대한 동작 명령이 제대로 전달되어 해당 동작이 수행되었는지 확인한다.
만일, 상기 과정에서 해당 동작이 제대로 수행되지 않음을 확인할 경우, 상기 휴대용 단말기는 에러 감지부(102)의 덤퍼(104)를 통해 상기 카메라 장치와 상기 카메라 장치의 드라이버, 메모리 등 사이의 통신 상태를 확인하기 위한 인터페이스 상태 정보를 덤프받는다.
또한, 상기 휴대용 단말기는 상기 덤퍼(104)를 통해 상기 카메라 장치에 의해 촬영된 이미지 데이터의 저장 정보와 상기 카메라 장치에 해당하는 IP블록에 대한 정보를 덤프받은 후, 상기 분석부(106)로 하여금 에러 발생 원인을 파악하도록 처리한다.
이에 따라 상기 분석부(106)는 상기 카메라 장치의 통신 상태, 데이터 저장 상태, 레지스트 정보를 통해 에러 발생 원인을 파악하게 될 것이며, 상기 파악된 원인은 카메라 제조업체로 리포팅되도록 처리한다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
100: 제어부 102: 에러 감지부
104: 덤프 106: 분석부
108: 인터페이스 확인부 110: 레지스터 확인부
112: 메모리 확인부

Claims (14)

  1. 휴대용 단말기에서 에러 발생을 분석하기 위한 장치에 있어서,
    에러가 발생한 디바이스가 존재할 경우, 상기 디바이스의 레지스터 범위 안에서 에러 발생 원인 분석에 이용되는 에러 정보를 호출하고, 상기 에러 정보에 상응하는 정보를 덤프받고, 상기 덤프받은 정보를 분석하여 에러 발생 원인을 결정하는 제어부를 포함하고,
    상기 레지스터 범위는, 상기 휴대용 단말기에 포함된 디바이스들의 특성에 대응하여 각각 설정되고,
    상기 덤프받은 정보는, 상기 휴대용 단말기가 상기 에러가 발생한 디바이스를 확인할 경우, 상기 에러 정보에 상응하는 정보를 제공하는 블록으로 콜백 함수를 호출함으로써 획득되는 것을 특징으로 하는 장치.
  2. 제 1항에 있어서,
    상기 제어부는, 상기 결정한 에러 발생 원인을 상기 디바이스의 제조업체로 리포팅하는 것을 특징으로 하는 장치.
  3. 제 1항에 있어서,
    상기 제어부는, 상기 디바이스와 관련된 레지스터 정보의 호출, 상기 디바이스가 사용하는 모듈에 대한 정보 호출 중 적어도 하나를 통해 상기 에러 발생 원인 분석에 이용되는 에러 정보를 호출하는 것을 특징으로 하는 장치.
  4. 제 3항에 있어서,
    상기 제어부는, 후 처리 프로세서(back end processor, BEP)의 레지스터 정보, 상기 디바이스에 해당하는 IP블록에 대한 정보를 호출함으로써, 상기 디바이스와 관련된 레지스터 정보를 호출하는 것을 특징으로 하는 장치.
  5. 제 3항에 있어서,
    상기 제어부는, 상기 디바이스의 통신 상태를 확인하기 위한 인터페이스 정보를 호출하고, 상기 디바이스와 관련된 데이터를 저장하는 메모리 정보를 호출함으로써 상기 디바이스가 사용하는 모듈에 대한 정보를 호출하는 것을 특징으로 하는 장치.
  6. 제 1항에 있어서,
    상기 제어부는, 상기 디바이스의 레지스터 범위, 메모리 범위를 설정하고, 상기 에러 정보에 상응하는 콜백 함수를 설정하고, 상기 설정한 콜백 함수를 이용하여 상기 디바이스의 레지스터 범위 안의 에러 정보를 호출하는 것을 특징으로 하는 장치.
  7. 삭제
  8. 휴대용 단말기에서 에러 발생을 분석하기 위한 방법에 있어서,
    디바이스의 레지스터 범위로부터 에러 발생 원인 분석에 이용되는 에러 정보를 호출하는 과정과,
    상기 에러 정보에 상응하는 정보를 덤프 받는 과정과,
    상기 덤프받은 정보를 분석함으로써, 에러 발생 원인을 결정하는 과정을 포함하고,
    상기 레지스터 범위는, 상기 휴대용 단말기에 포함된 디바이스들의 특성에 대응하여 각각 설정되고,
    상기 덤프받은 정보는, 상기 휴대용 단말기가 상기 에러가 발생한 디바이스를 확인할 경우, 상기 에러 정보에 상응하는 정보를 제공하는 블록으로 콜백 함수를 호출함으로써 획득되는 것을 특징으로 하는 방법.
  9. 제 8항에 있어서,
    상기 결정한 에러 발생 원인을 상기 디바이스의 제조업체로 리포팅하는 과정을 더 포함하는 것을 특징으로 하는 방법.
  10. 제 8항에 있어서,
    상기 에러 발생 원인 분석에 이용되는 에러 정보를 호출하는 과정은,
    상기 디바이스와 관련된 레지스터 정보를 호출하는 과정과,
    상기 디바이스가 사용하는 모듈에 대한 정보를 호출하는 과정을 포함하는 것을 특징으로 하는 방법.
  11. 제 10항에 있어서,
    상기 디바이스와 관련된 레지스터 정보를 호출하는 과정은,
    후 처리 프로세서(back end processor, BEP)의 레지스터 정보 및 상기 디바이스에 해당하는 IP블록에 대한 정보를 호출하는 과정을 포함하는 것을 특징으로 하는 방법.
  12. 제 10항에 있어서,
    상기 디바이스가 사용하는 모듈에 대한 정보를 호출하는 과정은,
    상기 디바이스의 통신 상태를 확인하기 위한 인터페이스 정보를 호출하는 과정과,
    상기 디바이스와 관련된 데이터를 저장하는 메모리 정보를 호출하는 과정을 포함하는 것을 특징으로 하는 방법.
  13. 제 8항에 있어서,
    상기 에러 발생 원인 분석에 이용되는 에러 정보를 호출하는 과정은,
    상기 디바이스의 레지스터 범위 및 메모리 범위를 설정하는 과정과,
    상기 에러 정보에 상응하는 콜백 함수를 설정하는 과정과,
    상기 설정한 콜백 함수를 이용하여 상기 디바이스의 레지스터 범위 안의 에러 정보를 호출하는 과정을 포함하는 것을 특징으로 하는 방법.
  14. 삭제
KR1020100037238A 2010-04-22 2010-04-22 휴대용 단말기에서 에러 발생을 분석하기 위한 장치 및 방법 KR101684405B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100037238A KR101684405B1 (ko) 2010-04-22 2010-04-22 휴대용 단말기에서 에러 발생을 분석하기 위한 장치 및 방법
US13/091,467 US8972793B2 (en) 2010-04-22 2011-04-21 Apparatus and method for analyzing error generation in mobile terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100037238A KR101684405B1 (ko) 2010-04-22 2010-04-22 휴대용 단말기에서 에러 발생을 분석하기 위한 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20110117806A KR20110117806A (ko) 2011-10-28
KR101684405B1 true KR101684405B1 (ko) 2016-12-08

Family

ID=44816813

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100037238A KR101684405B1 (ko) 2010-04-22 2010-04-22 휴대용 단말기에서 에러 발생을 분석하기 위한 장치 및 방법

Country Status (2)

Country Link
US (1) US8972793B2 (ko)
KR (1) KR101684405B1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9021436B2 (en) * 2010-12-08 2015-04-28 Microsoft Technology Licensing Llc Automatic reconnection of debugger to a reactivated application
US8782472B2 (en) 2011-10-28 2014-07-15 Dell Products L.P. Troubleshooting system using device snapshots
US8793538B2 (en) * 2012-01-30 2014-07-29 Hewlett-Packard Development Company, L.P. System error response
US9037815B2 (en) 2012-06-28 2015-05-19 International Business Machines Corporation Analyzing and reducing dump data
US9542300B1 (en) 2013-03-15 2017-01-10 Twitter, Inc. System and method for tracking callback functions for error identification
KR101678933B1 (ko) 2014-11-18 2016-12-07 삼성전자주식회사 스토리지 장치 및 스토리지 장치의 동작 방법
US9910726B2 (en) * 2016-02-17 2018-03-06 International Business Machines Corporation System dump analysis
CN105843705A (zh) * 2016-03-22 2016-08-10 青岛海信移动通信技术股份有限公司 一种移动通信终端的内存转储方法和移动通信终端
US10169198B2 (en) 2017-04-24 2019-01-01 International Business Machines Corporation Aggregating data for debugging software

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090327815A1 (en) * 2008-06-25 2009-12-31 Microsoft Corporation Process Reflection

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0586767A1 (en) * 1992-09-11 1994-03-16 International Business Machines Corporation Selective data capture for software exception conditions
US6792559B1 (en) * 2000-04-25 2004-09-14 Ncr Corporation Performing operations in an environment recreated from system dump information
US7191364B2 (en) * 2003-11-14 2007-03-13 Microsoft Corporation Automatic root cause analysis and diagnostics engine
US7321988B2 (en) * 2004-06-30 2008-01-22 Microsoft Corporation Identifying a code library from the subset of base pointers that caused a failure generating instruction to be executed
KR100717241B1 (ko) * 2005-08-02 2007-05-11 엔에이치엔(주) 에러 관리 시스템 및 이를 이용한 에러 관리 방법
US7702959B2 (en) * 2005-08-02 2010-04-20 Nhn Corporation Error management system and method of using the same
JP4600493B2 (ja) * 2008-03-04 2010-12-15 日本電気株式会社 クライアントサーバシステム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090327815A1 (en) * 2008-06-25 2009-12-31 Microsoft Corporation Process Reflection

Also Published As

Publication number Publication date
US20110264960A1 (en) 2011-10-27
US8972793B2 (en) 2015-03-03
KR20110117806A (ko) 2011-10-28

Similar Documents

Publication Publication Date Title
KR101684405B1 (ko) 휴대용 단말기에서 에러 발생을 분석하기 위한 장치 및 방법
US9075716B2 (en) Remote issue logging and reporting of mobile station issues and diagnostic information to manufacturer
CN111026645B (zh) 用户界面自动化测试方法、装置、存储介质及电子设备
KR101251439B1 (ko) 에이디비 인터페이스를 이용한 스마트폰의 성능 측정 시스템 및 방법
EP3116165B1 (en) Method and device for testing a terminal
EP3786824A1 (en) Methods and devices for testing an application on a terminal
KR20110118975A (ko) 휴대용 단말기에서 펌웨어 업데이트를 수행하기 위한 장치 및 방법
CN115527603A (zh) 一种硬盘性能测试方法、中央控制机及测试机
CN105260082A (zh) 一种测试数据展示方法及开发终端
CN110784879A (zh) 通信模块的网络模式切换测试方法、系统、设备及介质
CN113597009A (zh) 一种波束失败恢复方法及终端
CN106919489B (zh) 应用程序的应用界面异常退出的监测方法及装置
KR20110108504A (ko) 휴대용 단말기에서 시스템 검사를 수행하기 위한 장치 및 방법
US11310136B2 (en) Method, device and medium for handing network connection abnormality of terminal
US20210377762A1 (en) Drive test information reporting method and device, network performance detection and device
CN111782508B (zh) 自动测试方法、装置、电子设备和存储介质
KR20070048475A (ko) 이동통신 단말기의 오류 발생 정정 장치 및 방법
CN113626321B (zh) 桥接测试方法、装置、系统及存储介质
KR101773908B1 (ko) 애플리케이션 검증 시스템, 단말기 및 단말기에서의 화면 캡쳐 방법
CN114189550A (zh) 一种虚拟定位检测方法、装置、电子设备和存储介质
KR101647692B1 (ko) 휴대용 단말기에서 비정상적인 롬 업데이트를 판단하기 위한 장치 및 방법
US20060053102A1 (en) Method of executing java application and mobile communication terminal using the same
JP2005151398A (ja) 携帯通信端末の検査システム
CN109739763B (zh) 代码段运行方法、装置、终端及存储介质
JP2009277060A (ja) 電子機器のテスト装置、テスト方法、及びテストプログラム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20191128

Year of fee payment: 4