CON
Concurrency (CON) - 동시성
프로그램에서 발생하는 동시성(concurrency)과 관련된 내용을 다루는 카테고리입니다.
여러 스레드에서 비트 필드에 접근할 때 데이터 경합을 방지할 것과 같은 프로그램의 동시성과 안전성을 높이기 위해 지켜져야 하는 규칙이 포함되어 있습니다.
Rule Number |
Rule Definition | 설명 |
CON33-C | 라이브러리 함수를 사용할 때 경쟁 상태(race condition)을 피해라 | 다중 스레드 환경에서 표준 C 라이브러리 함수를 사용할 때 발생할 수 있는 경쟁 상태(race condition)를 피하는 것을 목표로 합니다. 다중 스레드 환경에서 사용할 때 주의해야 하는 몇 가지 표준 C 라이브러리 함수들은 다음과 같습니다: strtok() 및 asctime(): 이 함수들은 각각 프로세스별로 함수가 할당한 메모리에 저장된 결과에 대한 포인터를 반환합니다. 여러 스레드가 동일한 함수를 호출하면 경쟁 상태가 발생할 수 있으며, 비정상적인 동작이나 중대한 취약점 (예: 비정상 종료, 서비스 거부 공격, 데이터 무결성 위반)이 발생할 수 있습니다. rand() 및 srand(): 이 함수들은 프로세스별로 상태 정보를 함수가 할당한 메모리에 저장합니다. 여러 스레드가 동일한 함수를 호출하면 이러한 상태 정보를 수정하면서 경쟁 상태(race condition)가 발생할 수 있습니다. |
728x90
'소프트웨어 개발(SW Dev) > Rule(CERT C)' 카테고리의 다른 글
CERT C - API 규칙 목록 (0) | 2024.11.21 |
---|---|
CERT C - MSC 규칙 목록 (2) | 2024.11.20 |
CERT C - ERR 규칙 목록 (0) | 2024.11.17 |
CERT C - SIG 규칙 목 (0) | 2024.11.16 |
CERT C - ENV 규칙 목록 (0) | 2024.11.15 |
댓글