-
Race condition(경쟁 상황)
- 동시에 여러 개의 프로세스가 동일한 데이터에 접근하여 변경하고, 그 결과가 접근 발생 순서에 의존하는 상황
- 이 상황을 방지하기 위해 한 순간에 하나의 프로세스만 데이터를 변경하도록 보장해야 하며, 프로세스들이 동기화되도록 할 필요성
critical section 문제
- 각 프로세스는 자신의 코드 안에 임계 구역(critical section)을 포함하고 있고, 그 안에서 다른 프로세스와의 공유 자원을 변경하는 등의 작업 수행
- 한 프로세스가 자신의 임계 구역에서 수행하는 동안 다른 프로세스는 그들의 임계 구역 안에서 실행할 수 없다.
- 각 프로세스는 임계 구역으로 진입하기 위한 허가 요청을 하는 코드인 entry section과 exit section이 있다.
critical section 해결방법
1. 상호 배제(Mutual Exclusion)
: 한 프로세스가 자신의 임계 구역에서 실행되면 다른 프로세스들은 자신의 임계 구역에서 실행할 수 없다.
'운영체제' 카테고리의 다른 글
Threads 스레드 (0) 2024.02.18 프로세스 (0) 2024.02.18 CH01. 운영체제란? (공룡책) (0) 2024.02.10