개발자꿈나무

운영체제 본문

CS

운영체제

망재이 2023. 6. 3. 18:37

★ 운영체제란 : 컴퓨터 하드웨어 바로 위에 설치되어 사용자 및 다른 모든 소프트웨어와 하드웨어를 연결한느 소프트웨어 계층

좁은 의미 운영체제 : 커널

 

★ 운영 체제 목적 : 자원을 효율적으로 관리하기 위해, 사용자간의 형평성 있는 자원을 분배하고 주어진 자원으로 최대한 성능을 내도록,

사용자에게 편리한 환경을 제공하기 위해

 

★ 운영 체제의 분류 :

  • 동시 작업 가능 여부
    단일 작업(single tasking) MS-DOS
    다중 작업(multi tasking) UNIX, MS Windows …
  • 사용자의 수
    단일 사용자(single user) MS-DOS, MS Windows
    다중 사용자(multi user) UNIX, NT server
  • 처리 방식
    일괄 처리(batch processing) : 작업 요청의 일정량을 모아서 한꺼번에 처리, 완전히 작업이 종료될 때까지 대기
    시분할(time sharing) : 여러 작업을 수행할 때 컴퓨터 처리 능력을 일정한 시간 단위로 분할하여 사용, interactive 방식
    실시간(Realtime OS) : 정해진 시간 안에 어떠한 일이 반드시 종료됨이 보장되어야하는 실시간시스템을 위한 OS, 미사일 제어, 로보트 제어 …
    -> 경성 실시간 시스템(Hard realtime system): 특화된 실시간 처리 / 연성 실시간 시스템(Soft realtime system)으로 개념 확장
    -> 시분할 처리와 다른 점을 특수한 목적을 위해, ‘정확한 시간’을 맞춰야만 하는 시스템에 적용

 

★ 용어 정리

Multitasking : 매순간 하나의 CPU에서 하나의 작업이 이루어지지만 빠른 시간 내에 짧게 시간을 가지므로 여러가지 프로그램이 한번에 돌아가는 것처럼 보임

Multiprogramming : 메모리에 여러 프로그램이 동시에 올라감. Multitasking과 Multiprogramming은 비슷한 의미 -> 메모리 강조

Time Sharing : CPU의 시간을 분할하여 나누어 쓴다는 뜻. -> CPU 강조

Multiprocess : 비슷한 의미. 여러 작업을 동시에 수행하는 것

<Multiprocessor : 하나의 컴퓨터에 CPU가 여러개 붙어있음을 의미!> - 위의 용어들은 CPU가 하나임

 

★ 유닉스(UNIX) : 대형 컴퓨터를 위해 만들어진 운영체제 -> 멀티태스킹 지원, 여러 명 사용자 지원 가능

  • 코드 대부분을 C언어로 작성(유닉스를 위해 아예 새로운 언어를 만듦 - 어셈블리어로 운영체제를 만든다는게 너무 어려워서!)
  • 소스 코드 공개
  • 프로그램 개발에 용이
  • 높은 이식성, 확장성
  • 최소한의 커널 구조

 

★ MS사 : 개인용 컴퓨터를 위한 만들어진 운영체제 -> 단일 사용자, 단일 작업을 지원 가능하도록 출발했음

 

★ DOS(Disk Operating System) 

  • MS사에서 IMB-PC를 위해 개발
  • 단일 사용자용 운영체제, 메모리 관리 능력의 한계(주 기억장치 : 640KB)

 

★ MS Windows 

  • MS사의 다중 작업용 GUI 기반 운영 체제
  • 불안정성(초창기)
  • 풍부한 자원 소프트웨어
728x90

'CS' 카테고리의 다른 글

[컴퓨터 네트워킹 하향식접근] 1장 과제와 질문  (5) 2024.09.22
REST API  (0) 2023.08.03
데이터  (0) 2023.06.30
프로세스 동기화  (0) 2023.06.14
컴퓨터 시스템의 구조  (0) 2023.06.07