- Operating System (OS)란,
- 하드웨어를 관리하고 컴퓨터 시스템의 자원들을 효율적으로 관리하며 응용 프로그램과 하드웨어 간의 인터페이스로써 다른 응용 프로그램이 유용한 작업을 할 수 있도록 환경을 제공
- 즉, 운영체제는 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 시스템 소프트웨어
- Windows, Linux, UNIX, MS-DOM 등
운영체제의 역할
- 프로세스 관리
- 프로세스, 스레드
- 스케줄링
- 동기화
- IPC 통신
- 운영체제에서 작동하는 응용 프로그램을 관리하는 기능
- CPU를 점유해야할 프로세스를 결정하고 실제로 CPU를 프로세스에 할당하여 이 프로세스 간 공유 자원 접근과 통신 등을 관리하게 된다.
- 저장장치 관리
- 메모리 관리
- 가상 메모리
- 파일 시스템
- 메인 메모리(1차 저장장치), 하드디스크(2차 저장장치), NAND 등을 관리하는 기능
- 1차 저장장치 (메인 메모리)
- 프로세스에 할당하는 메모리 영역의 할당과 해제
- 각 메모리 영역 간의 침범 방지
- 메인 메모리의 효율적 활용을 위한 가상 메모리 기능
- 2차 저장장치 (HDD, NAND Flash Memory)
- 파일 형식의 데이터 저장, 파일 관리 시스템을 관리
- FAT, NTFS, EXT2, JFS, XFS 등 많은 파일 시스템들이 개발되어 사용 중
- 1차 저장장치 (메인 메모리)
- 네트워킹
- TCP/IP
- 기타 프로토콜
- TCP/IP 기반의 인터넷에 연결하거나 응용 프로그램이 네트워크를 사용하려면 운영체제에서 네트워크 프로토콜을 지원해야한다. 이처럼 운영체제는 사용자와 컴퓨터 하드웨어 사이에 위치해서 하드웨어를 운영 및 관리하고 명령어를 제어하여 응용 프로그램 및 하드웨어를 소프트웨어적으로 제어 및 관리해야한다.
- 사용자 관리
- 계정 관리
- 접근권한 관리
- 운영체제는 각 계정을 관리할 수 있는 기능이 있어, 사용자별로 프라이버시와 보안을 위해 개인 파일에 대해선 다른 사용자가 접근할 수 없도록 해야한다.
- 파일이나 시스템 자원에 접근 권한을 지정할 수 있도록 지원하는 것이 사용자 관리 기능이다.
- 디바이스 드라이버
- 순차접근 장치
- 임의접근 장치
- 네트워크 장치
- 운영체제는 시스템의 자원, 하드웨어를 관리한다. 시스템에는 여러 하드웨어가 붙어 있고, 이들 운영체제에 인식하고 관리하게 만들어 응용 프로그램이 하드웨어를 사용할 수 있게 만들어야 한다.
- 그래서 운영체제 안에 하드웨어를 추상화 해주는 계층이 필요하고 이를 디바이스 드라이버라고 한다. 하드웨어의 종류마다 다른 디바이스 드라이버가 존재하고 이러한 디바이스 드라이버를 운영체제가 관리한다.
'기초 CS 정리' 카테고리의 다른 글
System Call 시스템 콜 (0) | 2023.01.29 |
---|---|
프로세스와 스레드, 인터럽트(Interrupt) (0) | 2023.01.28 |
폰 노이만 구조 (0) | 2023.01.27 |
패리티 비트 / 해밍 코드 (0) | 2023.01.27 |
고정 소수점/ 부동 소수점 (0) | 2023.01.26 |