오도원입니다.

건강과 행복을 위하여

컴퓨터공학/운영체제

# 3. History로 보는 운영체제 (1950년대 ~ 1960년대)

오도원공육사 2020. 2. 6. 17:22
반응형

1. 1950년대 ~ 1960년대

1) 1950년대

첫번째 컴퓨터 애니악(EANIAC )

운영체제가 없었다. 1개의 응용 프로그램을 실행시키기도 바빴으며 응용 프로그램이 시스템 자원을 제어, 관리했다.

 

2) 1960년대 초기

배치 처리 시스템(batch processing system) 출현

 여러 응용 프로그램을 등록시켜놓으면, 순차적으로 실행하는 시스템이다. 배치 처리 시스템을 기반으로 운영체제가 출현했다.

철수 : 프로그램 1

영희 : 프로그램 2

프로그램 실행방법은 프로그램 1 -> 프로그램 2 또는 프로그램 2 -> 프로그램 1 밖에 없다.

 

3) 배치 처리 시스템의 단점

  • 1. 컴퓨터 응답시간(reponse time)이 오래 걸린다. 앞에서 실행 시간이 많이 드는 응용 프로그램이 실행될 수 있기 때문이다.
  • 2. 실행 시간도 오래걸린다. CPU가 필요없음에도 응용 프로그램이 CPU를 점유할 수 있기 때문이다.

 

 

4) 1960년대 후기

새로운 개념이 제안되었다.

  • 시분할 시스템(Time Sharing System)
  • 멀티 태스킹(Multi Tasking)

목적은 다르지만 '시간을 쪼갠다'는 점에서 기술적으로 유사하다. 제안은 되었지만 아직 운영체제로 구현되지는 않았다.

 

2. 시분할 시스템과 멀티 태스킹

응용 프로그램이 CPU를 사용하는 시간을 잘개 쪼개서, 여러 개의 응용 프로그램을 동시에 실행하는 기법이다.

 

1) 시분할 시스템

다중 사용자를 지원하고, 컴퓨터 응답 시간을 최소화하는 시스템이다. 컴퓨터의 응답시간은 정보 입력 후 출력으로 나오는 시간을 의미한다. 다중 사용자를 지원하기 위해서는 이 응답 시간을 줄여야한다.

 

 예를 들어, 앞에서 배치 처리 시스템에서는 프로그램 1의 실행시간이 12시간이 일 때, 프로그램 1이 실행동안 데이터를 입력하면 최대 12시간 뒤에 출력을 받을 수 있다.

그러나 다음과 같이 시분할 시스템을 사용한 경우를 보자. 다음 엑셀의 한칸을 15분으로 가정했을 때, 프로그램 1이 실행동안 데이터를 입력하면 최대 15분 이후에는 출력을 볼 수 있다는 것이다. 이렇게 시분할 시스템을 사용하면 컴퓨터의 응답시간을 최소화하여 다중 사용자를 지원한다. 

 

2) 멀티 태스킹

 단일 CPU에서 여러 응용 프로그램의 병렬 실행을 가능케 하는 시스템이다. 특정 시점에 실제로 실행되는 응용 프로그램은 하나이지만 시간을 잘게 쪼개서 매우 짧은 시간마다 실행하는 응용 프로그램을 바꿔 동시에 실행되는 것처럼 사용자에게 보이게 한다.

 

일반적으로 시분할 시스템 = 멀티 태스킹

 

참고) 멀티 프로그래밍

최대한 CPU를 많이 활용하도록 하는 시스템이다. 시간 대비 CPU 활용도를 높인다. 예를 들어, 메모리에서 파일을 읽어오는 동안 다른 작업을 수행하는 등이 있다.

 

핵심 기술 !

시간을 잘게 쪼개서 여러 응용 프로그램을 실행한다.

  • 컴퓨터 응답 시간을 줄일 수 있다. => 시분할 시스템, 다중 사용자 지원
  • 전체 응용 프로그램의 실행 시간을 줄일 수 있다. => 멀티 프로그래밍
  • 결과적으로, 사용자 입장에서 여러 응용 프로그램을 동시에 실행되는 것처럼 보인다. => 멀티 태스킹

 

정리

  • 1950년대
    • 운영체제가 없었다.
    • 응용 프로그램이 직접 시스템 자원을 제어하며 실행
  • 1960년대 초반
    • 배치 처리 시스템 도입
    • 배치 처리 시스템을 기반으로 운영체제가 출현
  • 1960년대 후반
    • 시분할 시스템 / 멀티 태스킹 / 멀티 프로그래밍 => 아이디어로 제시, 구현은 하지 않았다.
    • 기술 : CPU 시간을 잘게 쪼개서 사용
    • 결과 : 다중 사용자 지원, 실행 시간 감소, 응용 프로그램 동시 실행
반응형

'컴퓨터공학 > 운영체제' 카테고리의 다른 글

# 2. 운영체제와 응용 프로그램  (2) 2020.02.06
# 1. 운영체제 큰 그림 이해하기  (0) 2020.02.06