임베디드 시장에는 크게 세 가지 코딩 룰이 있다.
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의 경우 더욱 그렇다.
'정리 > IT공부' 카테고리의 다른 글
속도 측정 원리에 대해 (0) | 2015.10.06 |
---|---|
우분투 리눅스 패키지를 공식적으로 소개하는 페이지 (0) | 2015.10.05 |
linux eclipse 같은 어플 버전별로 프로젝트에서 관리 (0) | 2015.09.29 |
ubuntu vi 전체 유저 설정 방법 (0) | 2015.09.19 |
빠르게! vi (vim)에서 복사하기 (0) | 2015.09.19 |