CS/운영체제

운영체제란?

Holy Moly 2022. 11. 8. 22:42

운영체제란?

정의

컴퓨터 시스템의 하드웨어, 소프트웨어적인 자원들을 효율적으로 운영 및 관리함으로써 사용자가 컴퓨터를 편리하고, 효과적으로 사용할 수 있도록 하는 시스템 소프트웨어입니다. 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층 즉, 중개자 역할을 해주는 프로그램입니다.

 

종류

크게 임베디드, 서버, 모바일, 데스크톱 4개의 시장으로 나누어져 있고, 임베디드는 리눅스 계열, 서버는 유닉스 계열, 모바일은 안드로이드, 데스크톱은 윈도우 계열의 점유율이 가장 높습니다.

 

기능

  1. 프로세스 관리 : OS에서 동시에 실행되는 많은 프로세스를 효율적으로 관리
  2. 파일 관리 : 파일 생성, 수정, 삭제, 조작, 백업 등등
  3. 네트워크 관리 : 네트워크 서비스 성능, 오류분석, 프로비저닝, 품질관리 등등
  4. 메인 메모리 관리 : 메모리 추적, 프로세스에 따른 메모리 할당
  5. 보조 스토리지 관리 : 스토리지 할당, 여유 광간 관리, 디스크 스케줄링
  6. 입출력 장치 관리 : 버퍼 캐싱 시스템 제공, 장치 드라이버 제공
  7. 보안 관리 : 시스템 보호 및 오류로 인한 시스템 손상 방지
  8. 명령어 해석 시스템 : 사용자와 시스템 간의 인터페이스. 인터프리터, 쉘 등등

 

역할

일괄처리 시스템(Batch processing system)

유사한 작업들끼리 일정량 또는 일정 시간 묶어서 처리하는 방식. 컴퓨터 시스템을 효율적으로 사용할 수 있지만 하나의 작업이 모든 자원을 독점하므로 CPU 유휴 시간이 줄어듦
ex) 초기 Punch Card 처리 시스템, ORM카드 등등

 

다중 프로그래밍 시스템(Multi programming system)

하나의 CPU와 주기억 장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식. CPU와 대화하면서 처리가 가능하여 CPU 사용률과 처리량이 증가

 

시분할 시스템(Time sharing system)

시간을 분할하여 여러 사용자들에게 컴퓨터 자원을 번갈아가며 할당하면 사용자는 자신이 컴퓨터를 독점하고 있다는 느낌을 주게 됨.

 

실시간 시스템(Real-Time system)

단말기의 요청을 즉시 처리하여 결과를 반환하는 시스템.
ex) 원자로 / 공장 제어, 미사일, 반도체 장비, 로봇 제어와

 

다중처리 시스템(Multi-processing system)

여러 대의 CPU와 하나의 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식. 단일 운영체제에 의해 관리되며, 하나의 CPU가 고장 나더라도 시스템의 신뢰성과 안정성을 보장할 수 있음

 

분산 컴퓨팅(Distributed computing)

넷상으로 연결된 여러 대의 컴퓨터들의 처리 능력을 이용하여 복잡한 계산 문제를 해결하려는 분산 처리 모델

자원 : 컴퓨터가 실행되기 위해 필요한 컴퓨터 구성요소 포함한 모든 자원