CS/운영체제

[운영체제] ch01. Introduction to Operating Systems

rngPwns 2025. 4. 21. 08:56

운영체제 (Operating System, OS) 란 무엇인가?

  • 컴퓨터 하드웨어 바로 위에 설치, 사용자 및 다른 모든 계층 소프트웨어와 하드웨어를 연결하는 소프트웨어 계층
  • 협의의 운영체제(커널) : 운영체제의 핵심부분. 메모리에 상주하는 부분
  • 광의의 운영체제 : 커널뿐 아니라 각종 주변 시스템 유틸리티 포함

 

운영체제의 목적

  • 컴퓨터 시스템을 편리하게 사용할 수 있는 환경 제공
    • 운영체제는 동시 사용자/ 프로그램이 각각 독자적 컴퓨터에서 수행되는 것 같은 환상 제공.
    • 하드웨어 직접 다루는 복잡한 부분을 운체가 대행
  • 컴퓨터 시스템 자원을 효율적으로 관리
    • 프로세서, 기억장치, 입출력장치 등의 효율적 관리
      • 사용자간 형평성있는 자원분배
      • 주어진 자원으로 최대성능
    • 사용자 및 운영체제 자신의 보호
    • 프로세스, 파일, 메시지 관리

 

운영체제의 분류

동시 작업 가능 여부

  • 단일작업(single tasking)
    • 한 번에 하나의 작업만 처리
      • ex) MS-DOS 프롬프트 상에서는 한 명령의 수행 끝나기 전에 다른 명령 수행시킬 수 X
  • 다중작업(multitasking)
    • 동시에 2개 이상의 작업 처리
      • ex) UNIX, MS Windows 등에서는 한 명령의 수행이 끝나기 전에 다른 명령 or 프로그램 수행 가능.

사용자의 수

  • 단일 사용자(single user) ex) MS-DOS, MS Windows
  • 다중사용자(multi user) ex) UNIX, NT server

 

처리 방식

  • 일괄처리(batch processing)
    • 작업요청 일정량 모아 한번에 처리, 작업이 완전 종료될때까지 기다려야 함
      • ex. 초기 punch card 처리시스템
  • 시분할(time sharing)
    • 여러작업 수행할 때 컴퓨터 처리능력 일정한 시간단위로 분할하여 사용
    • 일괄 처리 시스템에 비해 짧은 응답시간을 가짐 ex) UNUIX, LINUX
    • interactive한 방식 - 빠르기 때문에 A,B 모두 바로 반응하는 것처럼 보임
    • 각 사용자가 컴퓨터로부터 서비스를 제공받는 시간 숫자로 표시 (A: 1,4,7... / B :2,5,8.../C : 3,6,9...)
  • 실시간(Real time OS - RTOS)
    • 정해진 시간 안에 어떤 일이 반드시 보장 필요한 실시간 시스템을 위한 OS ex) 원자로, 미사일 제어 , 반도체장비, 로봇제어
    • 개념확장
      • 경성 실시간 시스템(hard realtime system) : 당장 안 되면 큰일
      • 연성 실시간 시스템(연성 실시간 시스템) : 답답하지만,, 큰 일이 나지는 x . 유연한 os

용어

Multitasking
multiprogramming  여러 프로그램이 메모리에 올라가 있음 강조(컴퓨터관점)
time sharing cpu 시간 분할하여 나눠쓴다는 의미 강조 : a-1 b-2 c-3 ...
multiprocess

  • 구분 : 위 용어들은 컴퓨터에서 여러작업 함꼐 수행 뜻

mulitprocessor : 하나의 컴 안에 cpu 여러개 붙어있음 의미

  • processor : cpu

multicore : cpu chip하나, 실행시킬 수 있는 조그만 processor 여러개 내장.