운영체제란?
- 운영체제란(Operating system)는 컴퓨터 하드웨어를 관리하는 소프트웨어임.
- 응용 프로그램을 위한 기반을 제공하여 컴퓨터 사용자와 컴퓨터 하드웨어 사이에서 중재자 역할을 수행함.
- IoT를 포함하는 모든 곳에 존재함.
운영체제가 할 일

- 컴퓨터 시스템은 대개 네 가지 구성요소인 하드웨어, 운영체제, 응용 프로그램 및 사용자로 구분함(위 사진 참고).
- 하드웨어는 중앙처리장치(CPU), 메모리 및 입출력(I/O) 장치로 구성되어 기본 계산용 자원을 제공함.
- 응용 프로그램인 워드프로세서, 스프레드시트, 컴파일러, 그리고 웹 브라우저 등은 사용자의 계산 문제를 해결하기 위해 이들 자원이 어떻게 사용될 지를 정의함.
- 운영체제는 하드웨어를 제어하고 다양한 사용자를 위해 다양한 응용 프로그램간의 하드웨어 사용을 조정함.
- 또한, 컴퓨터 시스템은 하드웨어, 소프트웨어 및 데이터로 구성된다고 볼 수 있음. 운영체제는 컴퓨터 시스템이 동작할 때 이들 자원을 적절하게 사용할 수 있는 방법을 제공함.
- 사용자 관점
- UI, UX를 고려함. 자원 이용을 극대화할 수 있도록 설계.
- 자원의 이용 측면은 신경쓰지 않음. 인터페이스(키보드, 터치스크린 등)는 조작하지만 운영체제나 응용 프로그램은 사용자의 개입 없이 작동함.
- 휴대용 기기에 대해 배터리 수명 대비 성능을 고려하는 것도 필요함.
- 시스템적 관점
- 컴퓨터의 관점에서 운영체제는 하드웨어와 가장 친밀한 프로그램(aka. 자원 할당자)
- 컴퓨터 시스템은 문제를 해결하기 위해 요구되는 여러 가지 자원들(하드웨어와 소프트웨어) 즉, CPU 시간, 메모리 공간, 파일 저장 공간, 입출력장치 등을 가짐. 운영체제는 이들 자원의 관리자로서 동작함.
- 자원에 대한 서로 상충될 수도 있는 많은 요청이 있기 때문에 운영체제는 컴퓨터 시스템을 효율적이고 공정하게 운영할 수 있도록 어느 프로그램과 사용자에게 자원을 할당할 지를 결정해야 함.
- 운영체제는 프로그램 실행을 제어하는만큼 제어 프로그램(Control program)이라고도 함.
컴퓨터 시스템의 구성 (하드웨어)

- CPU의 조치가 필요한 이벤트에 대해 경고하는 인터럽트
- 저장장치 구조
- 입출력 구조