[운영체제]Spooling(simulation Peripheral Operation Online)

뚱환·2023년 4월 13일
0

Spooling (simulation Peripheral Operation Online)이란?

  • 버퍼링은 주기억장치를 버퍼로 활용하지만, 스풀링은 디스크를 매우 큰 버퍼처럼 사용한다.
  • 스풀링은 특히 다중 프로그래밍 환경에서 다수 프로세스들이 입출력장치를 서로 요구하거나 그 장치의
    수가 제한되어 있는 경우 이를 공유하기 위해 가상장치를 각 프로세스에게 제공해주는 개념이다.
  • 보통 가상장치들은 스풀링 통제 프로그램에 의해 디스크에 나타남. 따라서 다수의 프로세스들은 각기 독립적인 입출력장치를 갖게 됨.
  • 프로세스들은 입력 또는 출력을 실제 입력장치를 통하지 않고 가상 입출력 장치인 디스크를 매체로 사용함.

Spooling (simulation Peripheral Operation Online) 이점.

  • 작업 풀이라는 아주 중요한 자료 구조를 제공
  • 작업들은 선입 선 처리기를 기번으로 순차적으로 수행되어야 함, 그러나 여러 개의 작업들이 디스크와 같은 직접 접근 장치에 있다면, 작업스케줄링이 가능
  • 디스크에 얽혀져 실행을 위해 대기하고 있는 여러 개의 작업을 수행할 수 있도록 준비,
    디스크 상에 있는 작업들은 cpu 이용율을 향상시키기 위하여 운영체제가 다음에 수행시킬 수 있도록 해 줌

Spooling의 예시

스풀링의 적용 대표적인 예시는 프린터 출력 작업이다. cpu가 프린터 출력을 직접 제어한다면 프린터의
인쇄 작업이 끝날 때까지 다른 일을 하지 못하게 된다. 그런데 실제로 작업시간의 대부분은 cpu가 프린터의 요청을 기다리는 시간이기 때문에 cpu 사용효율이 매우 낮다. 이런 문제를 해결하기 위해 프린터로 전송될 데이터를 하드디스크에 잠시 저장하고 , cpu는 다른 일을 처리하면서 필요할 때마다 조금씩 프린터로 보내주는 방식으로 cpu 사용 효율을 향상시킬 수 있다.

profile
https://github.com/lixxce5017/Algoritm_Weekly_Baekjoon

0개의 댓글