Process Management프로세스 생성(Process Creation)Copy-on-write(COW) - write가 발생할때 Copy를 하겠다. 공유를 하다 자식의 내용이 수정되면 그때 부모의 Code Data Stack을 복사하겠다.부모 프로세스가 자식 프로세스를 생성프로세스의 트리(계층 구조) 형성프로세스는 자원을 필요로 함운영체제로부터 받는다.부모와 공유한다자원의 공유공유하는게 좋으나 별개의 프로세스이기 때문에 독립적으로 가지고 있는게 원칙이다부모와 자식이 모든 자원을 공유하는 모델일부를 공유하는 모델전혀 공유하지 않는 모델수행(Execution)부모와 자식은 공존하며 수행되는 모델자식이 종료(terminate)될 때까지 부모가 기다리는(wait=blocked) 모델주소공간(Address..
Thread💡 “A thread(or lightweight process) is a basic unit of CPU utilization”쓰레드 - 프로세스 하나에 CPU 수행 단위만 여러 개 두는 것Thread의 구성(각 쓰레드마다 따로 가지는 부분)Program CounterRegister SetStack SpaceThread가 동료 Thread와 공유하는 부분(=Task)Code SectionData SectionOS Section전통적인 개념의 heavyweight process는 하나의 thread를 가지고 있는 task로 볼 수 있다. 쓰레드 사용시 장점다중 스레드로 구성된 태스크 구조에서는 하나의 서버 스레드가 blocked(wating) 상태인 동안에도 동일한 태스크 내의 다른 쓰레드가 ..
프로세스프로세스의 개념 “Process is a program in execution”프로세스의 문맥(Context)CPU 수행상태를 나타내는 하드웨어 문맥Program Counter각종 Register프로세스의 주소공간code, data, stack프로세스 관련 커널 자료 구조PCB(Process Control Block)Kernel Stack 프로세스의 상태(Process State)CPU가 1개인 컴퓨터를 기준으로 설명프로세스는 아래와 같은 상태(state)가 번갈아가며 수행된다.RunningCPU를 잡고 instruction을 수행중인 상태ReadyCPU를 기다리는 상태(메모리 등 다른조건을 모두 만족하고)Bloacked(wait, sleep)CPU를 주어도 당장 instruction을 수행할 수..