본문 바로가기

정리/IT공부

코딩 규칙에 대한 글을 읽고 찾은 몇가지 사이트다

728x90

임베디드 시장에는 크게 세 가지 코딩 룰이 있다.

CERT-C, MISRA-C , JSF(Joint Strike Fighter) Air vehicle c++ standard 가 그것들이다.

 

 

  분야 
 CERT-C 모든 C 소프트웨어 
 MISRA-C 자동차, 항공, 우주 통신 분야 (제조업에 전체적을 포진)
 JSF c++ standard 전투기, 폭격기 등 미영 항공기 ... 

 

<CERT-C>

https://www.securecoding.cert.org

카네기 멜론 소속에서 운영하는 시큐어 코딩 가이드가 있는 사이트다.

(cert : computer emergency response team , 카네기 멜론대에 있는 팀을 말하는데 흔히 산업에서는 불특정 침해 대응팀으로 알려져있다.)

c, c++ , Java, android  등에 대한 권고 사항이 있다. 예제도 있으니 참고하기 좋음

CERT-C는 ISO/IEC TS 17961 C Secure Coding Rules로 등록되어 있다. 기본적으로  c programming standard인  ISO 9899를 따르고 있다.

 

<MISRA-C>

http://caxapa.ru/thumbs/468328/misra-c-2004.pdf

2004~2008년도 표준이다. 현재는 바뀌었다.

마찬가지로 ISO 9899를 따른다.

MISRA-C는 ISO 표준으로 채택되어 있는지는 불분명하지만 관련 ISO 표준은 있다.

(ISO 26262 : 자동차에 탑제되는 SW의 오류 방지를 위해 제정한  국제 안전 표준 규격)

 

 

<JSF C++ standard>

http://www.stroustrup.com/JSF-AV-rules.pdf

2005년 기준의 표준이다. 현재는 표준 개정이 이루어 졌는지 확인이 필요하다.

마찬가지로 ISO 9899를 참조했지만 정확히 따랐는지는 확인할 필요가 있다.

 

 

이러한 코딩 규격은 산업 SW 생산품에 대한 신뢰성을 향상시키고자 하는데 그 의의가 있다. 문제는 이러한 규격은 생산성을 떯어트리기도 하는데 모든 코딩 규격이 그런 것은 아니므로 때로는 따르는 것이 바람직하고 더더욱이 국제 시장에 제품을 내려면 이러한 표준을 따르는 것이 마땅하다. 특히 생명과 직결되는 SW의 경우 더욱 그렇다.