두개이사의 concurrent한 스레드(프로세스)들이 공유된 자원에 접근하려고 할 때 동기화 메커니즘 없이 접근해 결과값에 영향
을 줄 수 있는 상태.
(데이터의 무결성 관점
에서 중요하다)
프로그램 개발 시 디버깅 시에는 문제점이 보이지 않고, 사용하다가 어느순간 우연히 발견할 수 있다. -> ㅈ됨
ex ) 계좌에 1000원있는데, A,B가 동시에 그 계좌에서 1000원을 출금하려고 하면 한쪽은 안돼야하는데 둘다 돼버리면 골치아프다
커널작업을 수행하는 중에 인터럽트 발생
인터럽트
가 발생하여 같은 데이터를 조작
프로세스가 System Call 하여 커널모드로 진입하여 작업을 수행하는 도중 문맥교환
발생
같은 데이터를 조작
멀티 프로세스 환경에서 공유 메모리 내의 커널 데이터에 접근할 때