Computer Science/운영체제1 [운영체제] 멀티 쓰레드와 멀티 프로세스 [멀티 스레드] (Multi Thread) 멀티스레드란? 하나의 프로세스 내에서 둘 이상의 스레드가 자원을 공유하며 동시에 작업을 수행하는 것을 뜻 한다. 장점: 1. 하나의 프로세스에서 다수의 작업을 각각 스레드를 이용하여 동시에 작동시킬 수 있다. 2. Code, Data, Heap영역은 공유하고 Stack영역만 따로 보유하기 때문에 Cash Memory 초기화 작업이 필요 없고 Context Switching 비용이 저렴하다. 3. 스레드 간의 데이터 교환은 Data, Heap영역을 통해 가능하다. 단점: 1. 여러 개의 스레드가 동시에 같은 메모리에 접근할 때 원치 않은 값을 읽어오거나 수정될 수 있다. 2. 위 1번 문제를 해결하기 위해 대표적으로 Critical Section, Mutex 등 .. 2020. 5. 19. 이전 1 다음