تخطي الملاحة الملاحة الرئيسية الملاحة الجانبية معلومات للتواصل

رأي

ECU 업데이트 와 소프트웨어 버그 그리고 정비사

يونيو 3, 2026, 6:49 ص, أربعاء, KST. سنجو مون

오래전 정보통신부가 있던 시절, 한.중.일 동북아 공개SW 활성화 포럼에서 한국 측 멤버로 활동했었다. 최근 ECU 업데이트후 시동이 안 걸린다 등 다양한 형태의 이전 기억을 떠 올리게 하고 있다. 그래서 그냥 생각을 공유 해 본다. 이제는 정비사도 기본적인 소프트웨어 개발. 업데이트. 패칭. 버전관리 등 가장 기본적인 개념만 이해해도 좋을 듯하다. 피하기 힘든 시기가 왔기 때문이다. 뭔가 하는데 암흑 속에서 시키는 대로 하는 것과 큰 그림을 알고 작업하는 것은 상당한 차이가 있을 것이다.

2 86
ECU 업데이트 와 소프트웨어 버그 그리고 정비사, 1947년 하바드대학 마크2 컴퓨터 개발 엔지니어가 발견한 버그, 테이프로 붙여서 기록을 남긴것 - 컴퓨터 산업에서 최초의 '버그' 로 알려진것이다. 이때부터 컴퓨터업계에서는 에러를 'Bug, 버그' 라고 하였다고 한다. 그리고 '버그' 를 찾아내서 처리하는것을 'Debug' 이라고 한다. Source: https://americanhistory.si.edu/collections/object/nmah_334663#:~|بيكومكار  (bekomcar)

1947년 하바드대학 마크2 컴퓨터 개발 엔지니어가 발견한 버그, 테이프로 붙여서 기록을 남긴것 - 컴퓨터 산업에서 최초의 '버그' 로 알려진것이다. 이때부터 컴퓨터업계에서는 에러를 'Bug, 버그' 라고 하였다고 한다. 그리고 '버그' 를 찾아내서 처리하는것을 'Debug' 이라고 한다. Source: https://americanhistory.si.edu/collections/object/nmah_334663#:~

ECU 업데이트 와 소프트웨어 버그 그리고 정비사, 실제 베콤카에서 관리하는 서버에서 프로그램을 업데이트 하는 과정이다. 자동차 ECU에 사용되는 대부분의 소프트웨어는 공개소프트웨어 기반의 임베디드 시스템이다. 상당히 복잡한 개발자 생태계가 함께 하고 있다. ECU 업데이트 하라, 혹은 ECU 업데이트후 시동이 안걸린다 등은 모두다 버전관리와 호환성 그리고 버그등의 이유때문이다. 화면중 마지막에 linux-image-6.8.0-117-generic 은 모두다 특정 프로그램의 버전관리 번호 이다.|بيكومكار  (bekomcar)

실제 베콤카에서 관리하는 서버에서 프로그램을 업데이트 하는 과정이다. 자동차 ECU에 사용되는 대부분의 소프트웨어는 공개소프트웨어 기반의 임베디드 시스템이다. 상당히 복잡한 개발자 생태계가 함께 하고 있다. ECU 업데이트 하라, 혹은 ECU 업데이트후 시동이 안걸린다 등은 모두다 버전관리와 호환성 그리고 버그등의 이유때문이다. 화면중 마지막에 linux-image-6.8.0-117-generic 은 모두다 특정 프로그램의 버전관리 번호 이다.

ECU 업데이트 와 소프트웨어 버그 그리고 정비사, 역시 베콤카에서 작업중인 시스템 프로그램 업데이트 과정, 자동차 제조사 연구실, 전산팀, 등급별 A/S 센터 등에서는 이렇게 관리된 프로그램을 부여된 권한별 (허락된 범위내) 업데이트등 작업이 가능하다. 이 화면은 기존의 pip 프로그램의 버전 26.1 업데이트하는데, 먼저 기존에 설치된 버전 26.1을 확인하고 호환성 검증후 26.1을 삭제하고 26.1.1을 설치하는 과정이다. 이러한 과정에서 기존 상당히 많은 다른 프로그램 코드와 충돌이 생기면 (예를 들어) ECU 업데이트 혹 교체후에 시동이 안걸리거나 온갓 예상치 못한 이슈가 발생하기도 한다. 그리고 이러한 버그 기록, 패치기록 및 업데이트 서버 내용등은 모두다 '보안등급별' 로 관리되고 외부공개를 하지 않는다.|بيكومكار  (bekomcar)

