==> 다음과 같이 동작하도록 코드를 설계하거나 유지보수하는 기법
다수의 CPU가 한개의 메모리를 사용, 4개의 CPU가 병렬로 실행, 만약 시스템의 CPU코어가 하나라면 레이스 컨디션이 발생할 가능성이 떨어짐 (동시성)
선점 스케줄링 : A프로세스가 어떤 함수를 실행도중 선점 스케줄링이 된 상태에서 B프로세스가 함수를 호출하면 레이스 컨디션 발생
인터럽트 발생 : 어떤 함수를 실행하고 있는데 인터럽트가 발생해서 다시 진입을 할때도 레이스 컨디션 발생 가능
유저 프로세스에서의 스레드 핸들링 : 한 개의 파일에 다수의 스레드 접근 가능. 여기서 다수의 스레드가 같은 코드의 구간을 실행할 수 있음. 그 결과 동시성 및 레이스 컨디션이 발생 가능