Kernel : 운영체제의 핵심이 되는 프로그램. 하드웨어 자원을 할당해주고 프로세스 제어, 메모리 제어 , 시스템 콜 수행 등 OS 역할의 대부분을 차지한다. OS는 이 커널 위에 GUI나 디스플레이 같은 유틸리티들을 더 얹은거임

1. 운영체제와 커널이란?

<aside> 😮 Linux는 운영체제가 아니라 커널이다! Ubuntu, CentOS, Android, 데비안 같은 OS들은 리눅스 커널을 기반으로 만들어진 배포판이다.

</aside>

똑같은 아크 원자로(커널)에 다른 유틸리티들을 붙여 용도에 맞게 커스텀한 다양한 수트(배포판)들

똑같은 아크 원자로(커널)에 다른 유틸리티들을 붙여 용도에 맞게 커스텀한 다양한 수트(배포판)들

Operating System Services

OS Interface : Command Interpreter (Command-line Interface ; CLI)

OS 서비스 종류

I/O operation : 프린터, 스캐너 같은거 I/O 작업
File system mainipulation : 파일/디렉토리 CRUD
Communication : 프로세스들 간에 통신
Error detection : 에러가 났을 때 대처 (0으로 나누기, 다른 프로세스 메모리 영역 침범)

I/O operation : 프린터, 스캐너 같은거 I/O 작업 File system mainipulation : 파일/디렉토리 CRUD Communication : 프로세스들 간에 통신 Error detection : 에러가 났을 때 대처 (0으로 나누기, 다른 프로세스 메모리 영역 침범)

![Resource allocation : 컴퓨터 자원(대역폭, 디스크 영역, ...)

Resource allocation : 컴퓨터 자원(대역폭, 디스크 영역, ...)

System calls