[정보시스템 기반 기술] 운영체제 종류

SeonJin·2023년 9월 5일
0

정보처리산업기사

목록 보기
1/1

운영체제의 개념

  • OS : Operating System
  • 컴퓨터의 하드웨어를 쉽게 사용할 수 있도록 인터페이스를 제공해 주는 소프트웨어
  • 하드웨어는 중앙처리장치, 기억장치, 통신 장치, 입출력 장치 등으로 구분된다

운영체제의 목적

  • 사용자 편리성 제공 : 입출력 편의, 하드웨어 접근 편의, 효과적 자원 사용 유도
  • 인터페이스 기능 담당 : 컴퓨터 시스템과 사용자 연결
  • 스케줄링 담당 : 자원의 현재 상태 파악, 프로세서/메모리 등의 자원 분배를 위한 스케줄링
  • 자원 관리 : CPU, 메모리 공간, 기억장치, 입출력 장치 등의 자원 관리
  • 제어 기능 : 입출력 장치와 사용자 프로그램 제어
  • 오류 회복 기능 : 소프트웨어/하드웨어의 오류 발생 시 자체 회복 시도

운영체제 성능 평가 기준

  • 경과(반환) 시간(Turnaround) : 작업 의뢰 시간 ~ 처리 완료까지 걸린 시간
  • 응답(반응) 시간(Response) : 작업이 처음 실행되기 까지 걸린 시간
  • 사용 가능도(Availability) : 시스템을 사용 해야할 때 즉시 사용 가능한 정도
  • 신뢰성(Reliability) : 시스템이 주어진 문제를 정확하게 해결하는 정도
  • 처리량(Throughput) : 일정 시간 내에 시스템이 처리하는 일의 양

운영체제 시간

경과시간
응답시간
실행시간 : CPU가 요청한 작업을 처리하는 시간
대기시간 : 작업 요청 후 작업이 끝날 때까지 CPU가 요청한 작업을 처리하지 않는 시간


운영체제의 기능

제어 프로그램 (Control Program)

  • 시스템 전체의 움직임을 감사, 감독, 관리, 지원하는 프로그램
  • 감시 프로그램 (Supervisor) : 각종 프로그램의 실행과 시스템 전체의 작동 상태 감시 및 감독
  • 작업 제어 프로그램 (Job Control) : 작업의 연속 처리를 위한 스케줄 및 시스템 자원 할당
  • 데이터 관리 프로그램 (Data Management) : 주-보조기억장치 사이의 데이터 전송, 보조기억장치의 자료 갱신 및 유지보수

처리 프로그램 (Processing Program)

  • 주어진 문제를 응용 프로그램 감독하에 실제 데이터 처리하는 프로그램
  • 언어 번역 프로그램 (Language Translator)
    : 원시 프로그램을 기계어 형태의 목적 프로그램으로 번역
    -> 어셈블러, 컴파일러, 인터프리터
  • 서비스 프로그램 (Service)
    : 효율성을 위해 사용 빈도가 높음
    → 링커, 정렬/합병 프로그램, 라이브러리, 유틸리티 프로그램
  • 문제 프로그램 (Problem)
    : 특정 업무 해결을 위해 사용자가 작성

쉘과 커널

운영체제 = 인터페이스(쉘) + 커널

  • 커널을 사용자가 보다 편리하게 사용할 수 있게 해 줌
  • 사용자가 입력한 명령어 라인을 읽어 필요한 시스템 기능을 실행시키는 명령어 해석기
  • 시스템과 사용자 간 인터페이스 제공
  • 여러 가지의 내장 명령어를 가짐

커널

  • 운영체제의 핵심 기능들이 모인 프로그램
  • 프로그램과 하드웨어 간의 인터페이스 역할
  • 프로세스 관리 : 스케줄링, 동기화 등
  • 기억장치 관리 : 프로세스에게 메모리 할당 및 회수
  • 주변장치 관리 : 입출력 장치 스케줄링 및 전반적인 관리
  • 파일 관리

운영체제 운용 기법

  • 일괄 처리 시스템(Batch Processing)
    • 작업량을 일정 수준까지 모아두었다가 일시에 처리하는 방식
  • 다중 프로그래밍 시스템
    • 하나의 CPU와 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리
  • 시분할 시스템(=라운드 로빈)
    • CPU를 여러 사용자가 공유하고 있지만 마치 독점하고 있는 것처럼 느끼도록 처리하는 방식
    • 다중 프로그래밍 방식과 결합하여 모든 작업이 동시에 진행되는 것처럼 대화식 처리 가능
    • CPU의 전체 사용 시간을 작업 시간량으로 나누어 작업 처리
  • 다중 처리 시스템
    • 여러 개의 CPU와 하나의 주기억장치를 이용해 여러 개의 프로그램을 동시에 처리
  • 분산 처리 시스템
    • 여러 개의 프로세서를 통신회선으로 연결하여 하나의 작업 처리
    • 중앙 집중형 시스템보다 소프트웨어 개발이 어려움
    • 여러 사용자가 데이터를 공유(자원 공유)
    • 시스템의 점진적 확장이 용이하고, 사용 가능도가 향상
    • 연산 속도의 향상과 신뢰성 증진의 특징이 있음

운영체제의 종류

1. 윈도즈 계열 운영체제

  • MS-DOS의 멀티태스킹 기능과 GUI 환경을 제공하는 응용 프로그램
  • 마이크로소프트사가 개발한 운영체제
  • 그래픽 사용자 인터페이스 (GUI) 제공
  • 선점형 멀티태스킹 방식 제공
  • 자동감지 기능 제공 - 하드웨어 설치 시 필요한 시스템 환경을 자동으로 구성
  • OLE 사용 - 개체를 현재 작성 중인 문서에 자유롭게 연결 또는 삽입하여 편집할 수 있게 하는 기능 제공

2. 유닉스 계열 운영체제

  • 90% 이상 C언어로 구현되어 있는 운영체제
  • 범용 다중 사용자 방식의 시분할 운영체제
  • 다양한 시스템에 서로 인식 가능, 멀티 태스킹 지원
  • 대화식 운영체제 - 사용자의 입력 → 시스템의 수행
  • 다중 작업
  • 다중 사용자
  • 이식성 : 다른 하드웨어 기종으로 쉽게 이식 가능
  • 계층적 파일 시스템 제공 : 계층적 트리 구조를 가져 통합적인 파일 관리 용이

3. 리눅스 계열 운영체제

  • 프리 소프트웨어 정책을 가지고, 자유롭고 재배포가 가능한 운영체제
  • 유닉스의 호환 커널

리눅스유닉스
대부분 무료, 일부 유료대부분 유료
개발자, 일반 사용자대형 시스템 관리자
오픈소스 개발사업자에 의해 배포 (비용 수반)
GUI 제공, 파일시스템 지원, BASH 셀 사용커맨드 기반 (GUI 제공하는 추세), 파일 시스템 제공
profile
study notebook

0개의 댓글