컴퓨터 및 정보기술의 역사
by Frinee이 글은 반효경 교수님의 "운영체제와 정보기술의 원리"를 공부하고 정리하여 작성하였습니다.
1. 컴퓨터의 선사시대
1.1. 이론적인 컴퓨터의 역사
- 수학 및 논리학적 컴퓨터의 토대는 1930년대에 크게 발전하게 되었다.
- 그중에서 대표적으로 앨런 튜링의 튜링 머신이 있고 이를 뒷받침하는 처치의 가설(Church's Thesis)가 있었다.
- 튜링 머신(Turing Machine): 계산문제를 해결할 수 있는 이론적인 장치
- 처치의 가설(Church's Thesis): "어떤 알고리즘이든지 튜링머신으로 표현할 수 있는 계산 문제는 모두 해결할 수 있다"라는 이론적 주장
1.2. 기계식 컴퓨터의 역사
- 19세기 해석기관이 찰스 배비지에 의해 고안되었다.
- 당시 고안된 해석기관은 현대 컴퓨터의 네 가지 구성요소인 입력장치, 출력장치, 처리장치, 저장장치를 포함하고 있었다.
1.3. 전자식 컴퓨터의 초기 역사
- 1943년, 영국 정부가 독일군의 암호를 해독하기 위해 최초의 전자식 컴퓨터인 콜로서스를 개발
- 1944년, 하워드 에어컨이 IBM의 투자를 받아 Mark I을 개발
- 존 모클리와 프레스퍼 에커트는 총의 탄도거리 계산을 위해 최초의 현대적 컴퓨터인 ENIAC을 개발
2. 근대적 컴퓨터의 역사
2.1. 근대적 컴퓨터의 세대분류법
- 제1세대 컴퓨터: 진공관 기반 컴퓨터 (1940년대 후반)
- 제2세대 컴퓨터: 트랜지스터 기반 컴퓨터 (1950년대 후반)
- 제3세대 컴퓨터: 집적회로(IC) 기반 컴퓨터 (1960년대 후반)
- 제4세대 컴퓨터: 고밀도 집적회로(LSI) 및 초고밀도 집적회로(VLSI) 기반의 마이크로컴퓨터 (1970년대 중반)
2.2. 연도별 컴퓨터의 발전
- 1950년대: 어셈블리 언어 등장(Fortran, Lisp, Cobol)
- 1960년대: 소프트웨어 공학의 발전, 반도체기술의 발전으로 무어의 법칙 등장
- 1970년대: 개인용 컴퓨터(PC) 등장, C언어와 UNIX의 약진
- 1980년대: 설계 방법론 패러다임 등장, 객체지향 언어의 성공
- 1990년대: 윈도우(Windows 95 및 98), www(world wide web), Java 언어 등장
당시 인텔(intel)의 CEO였던 무어는
무어의 법칙(Moore's Law) : 반도체 성능은 1.5년마다 2배로 발전할 것
이라 예언하였다.
3. 현대의 컴퓨터
3.1. 메인프레임 컴퓨터
- 대량의 데이터 처리와 신뢰성 있는 전산작업을 위해 사용, ex) 은행, 항공사, 연구소 등
- 일반적으로 터미널을 통해서 접속하고 주로 시분할 방식을 사용
- 시분할 방식: 컴퓨터 처리 능력을 짧은 시간 단위로 구분하여 여러 사용자에게 조금씩 분할해 서비스하는 방식
- 터미널(Terminal): 입력을 위한 키보드와 출력을 위한 모니터를 통합한 장치
3.2. 슈퍼컴퓨터
- 메인프레임 컴퓨터보다 처리능력이 더 뛰어난 컴퓨터, ex) 기상예측, 통신망 설계, 석유 탐사 등
- 최근 고성능 컴퓨터를 원격으로 사용하고 사용료를 지불하는 클라우딩 컴퓨팅이 주목을 받고 있음
- 클라우딩 컴퓨팅
- 고성능 컴퓨터의 능력을 조금씩 분할하여 한 대의 물리적인 컴퓨터를 여러 사용자들이 공유하여 사용하게 함.
- 이때 사용자 입장에서는 자신만의 독자적인 컴퓨터가 존재하는 것처럼 느껴지고 이를 가상 머신(Virtual Machine)이라 함
3.3. 개인용 컴퓨터
- 1인 사용자를 위한 컴퓨터
- 개인용 컴퓨터를 대형화하여 작은 연구실이나 10인 이하의 사무실에서 공동으로 사용하는 워크스테이션(workstation) 개념이 등장
- 서버(server): 네트워크로 연결된 다른 컴퓨터에 서비스를 제공하는 소프트웨어
- 통상적으로 서버급 컴퓨터라 하면 워크스테이션 이상의 처리 능력을 지닌 컴퓨터를 지칭함.
3.4. 임베디드 컴퓨터
- 기기 내부에 장착되는 형태의 컴퓨터를 지칭함.
- 각종 기기에 내장되어 그 기능을 향상시키거나 연산•처리•전달하는 등의 업무를 수행
- 최근 마이크로프로세서의 생산량 중 90%가 임베디드 컴퓨터 용도로 생산됨.
자료
- 운영체제와 정보기술의 원리 (반효경, 2020.05)
'[컴퓨터 과학자 스터디] > 운영체제' 카테고리의 다른 글
CPU 스케줄링 (0) | 2024.10.27 |
---|---|
프로세스 관리 (0) | 2024.10.22 |
프로그램의 구조와 실행 (0) | 2024.10.21 |
컴퓨터 시스템의 동작 원리 (0) | 2024.10.15 |
운영체제 개요 (1) | 2024.10.11 |
블로그의 정보
프리니의 코드저장소
Frinee