목록2024/01/16 (2)
Machineboy空
프로세스 동기화 기법은 여러가지가 있지만 그중 대중적으로 알려진 뮤텍스 락, 세마포, 모니터 프로그램 언어, 코드 짜진 것 보고 이해해보는 것도 좋은 방법 실행 순서를 위한 동기화 상호 배제를 위한 동기화 뮤텍스 락 (Mutex Lock) 상호 배제를 위한 동기화 도구(자물쇠 역할) 탈의실 = 1번에 1명만 이용할 수 있는 공유 자원, 임계 구역 손님 = 프로세스 탈의실이 이용중이라는 표시 = 자물쇠 (뮤텍스 락) 뮤텍스 락의 단순한 형태: 전역 변수 하나, 함수 두 개 자물쇠 역할: 프로세스들이 공유하는 전역 변수 lock 임계 구역을 잠그는 역할: acquire함수 임계 구역의 잠금을 해제하는 역할: release 함수 acquire 함수 프로세스가 임계 구역에 진입하기 전에 호출 임계 구역이 잠겨있..
프로세스와 스레드의 동기화 (동기화에 스레드도 포함된다) 동시다발적으로 실행되는 프로세스들은 서로 협력하며 영향을 주고 받는다. 이 과정에서 자원의 일관성을 보장해야 한다. 동기화란 무엇인지, 동기화가 왜 필요한지, 동기화를 하지 않으면 어떤 문제가 발생하는지 알아보자! 동기화의 의미 공동의 목적을 위해 동시에 수행되는 프로세스. ex. 워드 프로세서 맞춤법 검사 프로세스 입력 내용을 화면에 출력하는 프로세스 등 아무렇게나 마구 실행하면 안되고, 올바른 수행을 위해 프로세스들은 동기화되어야 한다. (프로세스)동기화란? 프로세스들의 수행 시기를 맞추는 것 실행 순서 제어: 프로세스를 올바른 순서대로 실행하기 상호 배제: 동시에 접근해서는 안되는 자원 하나의 프로세스만 접근하게 하기 *실행의 문맥을 갖는 모..