KR102188738B1 - 오토사 운영체제의 알람 오프셋 최적화 장치 - Google Patents

오토사 운영체제의 알람 오프셋 최적화 장치 Download PDF

Info

Publication number
KR102188738B1
KR102188738B1 KR1020190162688A KR20190162688A KR102188738B1 KR 102188738 B1 KR102188738 B1 KR 102188738B1 KR 1020190162688 A KR1020190162688 A KR 1020190162688A KR 20190162688 A KR20190162688 A KR 20190162688A KR 102188738 B1 KR102188738 B1 KR 102188738B1
Authority
KR
South Korea
Prior art keywords
alarm
offset
operating system
value
execution
Prior art date
Application number
KR1020190162688A
Other languages
English (en)
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 KR1020190162688A priority Critical patent/KR102188738B1/ko
Priority to US16/951,744 priority patent/US11847867B2/en
Priority to DE102020132180.5A priority patent/DE102020132180A1/de
Priority to CN202011401113.4A priority patent/CN113032204B/zh
Application granted granted Critical
Publication of KR102188738B1 publication Critical patent/KR102188738B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/008Registering or indicating the working of vehicles communicating information to a remotely located station
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/008Reliability or availability analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/32Monitoring with visual or acoustical indication of the functioning of the machine
    • G06F11/324Display of status information
    • G06F11/327Alarm or error message display
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0816Indicating performance data, e.g. occurrence of a malfunction
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C5/00Registering or indicating the working of vehicles
    • G07C5/08Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
    • G07C5/0841Registering performance data
    • G07C5/085Registering performance data using electronic data carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)

Abstract

본 발명의 바람직한 실시예에 따른 오토사 운영체제의 알람 오프셋 최적화 장치는, 알람 세팅 테스트 파일의 각 알람 정보에 대한 오프셋 변수값에 기설정된 오프셋 테이블의 오프셋값을 입력하는 스타트 모듈, 및 입력된 오프셋값을 기반으로 상기 알람 세팅 테스트 파일을 실행하여 알람 오프셋 최적화를 위한 실행 결과를 출력하는 실행 모듈을 포함한다.

Description

