it academy 컴퓨터와 프로그램 2004 년 9 월 23 일 kaist 전산학과 한 환 수

21
IT Academy 컴컴컴컴 컴컴컴컴 컴컴컴컴 컴컴컴컴 2004 9 23 KAIST 년년년년 년 년 년

Upload: dale-robertson

Post on 18-Jan-2016

220 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

IT Academy

컴퓨터와 프로그램컴퓨터와 프로그램

2004 년 9 월 23 일

KAIST 전산학과한 환 수

Page 2: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

2

오늘 이야기

컴퓨터와 프로그래밍 언어 ( 초기의 역사 )

프로그래밍 언어와 컴퓨터 구조의 발전

미래의 컴퓨터와 프로그램 ?

Page 3: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

3

첫 프로그래밍 언어와 가상의 기계

GW-BASIC 100 가지 예제

Apple II

Page 4: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

4

BASIC

BASIC Beginner’s All-purpose Symbolic Instruction Code 1960s invented at Dartmouth College

MITS altair kit (Intel 8080 processor) MicroSoft BASIC interpreter (Paul Allen, Bill Gates)

5 weeks to complete for MITS altair

Page 5: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

5

Apple II

Apple ][ 1977 년 , Steve Wozniak, Steve Jobs Motorola 6502 processor (8-bit, 1MHz) CP/M or DOS Paper tape / FSK cassette tape

Page 6: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

6

CP/M 과 MS-DOS

CP/M (Control Program/Microcomputer) Dr. Gary Kildall (Digital Research Institute) 1973 년 , Intel 8008 with 8” floppy disk 1976 년 Rewrote with BIOS for different H/W

For IMSAI microcomputer (Intel 8080)

MS-DOS (Disk Operating System) IBM 과 DRI 협상 결렬 :( MS proposed DOS/BASIC deal on favorable term for

IBM Modified QDOS from Seattle Computer Products

Copying CP/M system calls, program structures, … CP/M-86 @ $240 vs. MS-DOS @ $60

Page 7: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

7

Alto, LISA, GEM 과 Windows

Xerox Alto 1978 년 , First GUI Window, Icon, Mouse, Pointer 초고가로 실패 - $40,000

Apple LISA (Macintosh 초기모델 ) 1981 년 , Steve Jobs 역시 고가 - $10,000

DRI GEM (Graphical Environment Manager) 1983 년 Comdex, First GUI for PC Virtually the same look and feel with

Macintosh Dropped due to Apple’s threat to sue

MS Windows v1.0 1985 년 Comdex Different look and feel from Macintosh

Page 8: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

8

Killer Apps - WordStar

WordStar 1978 년 , Rob Barnaby (MicroPro International) 개발 Written all in assembly language, running on CP/M More illegal copies than originals 1984 년 , $70 million sales, largest software company

in USA Competition from WordPerfect, MS Word

Page 9: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

9

Killer Apps - VisiCalc

VisiCalc 1979 년 , Dan Bricklin & Bob Frankston 개발 첫해 1 million copies @ $100, running on Apple II Lotus 1-2-3 로 이어짐 Quatro Pro (Borland), Excel (MS)

Page 10: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

10

Shugart Technology

Shugart Technology 1979 년 Alan Shugart, Finis Conner 설립 Seagate Technology 로 개명 1980 년 , first Hard Disk (5~10MB)

Designed new interface SASI NCR later modified to SCSI

Page 11: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

11

IBM PC

IBM PC (1980) Intel 8088 (16-bit, 4.77MHz) 64K ROM, 64K RAM PC-DOS (MS-DOS) Built-in BASIC interpreter

IBM PC XT (1983 년 ) : 64K~640K RAM IBM PC AT (1984 년 ) : Intel 80286 (6MHz), 512K~3M

RAM,

Page 12: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

12

프로그래밍 언어와 컴퓨터 구조

Page 13: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

13

프로그래밍 언어의 족보

1950s 1960s 1980s 1990s 2000s1970s

Fortran I Fortran IV Fortran 77 Fortran 90 HPF

ALGOL 58/60

COBOL

Pascal

Modula-2 Modula-3PL/1

Ada Ada95

SIMULA Smalltalk

BCPL C

ALGOL 68

C++

BASIC

LISP

Prolog

Scheme

Java

C#

Verilog XL Verilog HDL

VHDL VHDL 93

imperativeobject-orientedfunctionallogichardware description w/ time delay

SML SML 97SQL SQL/92Haskell

ML

CLOSCLisp

?

Page 14: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

14

세대별 언어의 변천

1 세대 언어 (50 년대 ~ 60 년대 초 ) Fortran ( 과학계산 ), COBOL ( 사무용 ) 간단한 control structure, 정적 메모리 관리

2 세대 언어 (60 년대 ) Algol-60, PL/1, Basic 블록 구조의 control structure, 동적 메모리 관리

3 세대 언어 (70 년대 초 ) Algol-68, Pascal, Simula, C User-defined 자료 타입 Simple language features

4 세대 언어 (70 년대 ) Ada, Modula-2 Data abstraction, Information hiding

Page 15: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

15

현재 널리 쓰이는 프로그래밍 언어

C/C++ UNIX and system software written in C C++ added strong type, object-oriented features Most popular language

Java Write once, run everywhere Object-oriented features Memory-leakage free programming Many business applications based on J2EE

Perl Script language Powerful string match and manipulations Good at handling multiple programs in sequence

Page 16: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

16

Microprocessors for PC’s

Intel processors dominate 8086 (1978 년 ) – 16bit processing, 16bit bus 8088 (1979 년 ) – 16bit processing, 8bit bus

IBM PC 에서 채택 80286 (1982 년 ) – 8086 개량판 ,

Protected mode addressing enables “virtual memory” 6MHz 에서 시작 , 20MHz 에서 작동하도록 발전

80386 (1988 년 ) – 32bit processing, 32bit bus 33MHz 에서까지 작동 Able to run UNIX with “flat addressing” Linux/gcc doesn’t use any instruction introduced later

80486 (1991 년 ) – 80386 + math coprocessor (80387) 120MHz 에서까지 작동 5 stage pipeline, cache

Page 17: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

17

Pentium (1993 년 ) – P5 Superscalar (integer unit, FP unit), dual

pipeline trademark protection

PentiumPro (1995 년 ) – P6 118bit uOP 로 변환 , Out-of-order execution L2 cache

Pentium/MMX (1997 년 ) SIMD (64-bit vector – 1,2,4 byte integer)

Pentium II (1997 년 ) Merged MMX line on to PentiumPro

Pentium III (1999 년 ) Streaming SIMD (128-bit vector, handle

float) 10 stage pipeline

Pentium 4 (2001 년 ) SSE2 (128-bit vector, handle double) 20 stage pipeline

Pentium

Page 18: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

18

Advanced Micro Devices (AMD) Historically, AMD has followed just behind Intel

A little bit slower, a lot cheaper Recently, close competitors to Intel

Developing own extension to 64 bits Athlon 64 FX, Opteron

Transmeta Recent start-up (Employer of Linus Torvalds) Radically different approach

Translates x86 code into VLIW code High degree of parallelism

Shooting for low-power market

x86 Clones

Page 19: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

19

Itanium (2001 년 ) Extends to IA64, a 64-bit architecture Radically designed for high performance

VLIW/EPIC instruction-set architecture Will be able to run existing IA32 programs

On-board “x86 engine” Joint project with HP starting early 1990’s

Itanium 2 (2002 년 ) More functional units (4 INT units, 2 FP units, 1 branch

unit) Bigger on-chip cache (3~6MB) Big performance boost

New Species: IA64

Page 20: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

20

Moore’s Law

Gordon Moore (co-founder of Intel) 2X density every 18 month

40044004- 1971- 1971- 2300 Transistors- 2300 Transistors- 10 um process- 10 um process- 12 mm- 12 mm22

- 108 kHz- 108 kHz

Pentium 4Pentium 4- 2002 (31 yrs)- 2002 (31 yrs)- 55M (24K X)- 55M (24K X)- 0.13um (1/77K X)- 0.13um (1/77K X)- 142 mm- 142 mm2 2 (12 X)(12 X)- 2.8 GHz (26K X)- 2.8 GHz (26K X)

Itanium 2Itanium 2- 2002 (31 yrs)- 2002 (31 yrs)- 220M (96K X)- 220M (96K X)- 0.18um (1/55K X)- 0.18um (1/55K X)- 421 mm- 421 mm2 2 (35 X)(35 X)- 1 GHz (9K X)- 1 GHz (9K X)

Page 21: IT Academy 컴퓨터와 프로그램 2004 년 9 월 23 일 KAIST 전산학과 한 환 수

21

미래의 컴퓨터

미래의 컴퓨터는 어떤 모양일까 ? Ubiquitous computing – embedded processors all

around Quantumn computer? Biological computer? Robot?

미래의 프로그램은 ? 전문 프로그래머 ? End-User Program? Should be EASIER than now!

Natural way of Programming and Debugging