CS/운영체제

[OS] 운영체제란

초코chip 2024. 8. 19. 18:52

운영 체제란?

정의

  • 컴퓨터 하드웨어와 시스템 자원을 관리하며, 응용 프로그램과 하드웨어 간의 인터페이스 역할을 하는 시스템 소프트웨어이다.
  • 이를 통해 다른 응용 프로그램이 원활히 작동할 수 있는 환경을 제공하며, 사용자가 컴퓨터 자원을 효율적으로 사용할 수 있도록 돕는다.

구조

운영 체제는 크게 커널인터페이스 두 부분으로 나뉜다.

  • 인터페이스: 사용자와 상호작용하는 부분이다.
    • 결과를 화면에 표시하거나 사용자 입력을 받아 처리하는 기능을 담당한다.
  • 커널: 운영 체제의 핵심 기능을 수행하는 부분이다.
    • 프로세스 관리, 메모리 관리, 저장장치 관리 등 하드웨어 자원 관리와 응용 프로그램의 요청을 처리한다.

 

커널

  • 시스템 호출(Call): 자원에 대한 직접 접근을 차단하고, 자원 사용을 위해 응용 프로그램이 커널에 요청할 수 있는 인터페이스를 제공한다.
    • 예를 들어 응용 프로그램이 하드 디스크에 데이터를 저장하려면, 직접 하드디스크 특정 위치에 데이터를 저장하는 것이 아닌 커널의 시스템 호출을 통해 요청한다.
  • 드라이버: 하드웨어와 소프트웨어 간의 인터페이스 역할을 수행하며, 커널이 하드웨어를 제어하고 통신할 수 있도록 지원한다.

 

역할과 목표

  • 자원 보호: CPU와 메모리 등의 자원에 대한 사용자 및 응용 프로그램의 직접 접근을 차단하여 시스템의 안정성과 보안을 유지한다.
  • 자원 관리: 여러 응용 프로그램이 자원을 요청할 때, 자원을 적절한 순서로 배분하고 회수하여 효율적으로 관리한다.
  • 인터페이스 제공: 하드웨어 인터페이스(드라이버)와 사용자 인터페이스를 제공하여, 하드웨어와 소프트웨어를 쉽게 사용할 수 있도록 지원한다.

 

기능

1. 자원 관리

  • 프로세스 관리: 프로그램의 실행과 CPU 자원 배분을 담당한다.
  • 메모리 관리: 메모리의 할당, 해제, 가상 메모리 관리 기능을 포함한다.
  • 입출력 장치 관리: 하드웨어 장치와 소프트웨어 간의 통신과 입출력 요청을 최적화한다.
  • 파일 관리: 파일과 디렉터리를 관리하고 데이터의 보안을 책임진다.

2. 시스템 관리

  • 시스템 보호: 사용자 인증, 접근 제어, 암호화 등을 통해 시스템 자원을 보호한다.
  • 네트워크 관리: 네트워크 통신과 프로토콜을 관리하여 데이터 송수신을 담당한다.
  • 명령 해석기(커맨드 인터프리터): 사용자 명령을 해석하고 운영 체제의 기능을 실행한다.

'CS > 운영체제' 카테고리의 다른 글

[OS] CPU 스케줄링  (1) 2024.09.02
[OS] 스레드  (0) 2024.09.02
[OS] 프로세스간 통신(IPC)  (0) 2024.09.02
[OS] 프로세스 구조, PCB와 Context Switching  (1) 2024.09.02
[OS] 시스템콜과 I/O인터럽트  (3) 2024.09.02