
1. Many-to-One Model : 여러 user thread + one kernel thread : 여러 thread를 병렬로 실행 할 수 없습니다.(1개씩) : one thread blocking은 모두 block합니다. 2. One-to-One Model : user thread와 같은 수의 kernel thread : user thread의 개수가 많은 경우에 overhead가 발생한다 => 성능 문제 발생 : window, linux에서 사용 3.Many-to-Many Model : Many-to-One Model + One-to-One Model : parallellism을 할 수 있으며 많은 수의 thread의 수를 받아들일 수 있습니다. : 구현하기 어렵습니다.

### Thread ### : 프로세스가 할당받은 자원을 이용하는 실행의 단위 : thread ID, PC(program counter), register set, stack으로 구성된다. : 여러 기능을 담당하는 module 들로 세밀하게 분할 할 수 있는 단위 => process(프로그램 하나를 돌리는 것)에서 여러 thread가 공통 code/ data/ os resource(open files and signal)을 공유합니다. 1. Singlethreading : traditional processes에서 사용된다. : request가 도착 할 때마다 새로운 process를 생성한다. 2. Multithreading : 하나의 process에서 운용하는 둘 이상의 thr..

### Process ### : storage에 저장되어 있는 프로그램을 기반으로 해서 메모리에 올려서 실행실 킬 수 있는 instance, 객체 => 실행되고 있는 프로그램 : 단일 컴퓨팅 리소스에서 여러 프로세스가 실행할 때 (우선순위 process를 정해서 사용한다) : cpu utilization(이용률 최대화시킨다 -> 노는 자원 없애기 위해서) : user-interaction(process에 대해서 즉각적으로 받을 수 있어야 한다. ) : processing speed(프로세스를 최대한 빨리 처리할수록 컴퓨터가 좋은 성능을 가진다) text: 프로세스를 처리..