운영체제 OS는 뭘까?
OS : 컴퓨터 하드웨어 바로 위에 설치되어, 사용자와 다른 모든 소프트웨어 or 하드웨어를 연결하는 소프트웨어 계층

프로그램을 쉽게 실행할 수 있도록해주고, 프로그램이 메모리를 공유하는 것을 허락해주고, 여러 장치들이 상호작용할 수 있도록 도와준다.
OS와 App사이의 관계

프로그램 실행시 무슨일이 발생할까?
Three Pieces
User mode / Kernel mode
user mode 사용자 모드 : 간단한 지시 ok, 사용자가 접근할 수 있는 영역을 제한적으로 두고, 프로그램 자원에 함부로 침범하지 못하도록 하는 모드
kernel mode 커널 모드 : 모든 자원(드라이버, 메모리, CPU 등)에 접근, 명령을 할 수 있다.
모드 변경 명령어 → “sys_enter, exit”

System Calls 시스템콜
CPU를 가상화하기
메모리를 가상화하기