개발자공부일기
운영체제 본문
운영체제(OS)
운영체제(OS, Operating System)는 컴퓨터 시스템의 핵심 소프트웨어로, 컴퓨터 하드웨어와 응용 프로그램 간의 상호작용을 관리하고 제어하는 역할을 한다.
운영체제의 목적은 사용자와 하드웨어 사이의 인터페이스를 제공해 효율적으로 응용 프로그램이 동작하도록 지원하고, 시스템 자원을 효율적으로 관리하여 응용 프로그램이 원활하게 동작할 수 있도록 한다.
운영체제의 코어(핵심) 부분을 커널(Kernel)이라고 하는데, 일반적으로는 커널에 여러가지 기능(라이브러리, 시스템 프로그램 등등)이 추가된 상태를 통칭해서 운영체제(OS)라고 한다.
운영체제의 주요 역할
- 프로세스 관리
- CPU와 같은 시스템 자원을 여러 프로세스가 효율적으로 사용할 수 있도록 관리합니다.
- 프로세스 생성, 삭제, 상태 전환 등을 관리하며, 프로세스 간의 동기화와 통신을 제공합니다.
- 메모리 관리
- 메인 메모리를 효율적으로 관리하고, 각 프로세스가 필요한 메모리를 할당합니다.
- 가상 메모리 기술을 통해 물리적 메모리보다 더 큰 메모리 공간을 사용하는 것처럼 보이게 만듭니다.
- 저장장치 관리
- 파일 시스템을 제공하여 데이터를 저장하고 관리합니다.
- 저장장치 간의 데이터 전송과 디스크 스케줄링을 담당합니다.
- 입출력(I/O) 장치 관리
- 키보드, 마우스, 프린터, 디스크 드라이브와 같은 I/O 장치와의 통신을 처리합니다.
- 장치 드라이버를 통해 하드웨어와 소프트웨어 간의 인터페이스를 제공합니다.
- 사용자 인터페이스 제공
- GUI(그래픽 사용자 인터페이스) 또는 CLI(명령 줄 인터페이스)를 통해 사용자가 시스템을 조작할 수 있도록 돕습니다.
- 보안 및 보호
- 권한 관리와 인증을 통해 시스템의 무결성을 보호합니다.
- 악의적인 프로그램이나 접근으로부터 데이터를 안전하게 지킵니다.
운영체제의 구성 요소
- 커널(Kernel)
- 운영체제의 핵심으로, 하드웨어와 직접 상호작용하며 시스템 자원을 관리합니다.
- CPU 스케줄링, 메모리 관리, 장치 드라이버 등이 포함됩니다.
- 쉘(Shell)
- 사용자와 커널 간의 인터페이스 역할을 합니다.
- 명령어를 입력받아 실행하거나, 그래픽 환경을 통해 사용자의 작업을 처리합니다.
- 유틸리티 프로그램(Utility Programs)
- 파일 관리, 디스크 정리 등과 같은 기본적인 작업을 수행하는 프로그램입니다.
운영체제의 종류
- 데스크톱 운영체제: Windows, macOS, Linux 등
- 모바일 운영체제: Android, iOS 등
- 서버 운영체제: Windows Server, Ubuntu Server, CentOS 등
- 임베디드 운영체제: RTOS(실시간 운영체제), IoT 기기 운영체제 등
운영체제는 컴퓨터 시스템의 기본적인 동작을 책임지는 필수 소프트웨어로, 하드웨어를 효과적으로 활용하고 사용자의 요구를 처리하는 데 핵심적인 역할을 합니다.
'TIL(Today I Learned)' 카테고리의 다른 글
버퍼 객체 (0) | 2025.01.14 |
---|---|
RAM (0) | 2025.01.13 |
지연 숨기기(Latency Hiding) (0) | 2025.01.10 |
대칭키, 비대칭키 암호화 (0) | 2025.01.08 |
게임에서 쓰이는 삼각함수 (0) | 2025.01.07 |