잘못된 내용이 있다면 댓글로 알려주시면 감사하겠습니다. 🙇🏻♀️프로세스는 자원(코드, 전역변수, 히프, 열린 파일, 소켓 등)의 소유주 역할을 합니다.코드, 전역변수, heap 등의 프로세스의 자원은 스레드의 개수와 상관없이 하나씩만 존재하고, 각 스레드는 이를
다음에서 설명하는 프로세스는 스레드가 될수도 있습니다.프로세스가 특정 자원을 lock하고 다른 자원을 lock하려고 하는데 이미 다른 프로세스에 의해 lock되어 unlock되기를 기다리는 상태. 데드락의 유명한 예시로 traffic deadlock, dining ph
멀티 스레딩 환경에서는 전역변수, 힙 영역 등 스레드들끼리 공유되는 자원이 존재합니다.이런 공유 자원들에 접근하는 코드 영역을임계영역 이라고 합니다. 임계영역은 상호배제(각 스레드는 공유 자원의 손상을 방지하기 위해 배타적으로(독점적으로) 공유 자원을 사용해야함) 되어
아래 글에서 설명하는 프로세스는 스레드가 될수도 있습니다.멀티 프로세싱 환경에서 현재 실행중인 프로세스가 실행이 중지되고 CPU가 다른 프로세스에게 넘어갈 때 이전에 실행 중이었던 프로세스의 컨텍스트 정보를 레지스터에서 PCB로 백업하고 새로 실행될 프로세스의 컨텍스트
커널이 생성해주는게 아닌 라이브러리를 이용해서 생성한 스레드를 뜻한다.커널에는 '커널모드'와 '사용자모드' 두 가지가 있고, '사용자 모드'에서 동작하는 스레드가 User Level Thread이다.입출력 인터럽트가 발생하면 커널은 '사용자 모드'가 되어 User Le