일괄 처리란 컴퓨터 프로그램 흐름에 따라 순차적으로 자료를 처리하는 방식을 뜻한다. 초기의 일괄처리 방식은 사용자와 상호작용하는 것이 불가능했지만, 운영 체제가 발전함에 따라 프로그램 입출력을 통해 상호작용하는 것이 가능해졌다.
일괄처리 시스템에서의 가장 큰 문제점은 하나의 작업이 끝나기 전까지는 다른 작업을 할 수 없다는 점이다.
급여명세서나 봉급계산, 전화요금, 전기요금, 수도세, 성적처리 등 일정 시간마다 주기적으로 한꺼번에 실행될 필요가 있고, 순차 접근법을 사용할 수 있는 업무처리에서 주로 사용함.
이렇게 한번에 처리하면 시간과 비용을 절감하여 업무의 효율성을 향상시킬 수 있었다.
하나의 CPU와 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식이다. 주기억장치에 적재된 여러 개의 프로그램들을 CPU가 항상 수행하도록 하여 CPU 이용률을 증진시켜준다.
다중 프로그래밍 운영체제에서 여러 개의 작업들이 수행할 준비를 갖추고 있다면 이 작업들 중에 하나를 선택하기 위해서는 결정이 필요한데, 이것이 CPU 스케줄링
이다. 따라서 수행해야 할 작업이 있는 한 CPU는 유휴 상태가 되지 않는다.
단점은 메모리에 여러 프로세스를 수용해야 하므로 메모리 관리가 복잡해지며, 실행 대기중인 프로세스간에 처리순서를 스케줄링해야 한다는 것.
시분할 운영 체제는 CPU 스케줄링과 다중 프로그래밍을 이용해서 각 사용자들에게 컴퓨터 자원을 시간적으로 분할하여 사용할 수 있게 해 준다.
시분할 운영 체제는 많은 사용자들이 컴퓨터를 공유하도록 한다.
시스템은 한 사용자에서 다음 사용자로 빠르게 전환함으로써 각 사용자에게 자신만이 컴퓨터를 사용하고 있는 것과 같은 착각을 주지만, 실제로는 여러 사용자가 하나의 컴퓨터를 공유하여 사용하고 있는 것이다.
오늘날 대부분의 시스템은 시분할 시스템이다.
다중 처리 시스템은 여러개의 CPU와 하나의 주기억장치를 이용하여 여러 개의 프로그램을 동시에 처리하는 방식이다.
프로세서를 여러 개 사용하여 여러 개의 작업을 동시에 수행함으로써 작업 속도를 높일 수 있다.
프로세서 중 일부에 문제가 발생하더라도 다른 프로세서를 이용해 처리할 수 있으므로 신뢰성이 높다.
일반적으로 하나의 운영 체제가 모든 프로세서들을 제어한다.
실시간 처리 시스템은 사용할 수 있는 자원이 한정되어 있는 상황에서 작업 수행이 요청되었을 때, 이를 제한된 시간안에 처리해 결과를 내주는 것을 말한다.
작업의 요청에서 수행결과를 얻기까지의 시간적인 제약이 존재하는 시스템으로 그 제약의 엄격함에 따라서 경성 실시간 시스템과 연성 실시간 시스템으로 나뉜다.
여러 개의 분산된 데이터 저장장소와 처리기들을, 네트워크로 연결하여 서로 통신을 하면서 동시에 일을 처리하는 방식
하나의 대형 컴퓨터에서 수행하던 기능을 분산된 여러 컴퓨터에 분담시킨 후, 네트워크를 통하여 처리하는 방식이다.
운영체제 책을 보다보면 참 헷갈리는 용어가 많이 나오는데 이 부분도 상당히 용어자체가 헷갈린다. 처음에 보면 다중프로그래밍? 멀티프로그래밍? 다중처리? 라며 헷갈리게 된다.
헷갈리지 않게 특징별로 잘 기억해두자. 그리고 어떤식으로 시스템이 발전되어왔는지도 눈여겨보도록 하자.