반응형 mutex2 뮤텍스와 세마포어, 동기화 문제 해결 도구 동기화 도구 필요성과 이해 동기화 문제 프로세스가 공유하는 데이터를 병렬로 처리하게 될 때 문제가 발생할 수 있습니다. 실행 순서가 뒤바뀌거나 다른 프로세스가 한번 처리될 때 2번이 처리되는 순간 결과는 완전히 달라집니다. 이런 경쟁 상황을 막기 위해 프로세스 간 동기화가 필요합니다. 임계 구역 문제 프로세스 처리 루틴에는 임계 구역이라는 부분을 가지고 있습니다. 적어도 하나 이상의 프로세스와 공유 데이터를 접근 또는 갱신합니다. 임계 구역에서는 동시에 두 개 이상의 프로세스가 실행되지 못해야 합니다. 각 프로세스들이 진입 요청을 하고 임계 구역에 진입을 해야 합니다. 임계 구역에 대한 해결 조건 상호 배제 진행 한정된 대기 상호 배제, 한 프로세스가 자신의 임계 구역에서 실행 시 다른 프로세스는 그 자.. 2021. 11. 14. 스레드와 C언어 스레드 pthread 스레드 개념 스레드는 fork 함수가 하는 것처럼 자식 프로세스처럼 역할을 하지만 경량화된 형태이다. 새로운 프로세스에 비해 적은 비용으로 생성과 관리가 가능하다. 스레드는 하나의 실행 흐름을 말하며 환경에 따라 여러 스레드를 동시에 실행이 가능하다. 하나의 프로세스에서 여러 개의 스레드가 서로 자원과 메모리를 공유하여 작동한다 스레드 관리 스레드를 누가 관리하느냐에 따라서 이를 나눌 수 있다. 큰 차이가 없어 보이나 그 방식과 원리에서 보면 큰 차이가 있다. 사용자 수준의 스레드 커널 밖에서 구현된 스레드로 같은 메모리에서 스레드가 생성 및 관리되어 속도가 빠르다. 그러나 하나의 스레드가 시스템 호출이나 장애 등으로 중단이 되면 나머지 모두도 중단이 된다. 브라우저를 사용하다 하나의 탭이 멈추면 나머지.. 2021. 6. 19. 이전 1 다음 반응형