운영체제 (OS, Operating System)
운영체제는 하드웨어를 관리하고 컴퓨터 시스템의 자원들을 효율적으로 관리합니다.
또한, 응용 프로그램과 하드웨어 간의 인터페이스로써 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공해줍니다.
즉, 운영체제는 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 시스템 소프트웨어라고 할 수 있습니다.
운영체제의 역할
1. 프로세스 관리
운영체제에서 작동하는 응용 프로그램 혹은 프로세서(CPU)를 관리하는 기능을 뜻합니다.
현재 CPU를 점유해야 할 프로세스를 결정하고 실제로 CPU를 프로세스에 할당합니다.
또한, 이 프로세스 간 공유 자원 접근과 통신 등을 관리하게 됩니다.
2. 저장장치 관리
1차 저장장치에 해당하는 메인 메모리와 2차 저장장치에 해당하는 하드디스크, 플래시 메모리 등을 관리하는 기능입니다.
- 1차 저장장치 (Main Memory)
- 프로세스에 할당하는 메모리 영역의 할당과 해제
- 각 메모리 영역 간의 침범 방지
- 메인 메모리의 효율적 활용을 위한 가상 메모리 기능
- 2차 저장장치 (HDD, NAND Flash Memory 등)
- 파일 형식의 데이터 저장
- 이런 파일 데이터 관리를 위한 파일 시스템을 OS에서 관리
- FAT, NTFS, EXT2, JFS, XFS 등 많은 파일 시스템들이 개발되어 사용 중
3. 네트워크 관리
운영체제는 TCP/IP 기반의 인터넷에 연결하거나 응용 프로그램이 네트워크를 사용하기 위해 네트워크 프로토콜을 지원합니다.
이처럼 운영체제는 사용자와 컴퓨터 하드웨어 사이에 위치해서 하드웨어를 운영하고 명령어를 제어하여 응용 프로그램과 하드웨어를 소프트웨어적으로 관리합니다.
4. 사용자 관리
운영체제는 한 컴퓨터를 여러 사람이 사용하는 환경도 지원하기 위해 계정을 관리할 수 있는 기능이 있습니다.
사용자 별로 프라이버시와 보안을 위해 개인 파일에 대해선 다른 사용자가 접근할 수 없도록 합니다.
또한, 파일이나 시스템 자원에 접근 권한을 지정할 수 있도록 지원합니다.
5. 디바이스 드라이버 관리
시스템에는 여러 하드웨어가 존재하는데, 이들을 운영체제에서 인식하고 관리하게 만들어야 응용 프로그램이 하드웨어를 사용할 수 있습니다.
따라서, 운영체제 안에는 하드웨어를 추상화 해주는 계층인 디바이스 드라이버가 존재합니다.
하드웨어의 종류가 많은 만큼 수많은 디바이스 드라이버가 존재하는데, 이들을 관리하는 기능 또한 운영체제가 맡고 있습니다.
'CS 지식 > 운영체제' 카테고리의 다른 글
[CS] 교착 상태 (0) | 2023.08.26 |
---|---|
[CS] 상호 배제 (0) | 2023.08.26 |
[CS] IPC 통신 (0) | 2023.08.24 |
[CS] 인터럽트 (0) | 2023.08.23 |
[CS] 프로세스와 스레드 (0) | 2023.08.16 |