SW 고장 모드 정리 (유형별)
  • A software deadlock occurs when two or more processes are stuck indefinitely, each waiting for resources held by the other, resulting in a system standstill. This usually happens in concurrent systems with shared resources.
    • 이런 경우가 발생할 것을 어떻게 예측을 해서 문제가 발생하지 않도록 방어로직을 만들지? 이런 것들은 예상해서 찾기도 힘들다.
    • 안드로이드 시스템 코어(시스템서버 AMS - ActivityManagerService -> Lock)와 차량 제어 서비스(HMG Car Service)간 "양방향 통신" 타이밍이 겹치면서 발생하는 데드락(Deadlock). 1. 프로필 전환 완료 시 HMGHomeScreen을 시작하는 시점에, 안드로이드 핵심 프로세스인 AMS(ActivityManagerService)는 수행을 위해 시스템 lock 을 획득한 채로 CarService 에 IPC 호출 2. 동시 타이밍에, Userprofile 앱은 CarService를 통해 SystemServer 내부에 구현된 Userprofile 모듈에 동기 IPC 호출 3. SystemServer는 자신이 보낸 요청의 응답을 기다리고, CarService 도 SystemServer 의 응답을 기다리면서 양쪽 프로레스가 서로 lock 이 풀리는 것을 대기하며 데드락
  • 제어기 버전 차로 인한 문제
  • CCS 요금제에 따른 문제
  • 차종에 따른 문제
  • 사이드 이펙트 (개선점에 의한) - 문제를 일으킨 부분은 수정이 되었으나 예상치 못한 부분에서 사이드 발생
  • 사이드 이펙트 (구조변경에 의한 엮여있는 타 모듈에서 이슈 발생) - 
  • 잠재 이슈
  • 제어기 이슈 (가정했던 조건에서 어긋나게 신호가 올경우. 예를들어 한번만 올줄 알았는데 여러번 온다거나)
    • 제어기가 신호를 그리 준다. 타제어기 동작 사양. 제어기 검토 필요.
    • CCU에서 P3002가 여러번 발생한다. => 방어코드

RC 판단 이유 (유형별)

  • Abnormal case (일상적인 상황에서 일어나지 않는 예외적인 상황)

양산 이후 문제점

  • 공장 양산 시 10,000개당 1개 꼴로 불량이 발생하는 경우, 불량률은 0.01%이며 100PPM수
  • 서버에 있는 데이터는 정상이나, 받은 데이터가 깨졌다. 파일이 깨졌다.

강건화

2026. 10. 5. 08:38 Comment
http://suhpark.tistory.com/1842
PREV 1 2 3 4 ··· 38 NEXT