운영체제는 H/W를 관리하고 User(user application 포함)와 H/W 사이에서 중재자 역할을 한다.위 사진에서 볼 수 있듯이 User나 Application program이 H/W와 상호 작용하기 위해서는 O/S를 거쳐야 한다.user가 시스템을 편리하게
user interfaces: user와 OS가 서로 상호 작용할 수 있도록 제공ex) GUI, batch, command line 등 system calls: Application이 OS와 상호 작용하기 위한 유일한 방법 services: Applications
Program이 직접 작업을 할 수 없기 때문에, system call (Interrupt Mechanism)을 통해 OS에게 요청(request) User mode에 있는 응용 프로그램이 커널의 기능을 사용할 수 있게 해줌 System Call을 통해 User m
(Program vs. Process)프로세스는 프로그램이랑 다르게 현재 실행 상태를 나타낸다.이런 점에서 프로그램은 passive 하고, 프로세스는 active 하다고 볼 수 있다.또한, 하나의 프로그램에서 하나 이상의 프로세스가 실행될 수 있다.❗️ 그러면 Proc
프로세스보다 작은 개념으로 실행의 가장 작은 단위다.프로세스 간의 communication은 OS를 거쳐야해서 성능이 좋지 않은데thread는 OS를 거칠 필요가 없어서 성능이 더 좋다.하지만 thread들끼리 서로 메모리를 공유하기 때문에 사용 시 주의해야한다. t
: 프로세스 사이에서 CPU 사용을 switching 해주면서 CPU가 쉬는 구간이 없도록 만들어준다.❗️ Process Scheduling이 필요한 이유1\. CPU Utilization 최대화2\. time sharing을 하면서 concurrent하게 실행시키기