본문 바로가기

교착상태2

[OS] "Multi Process / Multi Thread” Multi의 의미와 특징 및 차이점 1. Multi Process1-1.  개념두개 이상의 다수의 프로세서(CPU)가 협력적으로 하나 이상의 작업(Task)을 동시에 처리하는 것(병렬적 처리)각 프로세스 간 메모리 구분이 필요하거나 독립된 주소 공간을 가져야 할 경우 사용한다.즉, 멀티 프로세스는 운영체제에서 하나의 응용 프로그램에 대해 동시에 여러 개의 프로세스를 실행할 수 있도록 하는 기술예를 들면, 크롬과 같은 웹 브라우저에서 여러 개의 탭이나 새 창을 띄울 때, 하나의 프로그램에서 여러 개의 프로세스를 사용한다.이때, 각 브라우저 탭은 같은 브라우저 프로그램을 실행한 것이지만, 각기 다른 사이트를 실행하기 때문이다.1-2. 장점1. 프로그램 안정성 각 프로세스가 독립적인 메모리 공간을 가지기 때문에, 하나의 프로세스가 비정상적으로 .. 2024. 7. 3.
[OS] DeadLock(교착상태) 발생과 해결 방안 1. DeadLock (교착상태) 란?교착상태란 여러 프로세스나 스레드가 서로 자원을 기다리며 실행이 멈추는 상태를 말한다.예를 들어, 프로세스 A가 프로세스 B의 자원을 요청할 때 프로세스 B도 프로세스 A가 점유하고 있는 자원을 요청하는 것이다. 2. DeadLock 원인DeadLock(교착상태)은 아래의 네가지 조건을 모두 만족할 때 발생한다.상호배제(Mutual exclusion) : 자원은 한번에 하나의 프로세스만 사용할 수 있어야 한다.점유대기(Hold and wait) : 최소한 하나의 자원을 점유하고 있으면서 다른 프로세스에 할당되어 사용되고 있는 자원을 추가로 점유하기 위해 대기하는 프로세스가 있어야 한다.비선점(No preemption) : 다른 프로세스에 할당된 자원은 사용이 끝날 때.. 2024. 6. 24.