1. 운영체제(OS, Operating System)
하드웨어를 관리
컴퓨터 시스템의 자원들을 효율적으로 관리
응용 프로그램과 하드웨어간의 인터페이스로써 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공
사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 시스템 소프트웨어
종류
2. 운영체제의 역할
프로세스 관리
저장장치 관리
네트워킹
사용자 관리
디바이스 드라이버
3. 프로세스 관리
운영체제에서 작동하는 응용 프로그램을 관리하는 기능이다.
CPU를 관리하는 것으로 볼 수도 있다.
현재 CPU를 점유해야 할 프로세스를 결정하고, 실제로 CPU를 프로세스에 할당하며, 프로세스 간 공유 자원 접근과 통신 등을 관리한다.
4. 저장장치 관리
1차 저장장치(메인 메모리)와 2차 저장장치(하드디스크, NAND Flash Memory 등)을 관리하는 기능이다.
1차 저장장치
2차 저장장치
5. 네트워킹
6. 사용자 관리
운영체제는 한 컴퓨터를 여러 사람이 사용하는 환경도 지원해야 한다.
따라서, 운영체제는 각 계정을 관리할 수 있는 기능이 필요하다.
사용자 별로 프라이버시, 보안을 위해 개인 파일에 대해서 다른 사용자가 접근할 수 없도록 해야 한다.
7. 디바이스 드라이버
운영체제는 시스템의 자원, 하드웨어를 관리한다.
시스템의 여러 하드웨어를 운영체제는 인식하고 관리해 응용 프로그램이 하드웨어를 사용할 수 있게 해야 한다.
따라서, 운영체제 안에 하드웨어를 추상화 해주는 계층이 필요하다.
-> 이 계층이 디바이스 드라이버
운영체제는 이러한 수 많은 디바이스 드라이버들을 관리하는 기능을 제공한다.