안녕하세요.
전 하드웨어 개발자입니다.
먼저 하드웨어 개발자 임을 말하는 이유는 소프트웨어(특히 리눅스)에 관한 지식이 거의 없습니다..
임배디드 리눅스 경험이 없기 때문에 회사들어와서 고생하고 있는데요 ㅠㅠ
소프트웨어 하시는 분들의 조언 받고자 합니다.
제목에서처럼 가끔 커널에서 null pointer dereference를 뿌려주고 모바일 ap가 먹통이 되는데요.
이게 하드웨어에 따라 발생 빈도가 다릅니다.
어떤 하드웨어에선 일주일에 한번 발생하기도 하고.. 현재 불량 ap라 명하는 칩을 사용했을때에는 5시간에 한번 나올때도 있구요..
하드웨어에 따라 발생 빈도가 다르니 소프트웨어팀에서 하드웨어를 고쳐야 한다고 하는데..
하드웨어를 어떤식으로 디버깅해야할 지 감조차 오질 않아요..
그래서 구글링을 열심히 해도 소프트웨어 측면에서만 설명이 나오더라구요..
사실 제 대학 다닐때의 적은 경험으로는 저런 메모리 접근 오류의 경우 포인터가 잘못된 번지를 가리거나 혹은 에러처리가 미숙해서 발생했었는데요..
예를 들면 eeprom에 데이터를 저장할때 데이터가 너무 커서 다른 번지에 접근해서 mcu가 뻑난다거나..
무선 통신에서 데이터에 잡음이 껴서 bit단위 데이터가 한칸씩 밀려 데이터가 변질되거나..
솔직한 제 입장에서는 소프트웨어에서 에러처리를 해야된다고 생각하는데..
소프트웨어 하시는 분들 입장에서는 어떻게 생각이 되는지요?
제가 입사 경험이 얼마되지 않아 어떤식의 접근을 해야되는지 모르겠습니다.
조언을 부탁드립니다.