역시 베콤카에서 작업중인 시스템 프로그램 업데이트 과정, 자동차 제조사 연구실, 전산팀, 등급별 A/S 센터 등에서는 이렇게 관리된 프로그램을 부여된 권한별 (허락된 범위내) 업데이트등 작업이 가능하다. 이 화면은 기존의 pip 프로그램의 버전 26.1 업데이트하는데, 먼저 기존에 설치된 버전 26.1을 확인하고 호환성 검증후 26.1을 삭제하고 26.1.1을 설치하는 과정이다. 이러한 과정에서 기존 상당히 많은 다른 프로그램 코드와 충돌이 생기면 (예를 들어) ECU 업데이트 혹 교체후에 시동이 안걸리거나 온갓 예상치 못한 이슈가 발생하기도 한다. 그리고 이러한 버그 기록, 패치기록 및 업데이트 서버 내용등은 모두다 '보안등급별' 로 관리되고 외부공개를 하지 않는다.

ECU 업데이트 와 소프트웨어 버그 그리고 정비사, 각 제조사별 개발팀에서 최종 승인된 최종 업데이트 프로그램등은 '패칭서버' 에 관리되면, 등급별로 A/S센터 혹 정비소 혹 진단기 기능별 등 에 따라서 업데이트가 가능하다. 그리고 정비소 진단기에서 패칭서버로 접속하여 업데이트 할 때 모든 데이터는 암호화되어야 한다. 암호화되어 데이터 전소하는 가장 일반적인 방법은 SSH 를 사용한다. 하지만 현재 대부분은 ECU 업데이트 등에 보안서버를 사용하고 있는지 의문이다. 차량 해킹으로 이어지면 상당히 곤란한 상황이 될 수 있다.|بيكومكار  (bekomcar)

각 제조사별 개발팀에서 최종 승인된 최종 업데이트 프로그램등은 '패칭서버' 에 관리되면, 등급별로 A/S센터 혹 정비소 혹 진단기 기능별 등 에 따라서 업데이트가 가능하다. 그리고 정비소 진단기에서 패칭서버로 접속하여 업데이트 할 때 모든 데이터는 암호화되어야 한다. 암호화되어 데이터 전소하는 가장 일반적인 방법은 SSH 를 사용한다. 하지만 현재 대부분은 ECU 업데이트 등에 보안서버를 사용하고 있는지 의문이다. 차량 해킹으로 이어지면 상당히 곤란한 상황이 될 수 있다.

ECU 업데이트 와 소프트웨어 버그 그리고 정비사, 진단기에서 스캔되는 모든 고장코드 역시 프로그램 기반으로 개발자가 이슈별 에러코드 지정하고 설명을 해준다. 그리고 특정 값을 미시 세팅해두고 범위를 벗어나면 심각성 등 이슈 구분에 따라서 1번 혹 2번 등 드라이브 사이클 기준으로 '임시고장코드, 현제고장코드, 영구적고장코드' 등으로 표시해준다.|بيكومكار  (bekomcar)

진단기에서 스캔되는 모든 고장코드 역시 프로그램 기반으로 개발자가 이슈별 에러코드 지정하고 설명을 해준다. 그리고 특정 값을 미시 세팅해두고 범위를 벗어나면 심각성 등 이슈 구분에 따라서 1번 혹 2번 등 드라이브 사이클 기준으로 '임시고장코드, 현제고장코드, 영구적고장코드' 등으로 표시해준다.

소프트웨어어 생태계 기본 101

오픈소스 (Open Source)

모든 소프트웨어는 구분이 되는데, 여러가지중에서 소스코드가 암호화되어 있는지 이다. 암호화 되어 있지 않는 소프트웨어 코드를 'Open Source' 한국말로 '공개소프트웨어'  라고 한다. 자동차 ECU등에 사용되는 대다수는 오픈소스 이다. 대표적인것이 BSD & Linux등이다. 베콤카의 전문 영역이다.

임베디드 (Embedded System)

