12장 프로세스 동기화

12-1 동기화란 동기화의 의미 동기화(synchronization): 작업들 사이의 수행 시기를 맞추는 것 실행의 흐름을 갖는 모든 것(프로세스, 스레드 등)은 동기화의 대상 실행 순서 제어: 프로세스를 올바른 순서대로 실행하기 상호 배제: 동시에 접근해서는 안 되는 자원에 하나의 프로세스만 접근하게 하기 생산자와 소비자 문제 생산자와 소비자가 동시에 접근해서는 안 되는 자원에 동시에 접근하면 결과값이 매번 달라지거나 이상해진다. 공유 자원과 임계 구역 공유 자원(shared resource): 동시에 실행되는 프로세스가 사용하는 공동의 자원(전역 변수, 파일, 입출력장치 등) ...

2026년 6월 30일 · 4 분 · 배준수

부록 A 동시성2 (3)

책너두 5기 47일차 로버트 C. 마틴의 클린코드 p. 429~ p.436 내용정리 부록 A 동시성 2 작업 처리량 높이기 동기화 영역은 언제나 작을수록 좋다. 작업 처리량 계산 - 단일 스레드 환경 다음을 가정한다. 페이지를 읽어오는 평균 I/O 시간 : 1초 페이지를 분석하는 평균 처리 시간: 0.5초 처리는 CPU 100%를 사용, I/O는 CPU 0% 사용 스레드 하나가 N 페이지를 처리한다면 총 실행 시간은 1.5초 * N이다. 작업 처리량 계산 - 다중 스레드 환경 3개의 스레드를 사용한다면? 페이지 읽기 한 번은 페이지 분석 두 번과 겹침이 가능하므로 일 초마다 두 페이지를 처리한다. 따라서 단일스레드보다 처리율이 세 배 높다. ...

2023년 9월 29일 · 2 분 · 배준수