[CS 면접 질문/ OS] 동기화와 교착 상태
·
면접 준비/OS
공유 자원메모리나 파일 등의 자원 또는 전역 변수, 입출력장치를 두고 동시에 여러 개의 프로세스 또는 여러 개의 스레드가 실행된다면 일관성의 문제, 레이스 컨디션 문제가 발생할 수 있다.공유자원에 접근하는 코드 중 동시에 실행됐을 때 문제가 발생할 수 있는 영역을 임계 구역(critical section)이라고 한다. 레이스 컨디션위처럼 동시 다발적으로 실행되는 동안에는 언제나 임계 구역을 동시에 실행하지 않도록 유의해야 한다. 그렇지 않으면 데이터의 일관성이 손상이 되며 이를 레이스 컨디션상황 이라고 한다.이러한 레이스 컨디션을 제어하기 위해서 동기화의 개념이 필요하다.동기화(synchronized)실행 순서의 제어를 통해 프로세스 및 스레드를 올바른 순서로 실행해야 하며, 동시에 접근해서는 안되는 자..