또 하나의 구분은 특정 목적을 위해 특정 프로그래밍을 하는데 '임베디드' 프로그램 이라고 한다. 무척 오래된 구석기 시대의 개념이다. 대부분 자동차 ECU (ECM, ABS, SRS, TCM등) 는 임베디드 시스템이다. 이러한 임베디드 시스템은 대부분 반도체 칩에 프로그램을 설치한다. 흔히 '굽는다' 라고 하고, 대부분의 경우 그 칩 은 EEPROM 이다. 물론 마이크로칩이나 ASIC (Application-Specific Integrated Circuit) 칩등도 사용된다.

프로그램 개발 & 배포과정

일반적으로 소프트웨는 개별 개발자가 사용하는 '개발서버' 에서 작업을 한다. 개발자별 역할(개발부분)을 수행하여, 통합 버전관리 서버에 올리면 프로젝트 책임자 (PM)은 승인여부 확인후 전체 개발서버로 포팅한다. 여기에서 문제가 없으면 '실전서버, Production Server 나 Patching 서버' 등으로 이전한다. 이 모든 과정에는 전부다 모든 모듈. 프로그램 별 버전이 자동으로 기록되고 언제든지 이전 버전으로 되 돌릴수 있게 관리돤다. 가장 일반적으로 많이 사용되는 버전관리 시스템은 github 이 있다.

사용자별 권한은 필수

모든 프로그램은 전부 권한이 있다. 권한별 허락된 소프트웨어만 접근이 허용된다. 접근이란 '읽기, 쓰기, 편집, 삭제 등' 구체적인 권한에 따른다. 바로 자동차 제조사 A/S센터도 등급벼로 나누어 누구는 ECU 업데이트 되고 안되고 하는 것이 이 때문이다.

보안과 안정적 시스템 관리

기본적으로 모든 사용자는 사전에 인증이 되어야 하고, 사용자별 모든 권한 과 등급 등이 결정된다. 그리고 이러한 인증관리 체계별로 모든것이 이루어 진다. 따라서 최근 미국차량 포함 자동차 제조사에서 사전인증을 요구하는 이유이다. 추가로 민감한 영역 (금융기관, 국가 기밀기관등 포함)에서는 사용자의 컴퓨터환경 (휴대폰, 태블릿, 컴퓨터등) 보안 상태역시 점검 과 승인의 대상이 된다. 즉, 사용자도 인증이 되어야 하며 사용자의 컴퓨터 환경 역시 크래킹 가능성이 없는 깨끗한 환경이어야 한다. 그리고 일련번호, MAC 주소, IP주소 등 다양한 고유한 인식코드와 MFA (다중 인증과정, 현대GSW처럼) 을 하게 한다.

데이터 암호화 & 전송은 기본

모든 데이터가 이동하는데 데이터가 암호화 되어 있거나 아니면 그대로 노출되어 있다. 예를 들어 베콤카 사무실 일산에서 국내 자동차 제조사 진단기 업데이트 서버에 접속한다고 하면 보통 12~20개 서버망을 통과해야 한다. 각 통과시점별로 데이터 노출 확율이 있다. 중간 갈아 타는곳에서 데이터를 가로채는 것이다. 

암호화전송 (SSH등) vs. 누드전송(FTP)

정확한것 아니지만 기존 진단기 및 ECU등 업데이트 등 환경을 보면 상당수는 데이터가 암호화되지 않고 있는것 같다. 이제는 자동차 시동부터 출력 및 대다수 기능이 데이터에 의하여 제어되는데 (CAN 통신 등) 모두 다 소프트웨어 덩어리 이다. 자동차 업계도 이제는 보안에 더 신경써야 하고 정비사 역시 최소한 보안개념 교육도 필요할 듯 하다. 오픈소스 나 임베디드 시스템 패칭서버나 ECU 업데이트 등에 최소한 SSH 프로토콜을 사용해야 한다. 데이터 전송시 암호화지 않는다는것은 상상하기 힘들다.

소프트웨어 특징 및 기본이해도 필요

극한 직업의 자동차 정비인, 얼마전 부터 캔 통신이니 뭐니 하더니 이제는 S/W까지 끼어들고 있다. 정비인은 참 힘든 직업인것은 분명하다. 앞으로의 자동차 사고는 기계적 물리적 사고를 넘어서 ECU 버그 등 소프트웨어 버그때문에 발생하는 사고가 생길것이다. 사실 이미 오래전부터 생기고 있다고 생각한다. 일반인이 모를뿐이다. 내가 모른다고 존재하는것이 없는것은 아니다. 다만 내가 모르는 영역이 있을뿐이다.

