하드웨어를 관리하고, 응용 프로그램과 하드웨어 사이에서 인터페이스 역할을 하며 시스템의 동작을 제어하는 시스템 소프트웨어이다.
사용자의 요청에 대하여 빠르고 정확하게 시스템 자원을 제공하고 많은 양의 데이터를 처리해주기 위해 필요하다.
크게 프로세스 관리, 기억장치 관리, 입출력장치 관리, 자원 관리 네 가지로 구분할 수 있다.
프로세스 관리
여러 개의 프로세스가 충돌 없이 원할하게 수행할 수 있도록 관리한다.
기억장치 관리
한정된 용량의 주기억 장치에 여러 개의 프로그램을 필요에 맞게 효율적으로 사용할 수 있도록 관리한다.
입출력장치 관리
컴퓨터에 연결된 입출력 장치 및 주변 장치를 관리하고 제어한다.
자원관리
파일 시스템 기능을 통해 파일을 관리하고 디스크 관리 기능을 통해 보조기억장치를 관리한다.