일반적으로 우리가 알고 있는 운영체제(OS)는 뭘까?
-> 대표적으로: 윈도우, macOS, 리눅스, 안드로이드, iOS가 있다.
(나는 모르지만 옛날에는 플로피 디스크로 운영체제를 직접 넣었다고 한다더라~)
하지만 이렇게 알려져 있는 운영체제들은 무슨 일을 하는 걸까?
운영체제는 간단히 컴퓨터를 쉽게 다루는 인터페이스다.
-> 인터페이스가 뭔데?
인터페이스(interface): 인터페이스는 서로 다른 장치나 사람 또는 사물 2개 이상의 무언가를 이어주는 매개체)
오케이 좋다 두 얼굴이 마주하는 걸로 이해가 된다. 즉 하드웨어와 사람을 이어주는 중간다리를 역할을 하는것이다.
좀더 자세히 전문적인 단어로 들어가면 운영체제(Operating system)는 컴퓨터 하드웨어 바로 윗단에 설치되는 소프트웨어다.

운영체제는 다른 Ststem Sofeware, Application Software와 달리 하드웨어 바로 윗단에 설치가 되어 있는게 특징이다.
그렇다면 하드웨어 어디에 설치가 되어 있는 것일까? -> 커널 영역!
커널은 운영체제 중 항상 메모리에 올라가 있는 운영체제의 핵심 부분이다. 여러가지 하드웨어(CPU, 메모리) 등의 리소스를 관리하는 역할을 한다.
만약 운영체제가 없다면? -> 하드웨어를 조작하는 코드를 개발자가 모두 직접 작성해야한다.( 매우 불편 ㅠㅠ)
ex) (1 + 2)를 출력한다고 해보자 -> 메모리 적재, cpu 연산 코드 (1+2), 출력 코드 등 모든 과정에 대해 코드를 쳐야한다.
존재 이유는 알지만 우리는 운영체제 없이 컴퓨터 게임이나 여러가지를 잘 사용해 왔다. 하지만 우리가 왜 배워야 할까? -> 문제 해결 능력과 직접적인 관계가 있기 때문이다. 하드웨어가 어디가 문제인지 직접 하드웨어를 보지 않고 대화가 가능하기 때문이다. (ex: 오류 메세지)
대표적으로 운영체제의 운영방식은 7가지 방식이 존재한다.
1. 일괄 처리
처리할 데이터를 일정 기간 동안 모았다가 처리
2. 실시간 처리
데이터가 생겨날 때마다 바로 처리
3. 다중 프로그래밍
1대의 CPU로 여러 대의 프로그램을 동시에 처리
4. 시분할 시스템
1대의 시스템을 여러 사용자가 동시에 사용 / 일정 시간 단위로 CPU 사용권을 신속하게 전환
5. 다중 처리
하나의 컴퓨터의 여러 개의 cpu를 설치 / 하나의 CPU가 고장이 나더라도 진행이 가능하다. 신뢰성과 안정성이 높다.
6. 분산 시스템
여러 개의 컴퓨터를 연결하여 하나의 작업을 처리하는 방식, 각각의 컴퓨터는 고유의 CPU, 메모리가 존재한다.
7. 임베디드 시스템
마이크로프로세서에 특정 기낭을 수행하는 으용 프로그램을 탑재하여 컴퓨터의 기능을 수행한 것.