programing

C++에서 안전 중요 소프트웨어를 위한 공식 방법

padding 2023. 10. 30. 20:47
반응형

C++에서 안전 중요 소프트웨어를 위한 공식 방법

C를 살펴보면 C는 코드 내에서 사용할 수 있는 형식적인 방법(frama-c, VCC, verifast)에 대한 지원이 좋습니다.C++는 내가 아는 한 비교할 만한 것이 없는 것 같습니다.

C++로 작성된 안전에 중요한 소프트웨어에 대한 추론에는 어떤 공식적인 방법이 있습니까?

저와 함께 일하는 의료 회사는 CoverityKlocwork를 사용하여 자원 유출과 초기화되지 않은 포인터 사용과 같은 문제가 있는지 코드를 확인합니다.

그러나 이러한 도구는 안전 중요 코드의 표준이 아닌 도구입니다.

MISRA는 C++에 대한 표준을 연구해왔습니다.그들은 C way back으로 시작했고, 약 5년 전부터 C++에 대한 작업을 시작했습니다.한 가지 큰 문제는 예를 들어, C++에 대한 MISRA 표준에 템플릿을 사용해서는 안 된다고 되어 있다는 것입니다.이것은 C++에서 할 수 있는 것을 정말로 제한합니다.하지만 그 문서를 출발점으로 삼을 수도 있습니다.예를 들어 소프트웨어에 사용되는 템플릿을 표준 라이브러리에 제공되는 템플릿과 부스트로 제한할 수 있습니다.

Klocwork는 MISRAC C++를 위한 확장 기능이 있음을 참고합니다.

그러나 좋은 코드를 작성하는 가장 좋은 방법 중 하나는 단위 테스트와 통합 테스트로 테스트하는 것입니다.저는 수년간 이것이 대부분의 다른 방법들보다 훨씬 더 신뢰할 수 있다는 것을 발견했습니다.

언급URL : https://stackoverflow.com/questions/24899711/formal-methods-in-c-for-safety-critical-software

반응형