혼자 공부하는 운영체제 01. 운영체제 시작하기 - swkim0128/PARA GitHub Wiki
운영체제는 컴퓨터 시스템의 핵심 소프트웨어로서, 컴퓨터 하드웨어와 응용 프로그램 사이에서 중재자 역할을 합니다. 이는 하드웨어 자원을 효율적으로 관리하고, 응용 프로그램이 원활하게 동작할 수 있도록 지원하는 역할을 수행합니다.
운영체제의 핵심 부분은 커널입니다. 커널은 운영체제의 핵심이자 핵심 소프트웨어입니다. 이는 하드웨어와 응용 프로그램 사이에서 중재자 역할을 하며, 하드웨어 자원을 관리하고 응용 프로그램의 원활한 동작을 지원합니다.
운영체제는 이중 모드를 지원하여 컴퓨터 시스템을 안전하게 보호합니다. 이중 모드는 사용자 모드와 커널 모드로 구성됩니다.
- 사용자 모드: 응용 프로그램이 실행되는 모드로, 일반적인 작업을 수행합니다. 사용자 모드에서는 하드웨어 자원에 직접 접근할 수 없으며, 커널 모드로의 전환을 요청해야 합니다.
- 커널 모드: 운영체제의 핵심인 커널이 실행되는 모드로, 하드웨어 자원에 직접 접근하여 관리합니다. 커널 모드는 시스템 관리자나 운영체제가 필요한 작업을 수행할 때 사용됩니다.
이중 모드는 운영체제의 안전성과 보안을 유지하는데 중요한 역할을 합니다.
운영체제는 다양한 핵심 서비스를 제공합니다. 이러한 서비스는 컴퓨터 시스템의 원활한 동작과 응용 프로그램의 실행을 지원합니다. 주요한 운영체제의 핵심 서비스에는 다음과 같은 것들이 있습니다:
- 프로세스 관리: 운영체제는 프로세스를 생성, 제거, 일시 중지 및 재개하는 등의 작업을 수행합니다. 또한 다중 프로세스 간의 자원 공유와 동기화를 관리하여 효율적인 작업을 지원합니다.
- 메모리 관리: 운영체제는 메모리를 할당하고 관리하여 응용 프로그램이 메모리를 효율적으로 사용할 수 있도록 지원합니다. 이는 가상 메모리, 페이지 교체 기법, 메모리 보호 등을 포함합니다.
- 파일 시스템 관리: 운영체제는 파일 시스템을 관리하여 파일의 생성, 삭제, 읽기, 쓰기 등의 작업을 지원합니다. 또한 파일의 보안과 백업 등을 관리합니다.
- 입출력 관리: 운영체제는 입출력 장치와의 상호 작용을 관리합니다. 이는 입출력 장치의 할당, 입출력 요청의 스케줄링, 입출력 오류 처리 등을 포함합니다.
- 네트워킹: 운영체제는 네트워크 기능을 제공하여 컴퓨터 간의 통신과 데이터 전송을 가능하게 합니다. 이는 네트워크 프로토콜, 연결 관리, 데이터 보안 등을 포함합니다.
운영체제의 핵심 서비스는 컴퓨터 시스템의 안정성, 효율성 및 사용자 경험에 중요한 역할을 합니다.