임계 구역(Critical Section) 각 프로세스에서 공유 자원에 접근하는 프로그램 코드 영역
Atomic operation : 원자와 같이 기능적으로 분할할 수 없거나 분할되지 않도록 보증된 조작
자원의 동시 사용을 피하는 기법
pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
...
do {
pthread_mutex_lock(&mutex);
...
//critical section
...
pthread_mutex_unlock(&mutex);
}
공유 자원에 대한 접근을 제한하는 기법