OS arrangement for test - 일괄처리 vs 다중처리

in operating-system •  7 years ago 

안녕하세요. 처음 포스팅을 하는데 바로 공부로 시작하네요~

조금 딱딱한데 눈에 들어오기 쉽도록 정리하도록 노력해보겠습니다^^

일괄 처리 시스템(Batch programming system) vs. 다중 처리 시스템(Multi programming system)

  • 일괄 처리 시스템(Batch processing system)
    · 하나의 작업이 CPU를 독점하기 때문에 처리 속도가 빠르다.
    · 반환시간이 존재한다.
    · CPU와 Channel 간에는 병렬 I/O를 수행하는데, I/O가 동시에 발생해도 문제가 되지 않도록 해주는 것이 "DataBuffer"이다. 즉 I/O device에서 I/O command가 있을 때만, buffer에서 channel을 통해 I/O device로 전송할 수 있다. (buffer가 없다면 메모리에서 직접 이 작업을 수행해야하는데, 메모리는 주소와 함께 데이터를 정적으로 가지고 있는 상태이다. 따라서 반드시 검색을 통해 값을 찾아야 하기 때문에 시간이 너무 오래 걸릴 것이다.)
    · 결정적인 단점은 반환 시간이 존재하기 때문에, 대화형 프로그램에는 적절하지 않다는 것!

    일괄처리이미지.png

    ☞ 채널이 뭐죠?
    일종의 전자회로상 통로라고 생각할 수 있다.

    ☞ 버퍼의 역할은?
    속도 차이를 완충하는 역할 (입출력 대기 시간을 없앰)

    ☞ DMA의 역할은?
    Memory cycle 경쟁을 제어하는 역할을 한다. (channel쪽에서 읽거나 쓰는 것을 제어) 따라서 자기 디스크와 memory 사이의 고속 전송이나 대화형 단말기 화면을 다시 그리는 작업에 유용

    ☞ Interrupt란?
    User program이 아니라, H/W에 의해서 자동으로 메모리 특정부분에 있는 함수 (ISR)를 호출하는 개념, (IVT가 CPU 내에 있는데, CPU가 interrupt를 받으면 IVT를 보고 Controll을 이동시킨다.)

    ☞ 언제 Interrupt가 발생?
    I/O의 완료, 예외 동작(파일의 끝, 패리티 오류 등)

    ☞ trap vs Interrupt?
    trap은 프로그램 내에서 발생하는 것이고 inner Interrupt 또는 software Interrupt 라고도 한다. trap은 코드를 한줄 한줄 수행하다가 발생하는 것이기 때문에 동기적, interrupt는 H/W에서 발생시점이 일정하지 않기 때문에 비동기적이다.

    • 다중 처리 시스템(Multi processing system)
      · User area에 여러 프로그램을 적재, 이후 모두 작업 풀(job pool)에 적재하고 OS의 scheduling에 의하여 CPU를 할당받는다.
      · 이로써 대화형 응용프로그램에 적절한 수행능력을 가질 수 있게 되었다.
      · CPU를 여러 곳에 지속적으로 할당하여 CPU가 노는 일은 없다.

    • 시분할 시스템(Time sharing system)
      · Time slice를 만들어 매 Interval의 끝마다 Interrupt를 발생 OS의 scheduling을 받는다.
      · User에게 여러 개의 프로그램이 동시에 수행되는 것처럼 느껴지게 만든다. (Context-switching between processes)
      · 단점은 OS의 scheduling이 빈번해지면 overhead가 발생할 수 있다는 점이다.

    ☞ 실시간 시스템(real-time system)이란?
    엄격한 시간제한을 필요로하는 경우 사용, Hard, soft real-time이 존재한다.

    ☞ buffering vs. spooling
    buffering - I/O device와 보조 기억장치 사이에서 사용한다. 또한 한 작업의 I/O와 계산을 동시에 수행할 수 있다. spooling - 디스크를 매우 큰 버퍼처럼 사용하는 것으로 한 작업의 I/O와 다른 작업의 계산을 동시에 수행할 수 있다. 즉 병렬성이 더 좋다는 이야기이다.










Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

it's so good