오토사 운영체제의 알람 오프셋 최적화 장치{ALARM OFFSET OPTIMIZATION APPARATUS FOR AUTOSAR OPERATING SYSTEM}
본 발명은 오토사 운영체제의 알람 오프셋 최적화 장치에 관한 것이다.
자동차에 사용되는 전자 장치가 많아질수록 그에 사용되는 소프트웨어의 표준화에 대한 요구 또한 커져가고 있다. 이에 모듈의 재사용성을 높이고 차량 별 부품의 호환성을 높이고자, 오토사(AUTOSAR) 기반의 임베디드 소프트웨어 오픈 플랫폼(Embedded Software Open Platform)이 개발 중이다.
오토사(AUTOSAR, AUTomotive Open System Architecture) 플랫폼은 차량 전장분야의 운영체제로서, 차량 제어기의 동작 제어를 위한 메커니즘을 구비한다.
오토사 플랫폼은 점점 많은 곳에 사용되고 있으며, 사용할 수 있는 기능도 다양해지고 있다. 이러한 오토사 플랫폼은 글로벌 차량 시장으로 확대 적용되고 있다.
그리고, 각종 차량용 제어기의 경우, 서로의 기능이 합쳐지고 있는 추세이다. 즉, 종래에는 각종 차량용 제어기를 통해 다양한 차량 제어 기능을 수행하였는데, 최근에는 다양한 차량 제어 기능이 하나의 차량 제어기에서 사용할 수 있게 변화하고 있다. 예를 들어, 종래 차량 제어기로서 통합형 차체제어시스템(IBU, Integrated Body Control Unit), 및 통합제어유닛(ICU, Intergrated Central Unit) 등이 있는데, 이러한 통합 형태의 제어기마저 통신제어장치(CCU, Communication Control Unit)로 통합되고 있다.
이로 인해, 단일 차량 제어기에서 사용하는 기능이 점점 많아져서 소프트웨어의 리소스가 부족한 현상이 일어나고 있다. 소프트웨어의 리소스가 부족한 경우, 차량 제어기에 과부하가 걸릴 수 있다. 또한, 리셋이나, 실제로 수행되어야 하는 작업(Task)이 밀리거나 누락되는 현상도 일어날 수 있다. 이는 차량 제어기의 문제일 뿐만 아니라 치명적인 차량 결함을 야기한다.
이러한 문제 해결을 위해, 현재 오토사 플랫폼에서 제공하고 있는 것이 운영체제 환경하의 알람 오프셋(Alarm Offset) 기능이다.
알람 오프셋은 태스크 수행 시간을 알리기 위한 알람 위치를 최대한 분산시켜서, 여러 태스크가 한 번에 수행되는 것을 방지함으로써 많은 리소스가 할당되지 않도록 한다. 이를 통해 여러 태스크가 문제없이 수행되는 효과가 있다.
그러나, 알람 오프셋의 최적화를 위한 방법이 어느 사양에도 정의되어 있지 않다.
일반적인 어플리케이션 소프트웨어(ASW, Application SoftWare) 개발자의 경우, 많은 경험을 통해 쌓인 정보를 기반으로 알람 오프셋을 설정하거나, 베이직 소프트웨어(BSW, Basic SoftWare) 개발자의 경우 일반적인 상황하에서의 정보를 기반으로 알람 오프셋을 설정하고 있다.
특정 차량 제어기, 또는 특정 MCU에 따라 알람 오프셋의 최적화값이 다를 수 있으므로, 차량 제어기 사양별로 알람 오프셋의 최적화를 수행한다면 오토사 운영체제하에서의 리소스 부족 현상이 해소될 수 있을 것이다.
대한민국 공개특허 제2012-0060435호
이에 본 발명은 상기한 사정을 감안하여 안출된 것으로, 차량 제어기 사양별로 알람 오프셋을 최적화함으로써, 태스크 수행시간을 하나씩 측정하는 것보다 실제 런타임(RUN Time) 환경하에서 빠르게 태스크 수행시간을 측정할 수 있도록 하는 오토사 운영체제의 알람 오프셋 최적화 장치를 제공하는 것을 목적으로 한다.
상기 목적을 달성하기 위한 본 발명의 바람직한 실시예에 따른 오토사 운영체제의 알람 오프셋 최적화 장치는, 알람 세팅 테스트 파일의 각 알람 정보에 대한 오프셋 변수값에 기설정된 오프셋 테이블의 오프셋값을 입력하는 스타트 모듈; 및 입력된 오프셋값을 기반으로 상기 알람 세팅 테스트 파일을 실행하여 알람 오프셋 최적화를 위한 실행 결과를 출력하는 실행 모듈;를 포함할 수 있다.
상기 오프셋 테이블은, 알람 개수, 알람 이름, 및 알람 주기를 포함하는 복수의 알람 정보와, 상기 알람 정보 각각에 오프셋값을 통해 연결되는 인덱스 정보를 포함하여 구성될 수 있다.
상기 스타트 모듈은, 상기 인덱스 정보에 따른 오프셋값을 상기 오프셋 변수값으로 입력할 수 있다.
상기 실행 모듈은, 상기 인덱스 정보 순서로 상기 알람 세팅 테스트 파일을 실행할 수 있다.
상기 오프셋 테이블이 저장되는 오프셋 테이블 저장부를 더 포함할 수 있다.
상기 알람 세팅 테스트 파일의 실행에 따른 CPU 부하를 측정하는 부하측정 모듈을 더 포함할 수 있다.
상기 인덱스 정보에 따른 상기 알람 세팅 테스트 파일의 실행이 완료되면, 다른 인덱스 정보에 따라 상기 알람 세팅 테스트 파일이 실행되도록 상기 실행 모듈에 리셋을 요청하는 리셋 모듈을 더 포함할 수 있다.
상기 실행 모듈은, 마지막 인덱스 정보에 따라 알람 세팅 테스트 파일의 실행이 완료되면, 실행 결과를 미리 마련된 통신 방식으로 외부로 전달할 수 있다.
상기 실행 결과는 CPU 최소 부하, CPU 최대 부하, 및 에러훅 호출 횟수를 포함할 수 있다.
상기 실행 모듈은, 상기 CPU 최소 부하, 상기 CPU 최대 부하, 및 상기 에러훅 호출 횟수를 기설정된 기준치와 비교하여 기준치 적합여부를 판단할 수 있다.
오토사 운영체제의 태스크와 연결되는 알람 정보를 입력받고 알람 정보를 이용하여 알람 세팅 파일을 생성하는 제작 툴을 더 포함할 수 있다.
상기 알람 세팅 파일의 오프셋값을 오프셋 변수값으로 보정하여 상기 알람 세팅 테스트 파일을 생성하는 보정부를 더 포함할 수 있다.
본 발명의 바람직한 실시예에 따른 오토사 운영체제의 알람 오프셋 최적화 장치에 의하면, 단순 경험이 아닌 차량 제어기 사양 별로 알람 오프셋을 최적화함으로써, 태스크 수행시간을 하나씩 측정하는 것보다 실제 런타임(RUN Time) 환경하에서 빠르게 태스크 수행시간을 측정할 수 있도록 하는 효과가 있다.
또한, 오토사 운영체제에서의 리소스 부족 현상이 해소될 수 있는 효과가 있다.
도 1은 본 발명의 바람직한 실시예에 따른 오토사 운영체제의 알람 오프셋 최적화 장치의 블록도이다.
도 2는 알람 오프셋 변수값의 변수화 과정을 보여주는 도면이다.
도 3은 오프셋 테이블을 보여주는 도면이다.
도 4는 오프셋 테이블에 따른 알람 오프셋 최적화값을 보여주는 도면이다.
도 5는 본 발명의 바람직한 실시예에 따른 오토사 운영체제의 알람 오프셋 최적화 방법의 순서도이다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 이하에서 본 발명의 바람직한 실시예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.
도 1은 본 발명의 바람직한 실시예에 따른 오토사 운영체제의 알람 오프셋 최적화 장치의 블록도이다.
도 1을 참고하면, 본 발명의 바람직한 실시예에 따른 오토사 운영체제(10)는 제작 툴(100), 보정부(200), 및 알람 오프셋 최적화부(300)를 포함할 수 있다.
제작 툴(100)은, 사용자 필요에 따라 SWP(Software program) 정보와 APP 정보(USER 정보)를 입력받을 수 있다. 여기서, SWP 정보는 Tick 값, SWP 알람 개수, 각 SWP 알람의 주기, 각 SWP 알람의 오프셋 변경 여부, 및 고정 오프셋을 가지는 SWP 알람의 고정 오프셋값을 포함할 수 있다. 여기서, Tick 값은 알람의 기본 단위이다.
APP 정보는, ASW 알람 개수, 각 ASW 알람 주기, 각 ASW 알람의 오프셋 변경 여부, 고정 오프셋을 가지는 ASW 알람의 고정 오프셋값, 최소 최대 CPU 부하, 및 최소 에러훅(ErrorHook) 호출 횟수를 포함할 수 있다. 에러훅이란, 에러 발생한 서비스의 사용 여부를 사용자가 선택할 수 있도록 오토사 운영체제에서 제공하는 후크 루틴(Hook Routine)을 말한다.
제작 툴(100)은, 사용자 필요에 따라 SWP 정보와 APP 정보를 조합하여 조합 정보를 생성할 수 있다. 여기서, 조합 정보는, SWP 알람과 ASW 알람 개수를 합산한 총 알람 개수, 각 알람에 대한 오프셋 가능 값, 각 알람의 오프셋에 대한 고정 또는 변경 가능 정보, 및 결과 값에 대한 통과(Pass) 또는 페일(Fail)을 결정하는데 이용되는 기준치를 포함할 수 있다.
각 알람에 대한 오프셋 가능 값(오프셋 최대값)은, 태스크의 최대 주기를 Tick 값으로 나누어 설정될 수 있다. 일 실시예에 있어서, Tick값이 2.5ms 이고 알람 주기가 10ms 인 경우, 오프셋 최대값이 4로 설정될 수 있다.
각 알람의 오프셋에 대한 고정 또는 변경 가능 정보는, 고정 오프셋을 가져야 하는 알람을 고정시키고, 변경 오프셋을 가질 수 있는 알람을 변경시킬 수 있다.
결과 값에 대한 통과 또는 페일을 결정하는 기준치는, APP 정보인 최소 CPU 부하와 최소 에러훅 호출 횟수 등을 통해 결정될 수 있다.
제작 툴(100)은 조합 정보를 이용하여 알람 세팅을 위한 알람 세팅 파일(Rte.c)을 생성할 수 있다. 또한, 제작 툴(100)은 총 알람 개수와 각 알람의 이름, 각 알람의 오프셋에 대한 변경 가능 여부, 및 Tick 값을 오프셋 테이블(110)에 입력할 수 있다. 이를 통해 오프셋 테이블(Offset Table)이 구성될 수 있다.
한편, 조합 정보의 각 알람 정보는 태스크들과 매핑된다. 알람 세팅 파일(Rte.c)의 알람 정보에 대한 함수가 수행되면, 카운터가 증가함에 따라 알람이 울리게 되고 알람에 연결된 태스크가 수행된다. 알람 오프셋은 알람들이 동시에 울리지 않게 하기 위해 설정된다. 즉 알람 오프셋은 알람들이 동시에 울리지 않게 함으로써 CPU 부하가 증가하지 않도록 한다.
보정부(200)는 알람 세팅 파일(Rte.c)을 보정하여 알람 세팅 테스트 파일(Rte_Test.c)을 생성할 수 있다. 보정부(200)는 알람 세팅 파일(Rte.c)에 있는 각 알람 정보(SetRelAlarm)의 오프셋 변수값을 변수화시킬 수 있다. 보정부(200)는 알람 세팅 파일(Rte.c)의 오프셋 변수값을 변수화시키기 위한 오프셋 변수 설정 함수(SchM_Init)를 생성할 수 있다. 오프셋 변수 설정 함수(SchM_Init)는 오프셋 테이블의 오프셋값이 순차적으로 입력될 수 있다.
일 실시예에 있어서, 최대 오프셋 변수값의 변수값은 태스크의 최대 주기를 Tick값으로 나눈 값으로 설정될 수 있다. 오프셋 변수값의 변수화 과정은 도 2를 통해 후술한다.
알람 오프셋 최적화부(300)는 오프셋 테이블 저장부(310), 스타트 모듈(320), 실행 모듈(330), 부하 측정 모듈(340), 및 리셋 모듈(350)를 포함할 수 있다.
오프셋 테이블 저장부(310)는 인덱스 정보, 알람 정보(개수, 이름, 주기), 알람 오프셋 변경 가능 여부, 및 오프셋값으로 구성된 오프셋 테이블이 저장될 수 있다.
스타트 모듈(320)은 알람 세팅 테스트 파일(Rte_Test.c)의 오프셋 변수 설정 함수(SchM_Init)에 오프셋 테이블의 인덱스 순서로 오프셋값을 입력할 수 있다.
실행 모듈(330)은 오프셋값이 입력된 알람 세팅 테스트 파일(Rte_Test.c)을 실행하여 알람 정보의 오프셋별로 CPU 최소 부하, CPU 최대 부하와, 에러훅의 호출 횟수를 산출할 수 있다.
부하측정 모듈(340)은, 실행 모듈(330)의 실행에 따른 CPU 부하를 측정하고 측정치를 실행 모듈(330)에 전달할 수 있다.
리셋 모듈(350)은 알람 세팅 테스트 파일(Rte_Test.C)의 실행을 리셋시킬 수 있다. 즉, 리셋 모듈(350)은 오프셋 테이블의 다른 인덱스에 따라 알람 세팅 테스트 파일(Rte_Test.c)이 실행되도록 실행 모듈(330)에 리셋을 요청할 수 있다.
실행 모듈(330)은 오프셋 테이블의 마지막 인덱스에 따라 알람 세팅 테스트 파일(Rte_Test.c)의 실행이 완료되면, 실행 결과를 오프셋 테이블에 저장하거나 별도의 통신 방식(Uart, CAN)으로 출력할 수 있다. 이러한 실행 모듈(300)의 실행 결과는 Excel, txt 파일 형태로 출력될 수 있고, 알람 오프셋 최적화를 위한 정보로 활용될 수 있다.
도 2는 알람 오프셋 변수값의 변수화 과정을 보여주는 도면이다.
도 2를 참고하면, 알람 세팅 파일(Rte.c)의 알람 오프셋 변수값이 알람 세팅 테스트 파일(Rte_Test.c)에서 오프셋 변수값으로 설정되는 것을 확인할 수 있다.
알람 세팅 파일(Rte.c)의 각 알람 정보(SetRelAlarm)는 알람 종류, 주기, 및 오프셋 변수값을 포함할 수 있다.
일 실시예에 있어서, 어느 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_5ms, 주기 2, 오프셋 변수값 1을 가질 수 있다. 여기서, 알람의 주기는 주기 2에 Tick 값 2.5ms을 곱하여 5ms가 될 수 있다.
다른 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_10ms_1, 주기 4, 오프셋 변수값 2를 가질 수 있다. 여기서, 알람의 주기는 주기 4에 Tick 값 2.5ms를 곱하여 10ms가 될 수 있다.
또 다른 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_10ms_2, 주기 4, 오프셋 변수값 3을 가질 수 있다. 여기서, 알람의 주기는 주기 4에 Tick 값 2.5ms를 곱하여 10ms가 될 수 있다.
또 다른 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_20ms, 주기 8, 오프셋 변수값 4를 가질 수 있다. 여기서, 알람의 주기는 주기 8에 Tick 값 2.5ms를 곱하여 10ms가 될 수 있다.
또 다른 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_100ms, 주기 40, 오프셋 변수값 5를 가질 수 있다. 여기서, 알람의 주기는 주기 40에 Tick 값 2.5ms를 곱하여 100ms가 될 수 있다.
이러한 알람 정보를 포함하는 알람 세팅 파일(Rte.c)은 보정부(200)에 의해 알람 세팅 테스트 파일(Rte_Test.c)로 보정될 수 있다.
일 실시예에 있어서, 알람 세팅 테스트 파일(Rte_Test.c)의 어느 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_5ms, 주기 2, 오프셋 변수값 OsAlarm_5ms_Offset을 가질 수 있다.
다른 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_10ms_1, 주기 4, 오프셋 변수값 OsAlarm_10ms_1_Offset을 가질 수 있다.
또 다른 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_10ms2, 주기 4, 오프셋 변수값 OsAlarm_10ms_2_Offset을 가질 수 있다.
또 다른 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_20ms, 주기 8, 오프셋 변수값 OsAlarm_2ms_Offset을 가질 수 있다.
또 다른 하나의 알람 정보(SetRelAlarm)는 알람 종류 OsAlarm_100ms, 주기 40, 오프셋 변수값 OsAlarm_100ms_Offset을 가질 수 있다.
도 3은 오프셋 테이블을 보여주는 도면이다.
도 3을 참고하면, 오프셋 테이블은 알람 정보(알람 명, 주기, 오프셋 변경 여부, 오프셋 변수값, 및 인덱스(Index) 정보를 포함할 수 있다.
일 실시예에 있어서, 알람 명이 알람 A(Alarm A)인 경우, 5ms의 주기, 오프셋 변경 가능, 인덱스 1, 2, 100, 101, 500, 100 순서로 오프셋 변수값 0, 0, 1, 1, 4, 4(MAX)를 가질 수 있다. 그 외 알람 정보에 대한 상세 설명은 생략한다.
도 4는 오프셋 테이블에 따른 알람 오프셋 최적화값을 보여주는 도면이다.
도 4를 참고하면, 오프셋 테이블은, 실행 모듈(330)의 실행 결과를 포함할 수 있다. 즉 오프셋 테이블은, 에러훅 호출 횟수(기준치: 0), CPU 최소 부하(기준치: 40%), CPU 최대 부하(기준치: 60%), 및 기준치 적합 여부를 더 포함할 수 있다.
일 실시예에 있어서, 알람 명이 알람 A(Alarm A)인 경우, 인덱스 1, 2, 100, 101, 500, 100 순서로 에러훅 호출 횟수가 56(NG), 49(NG), 0, 0, 0, 48(NG)로 나타날 수 있다. 여기서, NG는 좋지 않음을 의미한다.
또한, 알람 A(Alarm A)의 경우, 인덱스 1, 2, 100, 101, 500, 100 순서로 CPU 최소 부하가 60%(NG), 55%(NG), 15%, 18%, 60%(NG), 70%(NG)로 나타날 수 있다.
또한, 알람 A(Alarm A)의 경우, 인덱스 1, 2, 100, 101, 500, 100 순서로 CPU 최대 부하가 85%(NG), 81%(NG), 59%, 55%, 70%(NG), 70%(NG)로 나타날 수 있다.
또한, 알람 A(Alram A)의 경우, 인덱스 1, 2, 100, 101, 500, 100 순서로 기준치 적합 여부가 페일(FAIL), 페일(FAIL), 통과(PASS), 통과(PASS), 페일(FAIL), 페일(FAIL)로 나타날 수 있다. 그 외 알람 정보에 대한 상세 설명은 생략한다.
도 5는 본 발명의 바람직한 실시예에 따른 오토사 운영체제의 알람 오프셋 최적화 방법의 순서도이다.
도 5를 참고하면, 본 발명의 바람직한 실시예에 따른 오토사 운영체제의 알람 오프셋 최적화 방법은, 알람 세팅 테스트 파일 입력 단계(S510), 오프셋 테이블 생성 단계(S520), 오프셋 변수값 설정 단계(S530), 알람 세팅 테스트 파일 실행 단계(S540), CPU 부하 측정 단계(S550), 인덱스 판단 단계(S560), 리셋 단계(S570), 및 실행 결과 출력 단계(S580)를 포함할 수 있다.
알람 세팅 테스트 파일 입력 단계(S510)에서, 알람 세팅을 위한 알람 세팅 테스트 파일이 입력될 수 있다. 알람 세팅 테스트 파일은 각 알람 정보의 오프셋 변수값을 오프셋 변수값으로 변수화하기 위한 오프셋 변수 설정 함수(SchM_Init)가 포함될 수 있다.
오프셋 테이블 생성 단계(S520)에서, 인덱스 정보, 알람 정보(개수, 이름, 주기), 알람 오프셋 변경 가능 여부, 및 오프셋값으로 구성된 오프셋 테이블이 생성될 수 있다. 오프셋 테이블은 오프셋 테이블 저장부(310)에 저장될 수 있다.
오프셋 변수값 입력 단계(S530)에서, 오프셋 변수 설정 함수(SchM_Init)에 오프셋 테이블의 인덱스 순서로 오프셋값이 입력될 수 있다.
알람 세팅 테스트 파일 실행 단계(S540), 오프셋값이 입력된 알람 세팅 테스트 파일(Rte_Test.c)이 오프셋 테이블의 인덱스 순서로 실행되어 알람 정보의 오프셋에 따른 CPU 최소 부하, CPU 최대 부하, 및 에러훅 호출 횟수가 산출될 수 있다.
CPU 부하 측정 단계(S550)에서, 알람 세팅 테스트 파일(Rte_Test.c)의 실행에 따른 CPU 부하가 측정될 수 있다.
인덱스 판단 단계(S560)에서, 알람 정보의 오프셋에 따른 CPU 최소 부하, CPU 최대 부하, 및 에러훅 호출 횟수가 산출되면, 오프셋 테이블의 마지막 인덱스인지가 판단된다.
리셋 단계(S570)에서, 오프셋 테이블의 마지막 인덱스에 따른 알람 정보에 대한 CPU 최소 부하, CPU 최대 부하, 및 에러훅 호출 횟수가 산출될 때까지 알람 세팅 테스트 파일(Rte_Test.c)의 실행이 리셋된다.
실행 결과 출력 단계(S580)에서, 전체 알람 정보에 대한 실행 결과인 CPU 최소 부하, CPU 최대 부하, 및 에러훅 호출 횟수가 출력된다. CPU 최소 부하, CPU 최대 부하, 및 에러훅 호출 횟수는 오프셋 테이블에 저장되거나, Uart, CAN 등의 통신 방식으로 외부에 전달되어 알람 오프셋 최적화를 위해 이용될 수 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위 내에서 다양한 수정, 변경 및 치환이 가능할 것이다. 따라서, 본 발명에 개시된 실시예 및 첨부된 도면들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예 및 첨부된 도면에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다.
본 발명에 따른 단계들 및/또는 동작들은 기술분야의 통상의 기술자에 의해 이해될 수 있는 것과 같이, 다른 순서로, 또는 병렬적으로, 또는 다른 에포크(epoch) 등을 위해 다른 실시 예들에서 동시에 일어날 수 있다.
실시 예에 따라서는, 단계들 및/또는 동작들의 일부 또는 전부는 하나 이상의 비-일시적 컴퓨터-판독가능 매체에 저장된 명령, 프로그램, 상호작용 데이터 구조(interactive data structure), 클라이언트 및/또는 서버를 구동하는 하나 이상의 프로세서들을 사용하여 적어도 일부가 구현되거나 또는 수행될 수 있다. 하나 이상의 비-일시적 컴퓨터-판독가능 매체는 예시적으로 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합일 수 있다. 또한, 본 명세서에서 논의된 "모듈"의 기능은 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합으로 구현될 수 있다.
10: 오토사 운영체제
100: 제작 툴
200: 보정부
300: 알람 오프셋 최적화부
310: 오프셋 테이블 저장부
320: 스타트 모듈
330: 실행 모듈
340: 부하 측정 모듈
350: 리셋 모듈

Claims (12)

  1. 알람 세팅 테스트 파일의 각 알람 정보에 대한 오프셋 변수값에 기설정된 오프셋 테이블의 오프셋값을 입력하는 스타트 모듈; 및
    입력된 오프셋값을 기반으로 상기 알람 세팅 테스트 파일을 실행하여 알람 오프셋 최적화를 위한 실행 결과를 출력하는 실행 모듈;
    을 포함하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  2. 제 1 항에 있어서,
    상기 오프셋 테이블은,
    알람 개수, 알람 이름, 및 알람 주기를 포함하는 복수의 알람 정보와, 상기 알람 정보 각각에 오프셋값을 통해 연결되는 인덱스 정보를 포함하여 구성되는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  3. 제 2 항에 있어서,
    상기 스타트 모듈은,
    상기 인덱스 정보에 따른 오프셋값을 상기 오프셋 변수값으로 입력하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  4. 제 2 항에 있어서,
    상기 실행 모듈은, 상기 인덱스 정보 순서로 상기 알람 세팅 테스트 파일을 실행하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  5. 제 1 항에 있어서,
    상기 오프셋 테이블이 저장되는 오프셋 테이블 저장부를 더 포함하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  6. 제 4 항에 있어서,
    상기 알람 세팅 테스트 파일의 실행에 따른 CPU 부하를 측정하는 부하측정 모듈을 더 포함하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  7. 제 4 항에 있어서,
    상기 인덱스 정보에 따른 상기 알람 세팅 테스트 파일의 실행이 완료되면, 다른 인덱스 정보에 따라 상기 알람 세팅 테스트 파일이 실행되도록 상기 실행 모듈에 리셋을 요청하는 리셋 모듈을 더 포함하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  8. 제 4 항에 있어서,
    상기 실행 모듈은,
    마지막 인덱스 정보에 따라 알람 세팅 테스트 파일의 실행이 완료되면, 실행 결과를 미리 마련된 통신 방식으로 외부로 전달하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  9. 제 1 항에 있어서,
    상기 실행 결과는 CPU 최소 부하, CPU 최대 부하, 및 에러훅 호출 횟수를 포함하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  10. 제 9 항에 있어서,
    상기 실행 모듈은,
    상기 CPU 최소 부하, 상기 CPU 최대 부하, 및 상기 에러훅 호출 횟수를 기설정된 기준치와 비교하여 기준치 적합여부를 판단하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  11. 제 1 항에 있어서,
    오토사 운영체제의 태스크와 연결되는 알람 정보를 입력받고 알람 정보를 이용하여 알람 세팅 파일을 생성하는 제작 툴을 더 포함하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
  12. 제 11 항에 있어서,
    상기 알람 세팅 파일의 오프셋값을 오프셋 변수값으로 보정하여 상기 알람 세팅 테스트 파일을 생성하는 보정부를 더 포함하는 것을 특징으로 하는 오토사 운영체제의 알람 오프셋 최적화 장치.
KR1020190162688A 2019-12-09 2019-12-09 오토사 운영체제의 알람 오프셋 최적화 장치 KR102188738B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020190162688A KR102188738B1 (ko) 2019-12-09 2019-12-09 오토사 운영체제의 알람 오프셋 최적화 장치
US16/951,744 US11847867B2 (en) 2019-12-09 2020-11-18 Alarm offset optimization apparatus of AUTOSAR operating system
DE102020132180.5A DE102020132180A1 (de) 2019-12-09 2020-12-03 Alarmversatzoptimierungsvorrichtung eines AUTOSAR-Betriebssystems
CN202011401113.4A CN113032204B (zh) 2019-12-09 2020-12-04 汽车开放系统架构操作系统的警报偏移优化装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190162688A KR102188738B1 (ko) 2019-12-09 2019-12-09 오토사 운영체제의 알람 오프셋 최적화 장치

Publications (1)

Publication Number Publication Date
KR102188738B1 true KR102188738B1 (ko) 2020-12-08

Family

ID=73779067

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190162688A KR102188738B1 (ko) 2019-12-09 2019-12-09 오토사 운영체제의 알람 오프셋 최적화 장치

Country Status (4)

Country Link
US (1) US11847867B2 (ko)
KR (1) KR102188738B1 (ko)
CN (1) CN113032204B (ko)
DE (1) DE102020132180A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7243459B2 (ja) * 2019-05-31 2023-03-22 株式会社デンソー 車両用装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005182813A (ja) * 2003-12-23 2005-07-07 Hewlett-Packard Development Co Lp 負荷の適用によるコンピュータシステムのテスト方法およびテストシステム
KR20080068385A (ko) * 2007-01-19 2008-07-23 슈어소프트테크주식회사 소프트웨어 테스트 시스템, 방법 및 그 방법을 실행하기위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체
KR20120060435A (ko) 2010-12-02 2012-06-12 재단법인대구경북과학기술원 운영체제 태스크 프레임워크의 자동 생성 방법 및 시스템
KR20160071260A (ko) * 2014-12-11 2016-06-21 현대자동차주식회사 Autosar 기반 차량 ecu 상태 관리 방법
KR20170111630A (ko) * 2016-03-29 2017-10-12 현대오트론 주식회사 오토사 운영체제의 태스크 분배 방법 및 그 장치
JP2018081479A (ja) * 2016-11-16 2018-05-24 富士通株式会社 負荷制御プログラム、負荷制御装置及び負荷制御方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060117031A (ko) * 2005-05-12 2006-11-16 문형식 피엘씨용 모니터링시스템과 이에 구현되는통신데이타처리방법
JP2008224336A (ja) * 2007-03-09 2008-09-25 Sharp Corp アラーム装置、該アラーム装置を備えた携帯通信装置、アラーム装置制御方法、アラーム装置制御プログラムおよび該プログラムを記録したコンピュータ読み取り可能な記録媒体
DE102010001596A1 (de) 2010-02-04 2011-08-04 Robert Bosch GmbH, 70469 Verfahren zum Betrieb eines zeitgesteuerten Bussystems
KR101593571B1 (ko) * 2014-07-16 2016-02-18 현대오트론 주식회사 차량 전자제어유닛의 이상 진단을 위한 블랙박스장치 및 이의 제어 방법
DE102015117976A1 (de) * 2015-10-22 2017-04-27 Knorr-Bremse Systeme für Nutzfahrzeuge GmbH Verfahren und Vorrichtung zum Steuern eines Warnmoduls
KR101856857B1 (ko) * 2016-09-09 2018-05-11 현대오트론 주식회사 메시지 통신 부하 제어 장치 및 방법
DE102016119320A1 (de) * 2016-10-11 2018-04-12 Dspace Digital Signal Processing And Control Engineering Gmbh Verfahren zum Konfigurieren eines realen oder virtuellen elektronischen Steuergerätes
US10031740B2 (en) * 2016-10-24 2018-07-24 Lear Corporation Method for programming vehicle electronic control modules
US10893144B2 (en) * 2016-10-27 2021-01-12 Samsung Electronics Co., Ltd. Electronic apparatus and control method thereof
KR102131982B1 (ko) * 2018-05-31 2020-07-08 현대오트론 주식회사 차량용 소프트웨어 진단 시스템 및 그것의 동작 방법
US11129024B2 (en) * 2018-08-21 2021-09-21 Continental Teves Ag & Co. Ohg Vehicle-to-X communication device and method for realizing a safety integrity level in vehicle-to-X communication
US11132440B2 (en) * 2018-11-01 2021-09-28 Foundation Of Soongsil University-Industry Cooperation Hybrid trust execution environment based android security framework, android device equipped with the same and method of executing trust service in android device
US11366689B2 (en) * 2019-02-26 2022-06-21 Nxp Usa, Inc. Hardware for supporting OS driven observation and anticipation based on more granular, variable sized observation units
EP3848763B1 (de) * 2020-01-08 2022-12-21 Elektrobit Automotive GmbH Qualifizierung eines gerätetreibers für ein gerät
KR102418059B1 (ko) * 2020-12-08 2022-07-06 현대오토에버 주식회사 차량의 이종 제어기간 통신 응답시간 추정 장치 및 방법
KR102485288B1 (ko) * 2020-12-15 2023-01-04 현대오토에버 주식회사 차량용 제어기 및 그것의 운영체제 스케쥴링 방법
DE102020133748B4 (de) * 2020-12-16 2022-12-08 Lisa Dräxlmaier GmbH Fahrzeugsteuergerät mit synchronem treiber
KR102497258B1 (ko) * 2020-12-16 2023-02-06 현대오토에버 주식회사 차량용 운영체제의 태스크 실행 시스템 및 방법
EP4060487A1 (en) * 2021-03-17 2022-09-21 Aptiv Technologies Limited Electronic control unit, vehicle comprising the electronic control unit and computer-implemented method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005182813A (ja) * 2003-12-23 2005-07-07 Hewlett-Packard Development Co Lp 負荷の適用によるコンピュータシステムのテスト方法およびテストシステム
KR20080068385A (ko) * 2007-01-19 2008-07-23 슈어소프트테크주식회사 소프트웨어 테스트 시스템, 방법 및 그 방법을 실행하기위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체
KR20120060435A (ko) 2010-12-02 2012-06-12 재단법인대구경북과학기술원 운영체제 태스크 프레임워크의 자동 생성 방법 및 시스템
KR20160071260A (ko) * 2014-12-11 2016-06-21 현대자동차주식회사 Autosar 기반 차량 ecu 상태 관리 방법
KR20170111630A (ko) * 2016-03-29 2017-10-12 현대오트론 주식회사 오토사 운영체제의 태스크 분배 방법 및 그 장치
JP2018081479A (ja) * 2016-11-16 2018-05-24 富士通株式会社 負荷制御プログラム、負荷制御装置及び負荷制御方法

Also Published As

Publication number Publication date
US20210174606A1 (en) 2021-06-10
US11847867B2 (en) 2023-12-19
CN113032204B (zh) 2024-10-01
CN113032204A (zh) 2021-06-25
DE102020132180A1 (de) 2021-06-10

Similar Documents

Publication Publication Date Title
Herbst et al. BUNGEE: an elasticity benchmark for self-adaptive IaaS cloud environments
CN110175110B (zh) 压力测试方法、装置、系统、设备及计算机可读存储介质
US20180351842A1 (en) Systems and methods for live testing performance conditions of a multi-tenant system
US10067848B2 (en) Methods and systems for benchmarking web browser performance
US8719789B2 (en) Measuring coupling between coverage tasks and use thereof
CN109117141B (zh) 简化编程的方法、装置、电子设备、计算机可读存储介质
CN104834602B (zh) 一种程序发布方法、装置和程序发布系统
US20120233614A1 (en) Measuring coupling between coverage tasks and use thereof
JP2015133112A (ja) ジョブスケジューリング方法、データアナライザ、データ解析装置、コンピュータシステム及びコンピュータ可読媒体
CN109324962B (zh) 一种基于云物联技术的应用程序的测试方法及设备
KR20200074715A (ko) 검증용 주석 처리 작업을 이용한 실전용 주석 처리 작업의 검증 방법 및 장치
CN113515549B (zh) 财务数据查询方法、装置及可读存储介质
KR102188738B1 (ko) 오토사 운영체제의 알람 오프셋 최적화 장치
CN110457118A (zh) 任务处理方法、装置、计算机设备及存储介质
CN109144846B (zh) 用于测试服务器的测试方法和装置
CN110825425A (zh) 配置数据管理方法及装置、电子设备、存储介质
EP3734460B1 (en) Probabilistic software testing via dynamic graphs
WO2012036304A1 (ja) 動作検証支援装置、動作検証支援方法、及び動作検証支援プログラム
US20150089481A1 (en) Methods, systems and computer-readable media for quantifying a bug detection efficiency of a bug prediction technique
US20160004583A1 (en) System for project management from non-function evaluation, method for project management from non-function evaluation, and program for project management from non-function evaluation
CN116205697A (zh) 用于虚拟公有云的资源推荐方法和资源推荐装置
JP5294675B2 (ja) ソフトウェアマイグレーションシステム及び方法
CN110795441B (zh) 报表数据处理方法、装置、设备及存储介质
US9195515B1 (en) Method and system for process load balancing
US11119763B2 (en) Cognitive selection of software developer for software engineering task

Legal Events

Date Code Title Description
GRNT Written decision to grant