OS가 없으면 프로그램마다 하드웨어 사용 규칙을 직접 맡아야 한다

운영체제의 가치는 없을 때 가장 선명합니다. CPU 공유, 메모리 보호, 파일 동시 접근, 장치 제어를 각 프로그램이 직접 처리하면 충돌과 손상이 쉽게 발생합니다.

OS 없음 프로그램이 하드웨어를 직접 만진다 각 프로그램이 자기 방식으로 CPU, 메모리, 디스크, 장치를 사용해 충돌을 막기 어렵다.
OS 있음 커널이 공통 규칙을 제공한다 시스템 호출과 권한 검사로 자원을 나누고, 장치 세부사항은 드라이버 뒤에 숨긴다.
CPU 공유 동시에 실행되는 것처럼 보이게 함 스케줄러가 짧은 시간 단위로 실행 순서를 바꾼다.
메모리 보호 프로세스별 주소 공간 분리 한 프로그램의 버그가 다른 프로그램 메모리를 덮지 못하게 한다.
파일 관리 동시 접근과 위치 정보를 통제 파일 이름 뒤의 디스크 블록 배치와 잠금 처리를 맡는다.
장치 제어 드라이버가 장치 차이를 흡수 프린터나 네트워크 카드의 세부 명령을 공통 인터페이스로 감춘다.
문제 상황
없으면 생기는 일
OS가 제공하는 답
프로그램 여러 개
먼저 실행된 프로그램이 CPU를 계속 붙잡을 수 있다.
스케줄링으로 실행 순서를 정하고 대기 상태를 관리한다.
메모리 부족
누가 어느 주소를 써도 되는지 직접 계산해야 한다.
가상 메모리와 보호 비트로 독립된 공간처럼 보이게 한다.
파일과 장치
모델마다 다른 물리 위치와 명령 순서를 알아야 한다.
파일 시스템, 드라이버, 시스템 호출로 공통 경로를 만든다.

핵심: OS 공부는 하드웨어를 직접 다루면 생기는 위험을 어떤 추상화와 보호 장치가 해결하는지 따라가는 과정이다.