본문 바로가기

별걸다하는 IT/운영체제 OS

[운영체제]컴퓨터 시스템 발전과정, 역사- 메인프레임mainframe, 배치 batch 시스템, Resident monitor

[운영체제 완전정복 목차]

Computer System Architecture 

오늘은 컴퓨터 시스템에 대해서 알아볼거예요.

Mainframe system (오늘 할 메인프레임 시스템), Multiprogramming systems, Time-sharing systems, desktop systems, parallel systems, Distributed systems, Clustered systems, Real-time systems, Embedded systems, Handheld systems

이게 다 컴퓨터 시스템 종류입니다. PC만 컴퓨터인 줄 아는데 우리 컴퓨터 시스템은 이렇게 많은 종류가 있어요!!


컴퓨터 시스템은 여러 방법에 따라 분류할 수 있습니다. 한 포스팅에 다 설명을 하기에는 내용이 너무 많으니까 역사적으로 진행되온 순서에 따라 차근 차근 다루면서 특징까지 살펴보도록 할게요.


Mainframe Systems

메인프레임 시스템이라고 얘기를 하는데 옛날에 최초에 컴퓨터를 만들었을 때 그 컴퓨터를 메인프레임이라고 불렀습니다.

당연히 초창기에 만들었으니까 덩치가 컸겠죠? 크기가 엄청 큰데 큰거에 비해서 실제로 컴퓨터가 빠르지도 않아요ㅎㅎ 초기 컴터니까요. 이런 컴퓨터 시스템을 우리가 메인프레임 시스템이라고 불렀다!

이 메인프레임 시스템을 맨 처음에 아주 제일 초기에 잘 만들어서 팔았던 회사가 IBM이예요.

← 이 사진도 IBM사의 z9 메인프레임 컴퓨터랍니다.

IBM이 이런 메인프레임 컴퓨터를 잘 만들어서 장사를 엄청 잘했죠. 

↓ 여기 아래에 보이는 이 사진은 IBM watson이라고 하는 슈퍼컴퓨터인데 지금 이거를 메인프레임이라고 부르지는 않아요.




하지만 이렇게 덩치가 큰 것을 메인프레임 시스템이라고 했고 초기에 은행들이 전산화 될 때 IBM이 메인 프레임 시스템을 도입해서 은행들이 대부분 전산화가 됐습니다.


지금 얘기하는 것은 1970년대, 80년대 즉 옛날 시절 얘기하는 거예요! 

메인프레임 시스템이라는 말은 요즘에는 잘 안쓰는 말입니다. 



Batch System 배치 시스템

이렇게 메인프레임 시스템이 나오던 시절에 운영체제라고 하는게 있었을까요? 이렇게 초창기 컴퓨터에는 운영체제라고 하는 것도 존재하지 않았습니다. 메인프레임 컴퓨터 시절에 프로그램이 동작하는 게 이렇게 배치 시스템이라고 하는 형태로 동작했어요. 당연히 프로세서도 한 개 였습니다. 


배치 시스템이라는 것은 프로그램이 하나 수행이 되는거예요.

하나 수행을 시켜놓고 그 프로그램이 쭉 수행되다가 다 끝나면 다음 프로그램 올려서 수행시키고, 개가 다 끝나면 그 다음 프로그램 올려서 수행시키고 이런 식으로 돌렸습니다.


즉! 프로그램이 하나밖에 안돌아가는 거죠!

그래서 운영체제라고 부르지도 않았는데..

← 이 그림에서 운영체제에 해당하는 이 프로그램이 하는 일은 프로그램을 메인 메모리에 올려놓고 메인 메모리에 올려놓은 프로그램이 수행이 돼서 끝나기를 기다리는 거죠.

끝나면 이 메모리 영역에 있는 이 프로그램 대신에 다른 프로그램을 메모리에 올려놓고 개를 실행시켜 주고 그리고 끝나기를 기다리는 겁니다. 이 역할만 수행했어요.

그래서 예전에는 운영체제라고 안부르고 Resident monitor라고 불렀어요.

모니터가 말그대로 모니텅링 하는거고, Resident라는 말이 붙은 건 메모리에 항상 상주해있으면서 모든 일을 수행하는 프로그램이다 라고 해서 붙었습니다. 


운영체제라는 이름은 초기에는 나오지 않았다는 것! 


Batch System의 문제?

근데 이렇게 동작을 하면 무슨 문제가 있을까요? 비싼 CPU가 낭비돼요!

CPU 놀고 있습니다. 프로그램이라 하는 것은 명령어들을 수행을 하잖아요. 명령어들 수행하다가 I/O장치에 '디스크에서 데이터를 읽어라' 라는 명령을 요청을 했다고 가정합시다. 그러면 CPU 하는 일은 이 작업이 끝날 때까지 기다리는 거예요. 그런데 지금 메모리에 프로그램이 하나밖에 없잖아요. I/O장치가 끝날 때까지 CPU는 결국 기다리고 있어야해요. CPU 엄청 나게 비싼 하드웨어 자원인데 놀리게 되는겁니다!


그럼 이 문제점을 해결하기 위해 다른 시스템이 나왔겠죠? 그것에 대해서 다음 포스팅에서 다뤄볼게요.