키워드로 한번 알아 보도록 하자
초창기 컴퓨터(1940년대)
최초의 컴퓨터
에니악, 30톤 규모의 거대한 계산기로 미사일 탄도를 계산하기 위해 제작
물론 운영체제가 없었음
초기의 컴퓨터
키보드, 마우스, 모니터와 같은 주변장치가 없었다.
하드와이어링
전선을 연결하여 논리회로를 구성하는 것
일괄 작업 시스템(1950년대)
현대적인 모습의 컴퓨터가 탄생
미약하지만 중앙처리장치 CPU 와 메인메모리 RAM가 존재
키보드, 마우스, 모니터와 같은 입력 및 출력장치가 없었음
입력장치
천공 카드리더, 카드에 구멍을 뚫어 문자를 입력
출력장치
라인 프린터, 한 번에 한 줄씩 출력
일괄 작업 시스템, 일괄 처리 시스템
모든 작업을 한꺼번에 처리해야 하고 프로그램 실행 중간에 사용자가 데이터를 입력하거나 수정하는 것이 불가능
대화형 시스템(1960년대 초반)
키보드와 모니터가 등장
이로써 작업 중간에 사용자가 입력, 중간 결과값을 볼 수 있게 되었음
대화형 시스템
컴퓨터와 사용자의 대화를 통해 작업이 이루어지는 시스템
CPU 집중 작업
일괄 작업 시스템에서 프로그램이 실행되는 동안 입출력이 불가능하기 때문에 대부분의 작업이 CPU만 사용하는 계산 작업
입출력 집중 작업
대화형 시스템에서 프로그램이 실행되는 동안 입출력이 가능하기 때문에 입출력 집중작업이 생겨남
시분할 시스템(1960년대 후반)
다중 프로그래밍이 가능하게 되는 시점
CPU 사용 시간을 아주 잘게 쪼개어 여러 작업에 나누어 줌
시분할 시스템
여러 작업을 조금씩 처리하여 작업이 동시에 이루어지는 것처럼 보이게 하는 것
오늘날의 컴퓨터에 대부분 사용
타임 슬라이스, 타임 퀀텀
잘게 나뉜 시간 한 조각
실시간 시스템
특정 시스템에서 일정 시간 안에 작업이 처리되도록 보장
분산 시스템(1970년대 후반)
스티브 잡스가 최초의 개인용 컴퓨터 애플II를 발표
개인이 소유하기 쉬워짐
인터넷이 등장한 시기
TCP/IP 프로토콜이 정의됨
운영체제
애플의 매킨토시
마이크로소프트의 MS-DOS
가 많이 사용됨
분산 시스템
네트워크상에 분산되어 있는 여러 컴퓨터로 작업을 처리하고 그 결과를 상호 교환하도록 구성한 시스템
클라이언트/서버 시스템(1990년대~현재)
분산 시스템은 시스템에 참가하는 모든 컴퓨터가 동일한 지위이기 때문에 컴퓨터가 고장나거나 추가되면 작업을 분배하고 모으기 쉽지않다
이런 문제점을 해결
웹 시스템
클라이언트가 요청하고, 서버는 요청받은 작업을 응답해주는 이중 구조
문제점
서버 과부하를 문제점으로 볼 수 있음
수십만 명의 클라이언트를 처리하기 위해서는 많은 서버와 큰 용량의 네트워크가 필요함
그리드 컴퓨팅
분산 시스템의 한 분야로, 서로 다른 기종의 컴퓨터들을 묶어 대용량의 컴퓨터 풀을 구성하고 이를 원격지와 연결하여 대용량 연산을 수행하는 컴퓨팅 환경
예) 웹하드 서비스, 무료로 웹 하드 이용권을 나누어주는 것은 서비스 가입자 몰래 그리드 딜리버리 프로그램을 깔아서 서버의 부하를 줄이기 위함
이게 무슨 말이냐 하면 서버에있는 데이터를 내려 받는게 아니라 이미 내려받은 컴퓨터로부터 몰래 데이터를 빼와서 전달하는 것내 컴퓨터 자원을 빼앗기기 싫다면 사용 금지
SaaS(Software as a Service)
사용자가 필요할 때 소프트웨어 기능을 이용하고 그 만큼만 비용을 지불하는 개념
클라우드 컴퓨팅
언제 어디서나 응용 프로그램과 데이터를 자유롭게 사용할 수 있는 컴퓨팅 환경으로
그리드 컴퓨팅 + SaaS