KR20080050118A - 임베디드용 소프트웨어의 오류 검출 방법 - Google Patents
임베디드용 소프트웨어의 오류 검출 방법 Download PDFInfo
- Publication number
- KR20080050118A KR20080050118A KR1020060120954A KR20060120954A KR20080050118A KR 20080050118 A KR20080050118 A KR 20080050118A KR 1020060120954 A KR1020060120954 A KR 1020060120954A KR 20060120954 A KR20060120954 A KR 20060120954A KR 20080050118 A KR20080050118 A KR 20080050118A
- Authority
- KR
- South Korea
- Prior art keywords
- error
- application software
- operating system
- api
- desktop
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/454—Multi-language systems; Localisation; Internationalisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
Claims (18)
- 임베디드 시스템용 응용 소프트웨어의 오류를 검증하는 데스크탑 오류 검증 시스템에 있어서,상기 임베디드 시스템의 다수의 운영체제에서 지원하는 API에 대해 각각의 운영체제에 따른 API 래퍼(wrapper)를 포함하고,상기 API 래퍼는 상기 API의 기능에 상응하는 데스크탑 운영체제에서 지원하는 API로 치환되고, 상기 API 래퍼가 상기 치환된 API를 호출하여 상기 응용 소프트웨어의 오류를 검증하는 것을 특징으로 하는 데스크탑 오류 검증 시스템.
- 제 1 항에 있어서,상기 데스크탑 운영체제에서 지원하는 API와 매핑할 수 있는 테이블을 저장하는 API 래퍼 저장부를 더 포함하고,상기 테이블에 저장된 API 래퍼가 상기 데스크탑 운영체제에서 지원하는 API를 호출하여 상기 응용 소프트웨어의 오류를 검증하는 것을 특징으로 하는 데스크탑 오류 검증 시스템.
- 제 2 항에 있어서,상기 API 랩퍼 저장부는,상기 임베디드 시스템 환경에서 필요로 하는 스택 크기 및 메모리 크기 정보 를 저장하는 것을 특징으로 하는 데스크탑 오류 검증 시스템.
- 제 1 항에 있어서,상기 임베디드 시스템에서의 화면 출력 및 터미널 제어를 위한 콘솔 및 GUI모니터링 환경 제공부를 더 포함하는 것을 특징으로 하는 데스크탑 오류 검증 시스템.
- 응용 소프트웨어의 오류를 검출하는 방법에 있어서,(a) 상기 응용 소프트웨어의 개발 언어 및 상기 응용 소프트웨어가 실행되는 운영 체제를 판단하는 단계;(b) 상기 응용 소프트웨어의 특정 함수 내의 오류를 검사하기 위해 삽입된 소정의 오류 검사 구문을 상기 판단 결과에 따른 오류 검사 구문으로 치환하는 단계; 및(c) 상기 치환된 결과에 따라 상기 함수 내에서 발생한 오류에 대한 예외 처리(exception handling)를 수행하고, 상기 예외 처리에 따른 오류 정보를 로깅(logging)하는 단계를 포함하는 오류 검출 방법.
- 제 5 항에 있어서,상기 (a) 단계는,상기 응용 소프트웨어의 개발 언어 및 상기 운영체제에서 오류 검사를 지원 하는지를 판단하는 단계를 더 포함하고,상기 (b) 단계는 상기 개발 언어 및 상기 운영체제 지원하는 오류 검사 구문으로 치환하는 것을 특징으로 하는 오류 검출 방법.
- 제 5 항에 있어서,상기 (a) 단계는,상기 개발언어 및 상기 운영체제에서 오류 검사를 지원하지 않는 경우, 소정의 오류 검사 알고리즘을 제공하는 단계를 더 포함하고,상기 (c) 단계는 상기 오류 검사 알고리즘에 따라 예외처리를 수행하는 것을 특징으로 하는 오류 검출 방법.
- 제 5 항에 있어서,상기 오류 정보는,오류가 발생한 시간, 오류 종류, 소스 이름 및 소스 라인 중 적어도 하나 이상을 포함하는 것을 특징으로 하는 오류 검출 방법.
- 제 5 항에 있어서,상기 오류 검사 구문은,상기 응용 소프트웨어의 함수 내에 오류를 검사하기 시작 부분에 삽입하는 ERR_DETECT_TRY 및 끝 부분에 삽입하는 ERR_DETECT_CATCH를 포함하는 것을 특징으 로 하는 오류 검출 방법.
- 제 5 항에 있어서,상기 (c) 단계는,상기 오류를 로깅하는 순서를 동기화하기 위해 뮤텍스(MUTEX)로 처리 순서를 동기화하는 단계를 더 포함하는 것을 특징으로 하는 오류 검출 방법.
- 제 5 항에 있어서,상기 응용 소프트웨어는 데스크탑에서 개발되고, 상기 개발된 응용 소프트웨어는 임베디드 시스템에서 실행되는 것을 특징으로 하는 오류 검출 방법.
- 응용 소프트웨어의 오류를 검출하는 방법에 있어서,상기 응용 소프트웨어의 오류 검사하기 위한 함수의 시작 및 끝 부분에 ERR_DETECT_TRY 및 ERR_DETECT_CATCH를 넣어 코딩하는 단계;상기 ERR_DETECT_TRY에서 Try 타입 및 상기 응용 소프트웨어가 실행되는 운영체제를 판단하고, 상기 판단 결과에 따른 TRY 구문으로 치환하는 단계;상기 함수 내에서 오류가 발생한 경우, 상기 ERR_DETECT_CATCH에서 Catch 타입 및 상기 응용 소프트웨어가 실행되는 운영체제를 판단하고, 상기 판단 결과에 따른 Catch 구문으로 치환하는 단계; 및상기 오류에 대한 예외 처리 코드를 검색하여, 상기 검색된 예외 처리 코드 에 따라 예외 처리를 수행하고, 상기 예외 처리에 따른 오류 정보를 로깅하는 단계를 포함하는 오류 검출 방법.
- 데스크탑에서 개발한 응용 소프트웨어 및 오류 검사 구문을 수정하지 않고 임베디드 시스템에 탑재하여 상기 응용 소프트웨어의 오류를 검출하는 방법으로서,(a) 상기 임베디드 시스템의 다수의 운영체제에서 지원하는 API에 대해 각각의 운영체제에 따른 API 래퍼(wrapper)를 포함하는 상기 데스크탑의 오류 검증 시스템을 통해 상기 응용 소프트웨어의 특정 함수에 포함된 오류 검사 구문에 따라 오류를 상기 데스크탑에서 검증하는 단계;(b) 상기 검증된 응용 소프트웨어를 상기 임베디드 시스템에 탑재하는 단계;(c) 상기 응용 소프트웨어의 개발 언어 및 상기 응용 소프트웨어가 실행되는 임베디드 시스템의 운영체제를 판단하는 단계;(d) 상기 오류 검사 구문을 상기 판단 결과에 따라 상기 개발 언어 및 운영체제에 상응하는 오류 검사 구문으로 치환하는 단계; 및(e) 상기 치환된 결과에 따라 상기 함수 내에서 발생한 오류에 대한 예외 처리를 수행하고, 상기 예외 처리에 따른 오류 정보를 로깅하는 단계를 포함하는 오류 검출 방법.
- 제 5 항 내지 제13항 중 어느 한 항에 따른 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
- 응용 소프트웨어의 오류를 검출하는 장치에 있어서,상기 응용 소프트웨어의 개발 언어 및 상기 응용 소프트웨어가 실행되는 운영 체제를 판단하는 판단부;상기 응용 소프트웨어의 특정 함수 내의 오류를 검사하기 위해 삽입된 소정의 오류 검사 구문을 상기 판단 결과에 따른 오류 검사 구문으로 치환하는 치환부;상기 치환된 결과에 따라 상기 함수 내에서 발생한 오류에 대한 예외 처리를 수행하는 예외 처리부; 및상기 예외 처리에 따른 오류 정보를 로깅하는 오류 로깅부를 포함하는 오류 검출 장치.
- 제 15 항에 있어서,상기 응용 소프트웨어의 개발 언어 및 상기 운영체제에서 오류 검사를 지원하는지를 판단하고, 상기 개발 언어 및 상기 운영체제 지원하는 오류 검사 구문으로 치환하는 것을 특징으로 하는 오류 검출 장치.
- 제 15 항에 있어서,상기 오류를 검사할 수 있는 오류 검사 알고리즘을 저장하는 저장부를 더 포함하고,상기 개발 언어 및 운영체제에서 오류 검사를 지원하지 않는 경우 상기 오류 검사 알고리즘에 따라 상기 함수 내에서 발생한 오류에 대한 예외 처리를 수행하는 것을 특징으로 하는 오류 검출 장치.
- 제 15 항에 있어서,상기 로깅된 오류 정보를 주기적으로 소정의 네트워크로 연결된 서버에 다운로드하는 것을 특징으로 하는 오류 검출 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060120954A KR100868762B1 (ko) | 2006-12-01 | 2006-12-01 | 임베디드용 소프트웨어의 오류 검출 방법 |
US11/984,105 US8589889B2 (en) | 2006-12-01 | 2007-11-13 | Apparatus and method of detecting errors in embedded software |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060120954A KR100868762B1 (ko) | 2006-12-01 | 2006-12-01 | 임베디드용 소프트웨어의 오류 검출 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20080050118A true KR20080050118A (ko) | 2008-06-05 |
KR100868762B1 KR100868762B1 (ko) | 2008-11-17 |
Family
ID=39805624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060120954A KR100868762B1 (ko) | 2006-12-01 | 2006-12-01 | 임베디드용 소프트웨어의 오류 검출 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8589889B2 (ko) |
KR (1) | KR100868762B1 (ko) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101012108B1 (ko) * | 2009-07-21 | 2011-02-07 | 한국원자력연구원 | 임베디드 시스템 결함검출률 평가 장치 및 그 방법 |
KR101042979B1 (ko) * | 2009-10-23 | 2011-06-21 | 한국항공대학교산학협력단 | 임베디드 시스템의 신뢰성 평가를 위한 시뮬레이션 커널을 이용하는 오류주입시험 장치 |
KR101234701B1 (ko) * | 2011-08-24 | 2013-02-19 | 주식회사 미니게이트 | 서버 플랫폼의 오류 처리 시스템 |
KR101690075B1 (ko) | 2015-12-18 | 2016-12-27 | 주식회사 한글과컴퓨터 | 로그기반 소스코드파일 이슈도 구현 방법 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101019209B1 (ko) * | 2007-04-25 | 2011-03-04 | 이화여자대학교 산학협력단 | 임베디드 소프트웨어의 인터페이스 자동 추출 장치 및 그방법 |
ITTO20070915A1 (it) * | 2007-12-19 | 2009-06-20 | Antonio Remollino | Procedimento per la verifica di codici per elaboratore e relativo sistema di verifica |
US8572577B2 (en) * | 2008-06-20 | 2013-10-29 | International Business Machines Corporation | Monitoring changes to data within a critical section of a threaded program |
US8549491B2 (en) * | 2008-12-05 | 2013-10-01 | Electronics And Telecommunications Research Institute | Apparatus and method for application testing of embedded system |
US8782607B2 (en) * | 2009-02-20 | 2014-07-15 | Microsoft Corporation | Contract failure behavior with escalation policy |
US8327336B2 (en) * | 2009-03-18 | 2012-12-04 | International Business Machines Corporation | Enhanced thread stepping |
KR101110021B1 (ko) | 2010-01-29 | 2012-02-29 | 한국과학기술원 | 소프트웨어에서의 상호작용 패턴을 이용한 결함 검출 방법 |
KR101295644B1 (ko) * | 2011-11-11 | 2013-09-16 | 한국전자통신연구원 | 스마트폰 앱 검증 시스템 및 그 방법 |
US8793661B1 (en) * | 2012-04-27 | 2014-07-29 | Google Inc. | Programmer specified conditions for raising exceptions and handling errors detected within programming code |
WO2014158161A1 (en) * | 2013-03-28 | 2014-10-02 | Hewlett-Packard Development Company, L.P. | Error coordination message for a blade device having a logical processor in another system firmware domain |
US9652353B2 (en) * | 2013-10-15 | 2017-05-16 | Oracle International Corporation | Monitoring business transaction failures involving database procedure calls |
US9703536B2 (en) | 2014-08-11 | 2017-07-11 | International Business Machines Corporation | Debugging code using a question and answer system based on documentation and code change records |
US9904614B2 (en) * | 2015-04-03 | 2018-02-27 | NodeSource, Inc. | Source code inspection and verification |
US9639450B2 (en) | 2015-06-17 | 2017-05-02 | General Electric Company | Scalable methods for analyzing formalized requirements and localizing errors |
US10372194B2 (en) * | 2016-02-09 | 2019-08-06 | International Business Machines Corporation | Optimizing use of location services in mobile applications to improve battery consumption |
US10223236B2 (en) | 2017-02-03 | 2019-03-05 | International Business Machines Corporation | Dynamic crash detection and debugging assistance |
US10120656B1 (en) * | 2017-11-07 | 2018-11-06 | Bank Of America Corporation | Robotic process automation system for functional evaluation and improvement of back end instructional constructs |
US11209997B2 (en) | 2017-11-22 | 2021-12-28 | Blackberry Limited | Method and system for low latency data management |
US10831670B2 (en) | 2017-11-22 | 2020-11-10 | Blackberry Limited | Method and system for low latency data management |
US10346287B1 (en) | 2018-06-06 | 2019-07-09 | The United States Of America, As Represented By The Secretary Of The Navy | Detection of degenerate software forms in object oriented code |
US11436830B2 (en) | 2020-03-11 | 2022-09-06 | Bank Of America Corporation | Cognitive robotic process automation architecture |
KR20230089448A (ko) | 2021-12-13 | 2023-06-20 | 현대자동차주식회사 | 차량용 임베디드 제어기의 리셋 원인 결정 방법 및 그 방법이 적용된 차량용 임베디드 제어기 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5379432A (en) * | 1993-07-19 | 1995-01-03 | Taligent, Inc. | Object-oriented interface for a procedural operating system |
US6785843B1 (en) * | 2001-02-23 | 2004-08-31 | Mcrae Andrew | Data plane restart without state change in a control plane of an intermediate network node |
JP2003091432A (ja) | 2001-09-19 | 2003-03-28 | Nec Corp | ソフトウェア評価システム、ソフトウェア評価ツール |
JP2004272830A (ja) | 2003-03-12 | 2004-09-30 | Hitachi Ltd | ソフトウェア開発支援装置 |
KR20040096238A (ko) * | 2003-05-07 | 2004-11-16 | 삼성전자주식회사 | 소스 코드상에서 api의 예외처리를 검사하는 방법 및시스템 |
US7519951B2 (en) * | 2003-09-30 | 2009-04-14 | International Business Machines Corporation | Multi-attribute dynamic link library packaging |
JP2005284785A (ja) | 2004-03-30 | 2005-10-13 | Jfe Steel Kk | プログラム開発装置 |
KR100580071B1 (ko) | 2004-10-05 | 2006-05-16 | 주식회사 팬택앤큐리텔 | 메모리 오류 검출방법 |
US7478265B2 (en) * | 2004-10-14 | 2009-01-13 | Hewlett-Packard Development Company, L.P. | Error recovery for input/output operations |
KR101033591B1 (ko) * | 2004-11-09 | 2011-05-11 | 엘지전자 주식회사 | 임베디드 시스템의 디버깅 방법 |
US7949904B2 (en) * | 2005-05-04 | 2011-05-24 | Microsoft Corporation | System and method for hardware error reporting and recovery |
US8015549B2 (en) * | 2005-05-10 | 2011-09-06 | Novell, Inc. | Techniques for monitoring application calls |
US7774757B1 (en) * | 2005-07-13 | 2010-08-10 | Oracle America, Inc. | Dynamic verification of application portability |
US20070283327A1 (en) * | 2006-06-02 | 2007-12-06 | Microsoft Corporation | Hierarchical test verification using an extendable interface |
US7765440B2 (en) * | 2006-06-29 | 2010-07-27 | Intel Corporation | Method and apparatus for OS independent platform recovery |
-
2006
- 2006-12-01 KR KR1020060120954A patent/KR100868762B1/ko active IP Right Grant
-
2007
- 2007-11-13 US US11/984,105 patent/US8589889B2/en active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101012108B1 (ko) * | 2009-07-21 | 2011-02-07 | 한국원자력연구원 | 임베디드 시스템 결함검출률 평가 장치 및 그 방법 |
KR101042979B1 (ko) * | 2009-10-23 | 2011-06-21 | 한국항공대학교산학협력단 | 임베디드 시스템의 신뢰성 평가를 위한 시뮬레이션 커널을 이용하는 오류주입시험 장치 |
KR101234701B1 (ko) * | 2011-08-24 | 2013-02-19 | 주식회사 미니게이트 | 서버 플랫폼의 오류 처리 시스템 |
KR101690075B1 (ko) | 2015-12-18 | 2016-12-27 | 주식회사 한글과컴퓨터 | 로그기반 소스코드파일 이슈도 구현 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR100868762B1 (ko) | 2008-11-17 |
US8589889B2 (en) | 2013-11-19 |
US20080282229A1 (en) | 2008-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100868762B1 (ko) | 임베디드용 소프트웨어의 오류 검출 방법 | |
US7818721B2 (en) | Dynamic application tracing in virtual machine environments | |
US8762971B2 (en) | Servicing a production program in an integrated development environment | |
US9898387B2 (en) | Development tools for logging and analyzing software bugs | |
US8954930B2 (en) | System and method for reducing test effort by object risk analysis | |
US8370816B2 (en) | Device, method and computer program product for evaluating a debugger script | |
US8726225B2 (en) | Testing of a software system using instrumentation at a logging module | |
EP2442230B1 (en) | Two pass automated application instrumentation | |
US7900198B2 (en) | Method and system for parameter profile compiling | |
US7530056B1 (en) | Method and system for detecting runtime defects in a program by comparing correct and incorrect runs | |
US7882495B2 (en) | Bounded program failure analysis and correction | |
CN110046479B (zh) | 一种基于安卓操作系统的链接库文件反调试方法及装置 | |
US20080127119A1 (en) | Method and system for dynamic debugging of software | |
US20080127118A1 (en) | Method and system for dynamic patching of software | |
US20090100413A1 (en) | Stack Walking Enhancements Using Sensorpoints | |
US6738778B1 (en) | Method and apparatus for monitoring the execution of a program | |
US20080010536A1 (en) | Breakpoints with Separate Conditions | |
Jiang et al. | Fuzzing error handling code in device drivers based on software fault injection | |
US20050235010A1 (en) | Detecting incorrect versions of files | |
US11520682B2 (en) | Code coverage method for embedded system on chip | |
CN110297639B (zh) | 用于检测代码的方法和装置 | |
CN111352631A (zh) | 一种接口兼容性检测方法及装置 | |
US20150007139A1 (en) | Optimizing error parsing in an integrated development environment | |
CN115705294A (zh) | 用于获取函数调用信息的方法、装置、电子设备和介质 | |
CN111367796A (zh) | 应用程序调试方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
AMND | Amendment | ||
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121016 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20131022 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20141022 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20151019 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20161018 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20171018 Year of fee payment: 10 |