본문 바로가기

운영체제

운영체제 - 컴퓨터 시스템 자원관리

1. 컴퓨터 시스템 자원관리


운영체제는 컴퓨터 시스템의 자원을 효율적으로 사용할 수 있도록 한다.
여러 프로그램들을 동시에 실행했을 때, CPU 가 각 프로그램들을 옮겨 다니며 효율적으로 배분할 것인지 또한 운영체제에서 제공하는 기능이다

일괄 처리 시스템 (batch operating system)

  • 일괄처리 시스템은 초기 컴퓨터 시스템으로 사용된 시스템
  • 컴퓨터 이용자는 가능한 많은 시간동안 효율적인 사용을 필요로함
  • 작업 준비 시간을 줄이기 위해 요구사항이 비슷한 작업들을 함께 묶어서 수행하는 방법을 채택

문제점

  • 문제 발생시 CPU 유휴시간(시스템이 사용가능한 상태이나 실제적인 작업이 없는시간) 발생

해결책

  • 유휴상태를 없애기 위해 작업 순서의 자동화 (Automatic job sequencing) 이 도입

 

 

시분할 시스템 (time sharing system)

시분할 시스템이란 여러명의 프로세스가 사용하는 시스템에서 컴퓨터가 자원을 시간적으로 분할해주어 사용자들의 프로그램을 번갈아 가며 처리해줌으로써 각 프로세스에게 독립된 컴퓨터를 사용하는 느낌을 주는것이다

  • 여러 사용자가 각자의 단말장치를 통해 동시에 운영체제와 대화하면서 각자의 프로그램을 실행한다
  • 하나의 CPU 는 같은 시점에서 여러개의 작업을 동시에 실행할 수 없어 CPU 의 전체 사용시간을 작은 시간량으로 쪼개어 그 시간량 동안만 번갈아가며 CPU 사용이 할당되 각 작업을 처리한다
  • 다중 프로그래밍 방식과 결합하여 모든 작업이 동시에 진행되는 것처럼 대화식 처리가 가능하다
  • 시스템의 전체 효율은 좋아지지만 사용자 입장에서는 반응속도가 느려질 수 있다
  • 각 작업에대한 응답시간을 최소한으로 줄이는 것을 목표로 하며, 하드웨어를 보다 능률적으로 사용할 수 있다

 

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

  • CPU 가 항상 수행되도록하여 이용도를 높이기 위한 방안, 주기억장치 내 여러개의 프로그램들이 존재하도록함
  • 운영체제는 주기억장치 내에 있는 자업중 어느하나를 선정하여 실행
  • 실행중 키보드 또는 어떤 입출력장치 등의 조작이 끝나는것과같은 event 를 기다려야할때 다중프로그래밍 체제에서는 운영체제가 다른 작업으로 switching 하여 새로운 작업을 수행
  • Job 이 기다리는 상태가 되면 운영체제가 중앙처리장치를 다른 작업이나 프로그램에게 전황하며 CPU 는 쉬는시간이 없게됨
  • 여래거의 작업을 waiting 상태로 두고, waiting 상태에있는 여러작업중 한 작업을 선정하는 데에는 별도의 기억장치 관리 기법이나 CPU 관리 기법이 필요

 

대화형 시스템 (interactive system)

  • 사용자와 컴퓨터간의 상호작용을 통해 작동하는 컴퓨터 시스템이다
  • 대화형 시스템은 사용자가 데이터, 명령 또는 작업을 입력하면 컴퓨터가 실시간으로 해당 입력에 응답한다
  • 웹사이트, 스마트폰 앱 등을 대화형 시스템의 한 예로 볼수있다

 

다중 처리기 시스템 (multi-processor system)

  • 마이크로프로세서의 등장으로 인해 적은 비용으로 프로세서를 사용 가능
  • 마이크로프로세서의 크기가 작기 때문에 하나의 시스템에 여러개의 프로세서를 두는것이 가능
  • 공유기억장치를 통해 하나로 연결된 다중처리기의 제어 및 공유를 위한 시스템
  • 문제상황이 그렇게 엄격하지 않고 두개 또는 그 이상의 프로세서들을 결합함으로써 보다 높은 작업의 처리율을 제공하는데 목적을 두는 약 결합 시스템
  • 예시로 멀티코어 CPU 를 들수 있다, 여러개의 CPU 가 주기억장치를 다같이 이용

참고 : https://www.geeksforgeeks.org/batch-processing-operating-system/

 

Batch Processing Operating System - GeeksforGeeks

A Computer Science portal for geeks. It contains well written, well thought and well explained computer science and programming articles, quizzes and practice/competitive programming/company interview Questions.

www.geeksforgeeks.org

참고 : https://velog.io/@lixxce/%EC%9D%BC%EA%B4%84%EC%B2%98%EB%A6%AC-%EC%8B%9C%EC%8A%A4%ED%85%9Cbatch-procecssing-system

 

[운영체제]일괄처리 시스템(batch procecssing system)

\-일괄처리 시스템은 초기 컴퓨터 시스템으로 사용된 시스템이다.\-컴퓨터 이용자는 가능한 많은 시간 동안 효율적 사용이 필요했다.\-작업 준비 시간을 줄이기 위해 요구 사항이 비슷한 작업들

velog.io

참고 : https://velog.io/@weweweme/1731-221217

 

시분할 시스템(Time Sharing System)이란?

시분할 시스템(Time Sharing System)

velog.io

참고 : https://velog.io/@lixxce/%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C%EB%8B%A4%EC%A4%91%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8D-%EC%8B%9C%EC%8A%A4%ED%85%9Cmultiprogramming-System

 

[운영체제]다중프로그래밍 시스템(multiprogramming System)

중앙처리장치가 항상 수행되도록 하여 그 이용도를 높이기 위한 방안, 주 기억 장치 내에 여러 프로그램들이 존재하도록 함운영체제는 주기억 장치 내에 있는 작업들 중 어느 하나를 선정하여

velog.io

참고 : https://review-answer.tistory.com/4

 

[운영체제] 컴퓨터 시스템 자원관리 - 다중프로그래밍, 시분할시스템 비교

컴퓨터 시스템의 자원 효율적으로 사용하려면? 운영체제는 파일 시스템, 메모리 관리, 입출력 제어, 네트워킹, 프로세스 관리 등의 기능을 수행하며, 응용 프로그램과 하드웨어의 상호작용을 지

review-answer.tistory.com

참고 : https://velog.io/@lixxce/%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C%EB%8B%A4%EC%A4%91%EC%B2%98%EB%A6%AC-%EC%8B%9C%EC%8A%A4%ED%85%9Cmultiprocessing-System