소프트웨어 버그 의 유래

아래는 원본 영어를 구글번역기로 번역한것

"American engineers have been calling small flaws in machines "bugs" for over a century. Thomas Edison talked about bugs in electrical circuits in the 1870s. When the first computers were built during the early 1940s, people working on them found bugs in both the hardware of the machines and in the programs that ran them."

"미국 엔지니어들은 100년이 넘는 세월 동안 기계의 작은 결함을 '버그'라고 불러왔습니다. 토머스 에디슨은 1870년대에 전기 회로의 버그에 대해 이야기했습니다. 1940년대 초 최초의 컴퓨터가 만들어졌을 때, 컴퓨터 개발자들은 기계 하드웨어와 프로그램을 실행하는 프로그램 모두에서 버그를 발견했습니다."

"In 1947, engineers working on the Mark II computer at Harvard University found a moth stuck in one of the components. They taped the insect in their logbook and labeled it "first actual case of bug being found." The words "bug" and "debug" soon became a standard part of the language of computer programmers."

"1947년, 하버드 대학교에서 마크 II 컴퓨터를 개발하던 엔지니어들은 부품에 나방이 끼어 있는 것을 발견했습니다. 그들은 나방을 작업일지에 붙이고 '최초로 발견된 버그 사례'라고 기록했습니다. '버그'와 '디버그'라는 단어는 곧 컴퓨터 프로그래머들의 표준 용어가 되었습니다."

References

Grace Murray Hopper,"The First Bug," Annals of the of Computing,vol. 3 #3, 1981, pp. 285-286. P. A.

Kidwell, "Stalking the ElusiveComputer Bug," IEEE Annals of the History of Computing, vo.20, #4, 1998, pp.5-9.

Source: https://americanhistory.si.edu/collections/object/nmah_334663#:~

تحتاج إلى تسجيل الدخول لترك التعليقات.
يونيو 3, 2026, 10:26 ص - سنجو مون moderator  
Craker는 악의적인 사용자, Hacker는 선의적인 사용자 이다. 사이버경찰청 근무자는 Hacker 가 되고 개인정보 탈추하여 범죄에 사용하면 Cracker 인것이다. 하지만 보통은 악의적인 크래커를 그냥 해커 라고 하는것 같다.
|
يونيو 3, 2026, 7:21 ص - سنجو مون moderator  
동북아 공개SW 활성화 포럼 이 기억나는 시간이다.
|
قائمة

معلومات الكاتب

#
  • سنجو مون(SunJoo)
  • bekomcar@gmail.com
  • أنا أحب السيارات بهذه البساطة. خاصة أنني أحب سيارات هوندا وساب ، وأستمتع بصيانة السيارات بنفسي. أيضًا ، أشعر بالسعادة والسعادة عندما تحل مساهمتي في مجموعة متنوعة من نوادي السيارات المشكلات.

رمز الاستجابة السريعة

bekomcar هو شريك حياتك في السيارة المستعملة منذ فترة طويلة

خدمات فحص السيارات المستعملة قبل الشراء وإصلاح السيارات وإعادة بيعها وتصديرها.

بيكومكار (bekomcar)

في أي وقت أراد شراء سيارات مستعملة موثوقة؟ توفر Bekomcar سيارات موثوقة مع تاريخ إصلاح وخدمة فحص احترافية قبل الشراء.


تغيير الزيت وإصلاحه

  1. فحص السيارات المستعملة قبل الشراء
  2. فحص صحة bekomcar
  3. أكاديمية بيكومكار
  4. خدمات السيارات الأخرى ذات الصلة

أصدقاء bekomcar

  1. نادي هوندا يمثل نادي هوندا يمثل كوريا يمثل جميع سيارات هوندا.

حقوق النشر © 2026 بيكومكار (bekomcar)
البنود و الظروف/ الإجمالية/ إمكانية الوصول/ قروض/ اتفاقية ملفات تعريف الارتباط
# 61، Rocketeer، Lafest B، 60-30 جونغانغ رو 1275 بيون جيل ، جانغهانغ دونغ Ilsandong-gu جويانج سي ، جيونج جي دو كوريا