운영체제의 역할

운영체제(OS)란?

운영체제(OS)란?

하드웨어와 소프트웨어 자원을 관리하고, 다른 컴퓨터 프로그램에 **공통된 서비스(common services)**를 제공하는 시스템 소프트웨어다.

Common Services — 왜 "공통"인가?

파일 읽기/쓰기, 화면 출력, 네트워크 통신, 메모리 할당 등은 거의 모든 프로그램이 필요로 하는 기능이다.

각 프로그램이 이걸 직접 구현하는 대신, OS가 공통 서비스로 제공하면 개발자는 가져다 쓰기만 하면 된다.

결과적으로 개발자가 하드웨어를 직접 제어할 일이 크게 줄어든다.

내 프로그램은 특정 OS에 종속된다

내가 만드는 프로그램은 OS의 서비스를 호출하므로 어떤 OS의 서비스를 사용했느냐에 따라 해당 OS에 종속된다.

그래서 프로그램을 다운받을 때 Windows용, macOS용을 따로 받는 것이다. 같은 기능이라도 OS마다 제공하는 서비스의 인터페이스가 다르기 때문이다.

OS의 가장 중요한 기능

운영체제의 가장 핵심적인 역할은 다른 프로그램을 실행해주는 것이다.

OS 자체가 무언가를 하는 게 아니라, 사용자가 원하는 프로그램을 로드하고 실행할 수 있는 환경을 만들어주는 것이 본질이다.

운영체제는 소프트웨어

OS는 하드웨어가 아니라 **시스템 소프트웨어(system software)**다.

CPU, 메모리, 디스크 같은 물리적 장치 위에서 실행되는 프로그램이다.

흔히 컴퓨터를 사면 OS가 설치되어 있어서 하드웨어의 일부처럼 느껴지지만, OS도 결국 누군가가 코드로 작성한 소프트웨어이며 교체하거나 재설치할 수 있다.