rwlock(3)
-
운영체제 락 개념과 동기화 기법 (마무리: 락(Lock)과 동기화 정리)
📌 마무리: 락(Lock)과 동기화 정리멀티스레딩 환경에서는 여러 개의 스레드가 동시에 실행되면서 공유 자원(Shared Resource) 에 접근하게 됩니다.이 과정에서 데이터 무결성(Data Integrity) 을 보장하고, 경쟁 상태(Race Condition) 를 방지하기 위해 락(Lock) 을 사용하여 동기화를 수행합니다.이번 학습에서는 뮤텍스(Mutex), 재진입 가능 락(RLock), 읽기-쓰기 락(RWLock), 스핀락(Spinlock), 세마포어(Semaphore) 등을 다루며,각 기법이 어떤 상황에서 적절한지, 어떤 문제점을 가질 수 있는지, 어떻게 해결해야 하는지 를 배우고 실습하였습니다.✔ 락을 활용하여 동기화를 이해하기🔹 락(Lock)이 필요한 이유멀티스레드 프로그래밍에서 여러..
2025.02.26 -
운영체제 락 개념과 동기화 기법 (Mutex, RLock, RWLock, 스핀락, 세마포어 비교 요약 정리)
🔍 Mutex, RLock, RWLock, 스핀락, 세마포어 비교 요약 정리운영체제(OS)에서 멀티스레딩 동기화 기법으로 사용되는 뮤텍스(Mutex), 재진입 가능 락(RLock), 읽기-쓰기 락(RWLock), 스핀락(Spinlock), 세마포어(Semaphore) 의 차이를 정리했습니다.1. 개념 요약 동기화 기법 개념 특징사용 예시Mutex (뮤텍스)하나의 스레드만 임계 영역 접근 가능다른 스레드는 Lock이 해제될 때까지 대기 (Blocking)단순한 공유 자원 보호RLock (재진입 가능 락)같은 스레드가 여러 번 Lock 가능Lock 획득 횟수만큼 Unlock 필요재귀 호출, OOP에서 동일 객체 내 여러 메서드 사용RWLock (읽기-쓰기 락)여러 개의 스레드가 동시에 읽기 가능, 쓰기는 ..
2025.02.26 -
운영체제 락 개념과 동기화 기법 (2. 기본 락(Lock) / 2-3. 읽기-쓰기 락(Read-Write Lock, RWLock))
📖 2-3. 읽기-쓰기 락(Read-Write Lock, RWLock)읽기-쓰기 락(Read-Write Lock, RWLock)은 읽기 작업은 여러 개의 스레드가 동시에 수행할 수 있지만, 쓰기 작업은 오직 하나의 스레드만 수행할 수 있도록 제한하는 동기화 기법입니다.멀티스레딩 환경에서 읽기 작업이 많고, 쓰기 작업이 상대적으로 적은 경우 성능을 향상시키는 데 유용합니다.✅ 읽기-쓰기 락이란?🔹 기본 개념읽기(Read) 락: 여러 개의 스레드가 동시에 공유 자원을 읽을 수 있음.쓰기(Write) 락: 하나의 스레드만 공유 자원을 수정할 수 있으며, 쓰기 중에는 어떤 스레드도 접근할 수 없음.pthread_rwlock_t 를 사용하여 구현.🔹 읽기-쓰기 락의 필요성일반 Mutex를 사용하면 쓰기뿐만 ..
2025.02.26