티스토리 뷰

페스트 캠퍼스 강의를 듣고 정리합니다.

프로그램 처리 방법들

배치처리 시스템

  • 일괄 처리, 배치 처리, batch processing이라고 부른다.

  • 컴퓨터 프로그램 실행 요청 순서에 따라 순차적으로 프로그램을 실행하는 방식이다.

  • 한번에 등록된 여러 프로그램을 순차적으로 실행이 가능하다.

배치처리 시스템의 문제

  • 어떤 프로그램은 실행시간이 너무 길어서, 다른 프로그램이 실행되는데 너무 많이 기달려야한다.

  • 음악을 들으면서, 문서도 작성하고 싶다.(동시에 여러 응용프로그램 실행)

  • 여러 사용자가 동시에 하나의 컴퓨터를 사용하려면 어떻게 해야하나?(다중 사용자 지원)

시분할 시스템

  • 다중 사용자를 지원하기 위해 컴퓨터 응답시간을 최소화하는 시스템이다.

  • 컴퓨터 자원을 시간적으로 분할하여 사용할 수 있게 해준다.

  • CPU 스케쥴링과 멀티 태스킹을 활용하여 지원한다.

멀티 태스킹

  • 단일 CPU에서, 여러 응용 프로그램이 동시에 실행되는 것처럼 보이도록 하는 시스템이다.

  • 1000 ms = 1초

  • 10~20ms 단위로 실행 응용 프로그램을 바꾸어 실행한다.

  • 사용자에게는 동시에 실행되는 것처럼 보인다.

멀티 태스킹 VS 멀티 프로세싱

  • 멀티 태스킹
단일 CPU에서 10~20ms 단위로 실행 응용프로그램을 바꾸어 실행하는 것이다.
  • 멀티 프로세싱
여러개의 프로세서가 작업을 병렬 처리하는 것이다.

멀티 프로그래밍

  • 최대한 CPU를 활용하도록 하는 시스템이다.

  • 응용 프로그램은 온전히 CPU를 사용하기보다 다른 작업을 중간에 필요로 하는 경우가 많다.

  • 저장 매체를 이용하는 경우도 있고, 네트워크를 이용해 요청하는 경우도 있다.

  • 결국, CPU가 아무런 동작을 하지 않고 쉬게 되는 시간이 생긴다.

  • 그래서 CPU 유휴시간을 활용하여 다른 응용 프로그램을 처리하도록 했다.

실제로는 시분할 시스템, 멀티프로그래밍, 멀티 태스킹이 유사한 의미로 통용된다.

정리

  • 여러 응용 프로그램 실행을 가능하게 한다.

  • 응용 프로그램이 동시에 실행되는 것처럼 보이도록 한다.

  • CPU를 쉬지 않고 응용 프로그램을 실행토록 해서, 짧은 시간 안에 응용 프로그램이 실행 완료될 수 있도록 한다.

  • 컴퓨터 응답 시간도 짧게 해서, 다중 사용자도 지원한다.

  • 시분할 시스템: 다중 사용자 지원, 컴퓨터 응답시간을 최소화하는 시스템

  • 멀티 태스킹: 단일 CPU에서 여러 응용 프로그램을 동시에 실행하는 것처럼 보이게 하는 시스템

  • 멀티 프로세싱: 여러 CPU에서 하나의 응용 프로그램을 병렬로 실행하게 해서, 실행속도를 높이는 기법

  • 멀티 프로그래밍: 최대한 CPU를 일정 시간당 많이 활용하는 시스템

(참고)메모리 계층 - 컴퓨터 구조

https://computationstructures.org/lectures/caches/caches.html

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함