콘텐츠로 건너뛰기
Home » MISRA-C의 두번째 개정판MISRA-C:2004

MISRA-C의 두번째 개정판MISRA-C:2004

MISRA-C:2004는 MISRA-C의 두번째 개정판(Guidelines for the use of the C language in critical systems)으로 자동차 뿐만 아니라 안전에 민감한 시스템(Critical System)에 사용될 수 있도록 만들어 졌습니다. MISRA-C:2004는 현재 높은 소프트웨어 신뢰성이 필요한 항공, 자동차, 우주, 원전 사업 등에 가장 널리 사용되고 있습니다. 총 141개의 룰이 있으며, 121개의 필수 룰과 20개의 권고 룰로 구성되어 있습니다. 각각의 룰들은 아래의 이미지에서 확인할 수 있듯이 “Environment” 부터 “Run-time failure”까지 21개의 그룹으로 구성되어 있습니다.

룰 가운데, 이번 포스트를 통해 Environment와 Language Extensions에 대해 알아보겠습니다.

Environment

Rule1.1 All code shall conform to ISO 9899:1990 “Programming languages – C”, amended and corrected by ISO/IEC 9899/COR1:1995, ISO/IEC 9899/AMD1:1995, and ISO/IEC 9899/COR2:1996.

(필수)모든 코드는 ISO/IEC 9899:1990, Programming language – C (ISO/IEC 9899/COR 1:1995, ISO/IEC 9899/AMD 1:1995 및 ISO/IEC 9899/COR 2:1996에 의해서 추가 및 개정된 것)를 따라야 한다.

Rule1.2 No reliance shall be placed on undefined or unspecified behavior.

(필수) 미 정의 또는 미 규정 된 동작에 의존해서는 안 된다.

Rule1.3 Multiple compilers and/or languages shall only be used if there is a common defined interface standard for object code to which the languages/compilers/assemblers conform.

(필수) 여러 개의 언어나 컴파일러를 사용할 경우, object code에 대한 공통적인 인터페이스가 있어야 한다.

Rule1.4 The compiler/linker shall be checked to ensure that 31 character significance and case sensitivity are supported for external identifiers.

(필수) 컴파일러나 링커가 외부 식별자에 대하여 최대 31문자까지 지정이 가능하고, 대문자/소문자의 구분을 지원하고 있는지 검토되어야 한다.

Rule1.5 Floating-point implementations should comply with a defined floating-point standard.

(권장) 부동소수점의 사용은 정의된 부동소수점 규격에 따라야 한다.

Language extensions

Rule2.1 Assembly language shall be encapsulated and isolated.

(필수) 어셈블리 언어는 캡슐화되어 격리되어야 한다.

Rule2.2 Source code shall only use /* … */ style comments.

(필수) 소스 코드에는  /*…*/ 스타일의 주석 표기법 만을 사용해야 한다.

Rule2.3 The character sequence /* shall not be used within a comment.

(필수) 주석의 시작은 /*에서 */로 끝나야 한다. 중간에 /*이 포함되어 있으면 안된다.

Rule2.4 Sections of code should not be “Commented out?”

(권장) 코드의 일부를 코멘트아웃 해서는 안된다. 필요 시 조건부 컴파일(#if…#endif)를 사용한다.

Send us a message!

앞선 품질, 끊임없는 도전, 정직한 기술로 함께합니다.
문의 글을 작성해 주시면, 담당자 확인 후 빠르게 연락드립니다.

대표전화: (+82)02-420-3203

FAX: (+82)02-407-3511

05770 서울특별시 송파구 오금로 422, 연암빌딩 4F~6F




FAMILY SITE

advanced-floating-content-close-btn