CS/운영체제2022. 4. 4. 16:10[운영체제] 경쟁 상태(Race Condition)

✔︎ 경쟁 상태(Race Condition)란 ? 공유 자원에 대해 여러 프로세스가 동시에 접근할 때 결과값에 영향을 줄 수 있는 상태 동시 접근 시 자료의 일관성을 해치는 결과가 나타날 수 있다. 경쟁 상태도 교착 상태의 종류 중에 하나이다. ✔︎ Race Condition이 발생하는 경우 1. 커널 작업을 수행하는 중에 인터럽트 발생 문제점 : 커널 모드에서 데이터를 로드해 작업을 수행하다가 인터럽트가 발생해 같은 데이터를 조작하는 경우 해결법 : 커널모드에서 작업을 수행하는 동안 인터럽트를 disable 시켜 CPU 제어권을 가져가지 못하도록 한다. 2. 프로세스가 'System Call'을 하여 커널 모드로 진입하고 작업을 수행하는 도중 문맥 교환이 발생할 때 문제점 : 프로세스1이 커널모드에서 ..

image