2015 Week 02,,, / _
2.0
1.
: : 4
,,, 5
CPU 시스템 $ 소프트웨어 6
Windows, Mac OS X, 시스템 $ 소프트웨어 7
/ : C, C++, Objective-C, Ruby, Java DBMS: 시스템 $ 소프트웨어 8
:,,,,, Finder (Mac OS X), (Win), Terminal, ipconfig, Internet Explorer 시스템 $ 소프트웨어 9
(OS) 10
(OS), ( ),... 11
(OS) 1960 IBM System/360 1970 UNIX, VMS 1970 CP/M, DOS, Mac OS 12
(OS) 1984 Apple Macintosh GUI (Graphical User Interface) 1990 MS Windows, CD, DVD, 2000 ROM ios, Android, Windows CE (Windows Mobile), Palm 13
(OS), /, PC, (Unix, Linux, Windows), (Mac OS X), 14
(OS) Vendor ( ) Microsoft Windows, Mac OS X, Linux, Unix, AIX, FreeBSD Mac OS X Windows CPU Microsoft Windows Intel CPU Motorola CPU CPU CPU Linux CPU (CPU ) CPU 15
(OS) (Booting) OS ROM (Firmware hardware software ) Booting ROM OS (Kernel)., 16
(OS) User Interface CLI, Menu-driven, GUI (event loop) 17
(OS) (process ) :,, OS ( / ) : : ( : ) Multitasking ( ) 18
(OS) (process ) CPU (Time Sharing) ( : A1, A2, A3, B1, B2...) CPU CPU A1 B1 C1 A2 B2 C2... 19
(OS) (process ) CPU (Parallel Processing) ( : A1, A2, A3, A4, A5...) CPU, OS CPU1 A1 A4 A7 CPU/ (Multiprocessing) CPU2 A2 A5 A8 / CPU3 A3 A6 A9 20
(OS) CPU ( ) / RAM, Hard Disk ( ) ( ) RAM RAM Virtual Memory, 21
(OS) :, FAT, FAT32, NTFS, HFS, ext3, ISO9660, UDF, ZFS... OS : Windows XP Mac OS X FAT, FAT32. 22
(OS) : super user ( ) user directory application files read, write UNIX OS multi user system / MS Windows / Vista/Windows 7 (ex. ActiveX) 23
(OS) (zip, tar, gzip...) internet connection network connection activity monitor... 24
25
: DOS, MS Windows, Mac OS, UNIX, Linux DOS: IBM PC (1980 ) 90, UNIX CLI Mac OS: Apple (1984 ) GUI 1980 MS Windows MS Windows 2.0, 3.0 Windows 95 GUI, Mac OS 64 Mac OS X 10.7, Windows Windows 7 26
UNIX: 1970, AT&T Bell Lab multiuser, multiprocessing CLI GUI front end GUI 1980 HP-UX, Solaris, AIX Mac OS X UNIX OS UNIX Linux 27
Linux: 1991 (Linus Torvalds) MIT Richard Stallman ( ) GNU Project GNU Project OS Linux Linux GNU Linux redhat linux,, ubuntu, but? 28
Richard Stallman GNU Project (free) (Open Source), SourceForge.net (sf.net), github,,, (GPL, LGPL, BSD ) Konqueror Webkit Chrome 29
: : 1980 Novell Netware - Windows NT, Solaris, IBM OS/2 30
2.
(Programming Language) A programming language is an artificial language designed to communicate instructions to a machine, particularly a computer. Programming languages can be used to create programs that control the behavior of a machine and/or to express algorithms precisely. - wikipedia (http://en.wikipedia.org/wiki/ Programming_language) 32
(Programming Language) (programming) (compiler) ( ) (Low-level Language) (High-level Language) 33
(Programming Language) (Low-level Language) CPU : (Machine Language), / Machine Language ( ) Assembly Language Machine Language BASIC 169 1 160 0 153 0 128 153 0 129 153 130 153 0 131 241 96 5 FOR I=1 TO 1000: PRINT "A";: NEXT I 34
(Programming Language) (Low-level Language) Assembly Language section.text global _start _start: mov edx,len mov ecx,msg mov ebx,1 mov eax,4 int 0x80 CPU/OS mov eax,1 int 0x80 section.data msg db 'Hello, world!',0xa len equ $ - msg 35
(Programming Language) (High-level Language) (CPU) Fortran, Cobol, C, Pascal, Basic, C++, Java, Processing, Objective-C, Python, Ruby 36
(Programming Language) #JAVA public class HelloWorld { public static void main(string[] args) { System.out.println("Hello, World!"); } } #ANSI C #include <stdio.h> /* Hello */ int main(void) { printf("hello, World!"); return 0; } #Objective-C/Cocoa #import <Foundation/Foundation.h> int main (int argc, const char * argv[]) { NSLog(@"Hello, World!"); return 0; } #Ruby puts "Hello, World!" http://www.scriptol.com/programming/hello-world.php 37
(Compiler) (Source Code) (Object Code) Object Code:.exe,.com,.app (mac os x) decompile... (decompile: ), compile 38
(Interpreter) Compiler BASIC Ruby JavaScript CPU / 39
FORTRAN (FORmula TRANslator): 1954, ( ). COBOL:, 40
Procedural Programming Language ( ),,, Structured Program ( ) if/else, for, while : Pascal, C, BASIC, PL/1, Ada 41
C Language 1970 AT&T Bell Lab UNIX C++ Objective-C,, 42
Object Oriented Programming Language ( ) OOP : ( ) (Object), (method) Class X Objective-C, SmallTalk, C++, Java, C# 43
C++ 1980 AT&T Bell Lab C,, Java 1980 Sun Microsystems,, OS ( ) Byte Code JavaVM (Platform independent) 44
? We believe every child should have the opportunity to learn computer science, from primary school up to and including further education. We teach elementary physics to every child, not primarily to train physicists but because each of them lives in a world governed by physical systems. In the same way, every child should learn some computer science from an early age because they live in a world in which computation is ubiquitous. A crucial minority will go on to become the engineers and entrepreneurs who drive the digital economy, so there is a complementary economic motivation for transforming the curriculum. The Guardian, March 31, 2012 (http://www.guardian.co.uk/education/2012/mar/31/manifesto-teaching-ict-education-minister) 45
? : computational thinking understanding difference between human and artificial intelligence algorithms, cryptography, machine intelligence, search, computational X (http://www.guardian.co.uk/education/2012/mar/31/why-kids-should-be-taught-code) 46
3.
,,,, : (Internet),, ( ) 48
: (Roy David Williams, Caltech) A4: 2KB (1KBytes = 10 3 Bytes) : 1MB (1MBytes = 10 6 Bytes) : 2MB 2001 : 8,000 TB (1TBytes = 10 12 Bytes) : 5,000,000 TB IDC: 30% (,, ) IT 49
: ( ) :,,, : (, TV), (,, ) : : : 50
, PSTN, Computer Network 1.& 우편망 2.& 전화망 PSTN:&Public&Switched&Telephone&Network 3.& 컴퓨터 & 네트워크 &( 데이터 & 통신망 ) PDTN:&Packet&Switched&Telephone&Network 51
:,, 52
AOD/VOD Audio on Demand, Video on Demand /, TV, Radio, TV VoIP (Voice over IP) PSTN, TCP/IP 53
VOD (Interactive TV) olleh tv 54
55
:...,,, :..,, ( ) : :.. 56
: 0 1, :., 57
(Serial Transmission) vs. (Parallel Transmission) : (bit) (1bit), :. 1 (= 8 ) 8, 58
, (bandwidth) (bit). bps bit per second Mbps million bit per second Gbps giga bit per seconds (1 byte = 8 bits) 59
(Bus Network) (Ring Network) (Star Network) 60
Client-Server Model P2P(Peer-to-Peer) Model Ad-Hoc Network Model 61
(packet) (circuit) 62
(Bus Network), Ethernet (IEEE 802.3) 63
(Ring Network) 64
(Star Network)., 65
Client-Server Model : : : : :,, FTP 66
P2P(Peer-to-Peer) Model. / 67
Ad-hoc Network Model 68
(packet), http://www.pbs.org/opb/nerds2.0.1/geek_glossary/ packet_switching_flash.html 69
(circuit),,, 70
PAN (Personal Area Network) LAN (Local Area Network) WAN (Wide Area Network) Backbone Network ( ) 71
PAN (Personal Area Network) PAN: USB, FireWire, MP3 PAN: IrDA, Bluetooth,, 72
LAN (Local Area Network): 10Mbps ~10Gbps LAN 1964 Lawrence,, LAN: Ethernet LAN: Wi-Fi 73
WAN (Wide Area Network):, 74
Backbone Network ( ) backbone LAN WAN backbone LAN WAN 128Mbps ~ 10Gbps ( ) WAN WAN LAN LAN WAN WAN LAN WAN WAN Backbone 75
76
LAN Ethernet (IEEE 802.3) ( ) Twisted Pair, Coaxial ( ), Fiber Optics ( ) Cable 77
Wi-Fi AP (Access Point) hotspot 78
(cell) 50Mbps WiMAX: Intel. WiBro: /.. 79
4.
Inter+Network 1969 : ARPANET (Advanced Research Projects Agency) (MILNET) : 1960, (Sputnik) ( ) circuit switching packet switching packet switching ARPANET (UCLA SRI ) 81
IP (Internet Protocol) TCP/IP Ethernet LAN Ethernet ( ) TCP/IP ( ) LAN 1980, NSF NSFNET ( ) /, 1990 Web (World Wide Web: WWW) WWW. 82
: / / LAN ISP (Internet Service Provider) ISP: (e.g.,, KT ) ISP ISP 83
: PPP, IP Internet backbone Foreign ISPs backbone backbone ISP Home Computer Home Computer ISP PSTN, Cable, etc. ISP PSTN, Cable, etc. LAN Home Computer Office Computer Office Computer Office Computer 84
- (Client-Server Model) : : ( ) : (Apache) FTP : FTP FTP Email : 85
TCP/IP (IP Address) (TCP/IP) : 86
TCP/IP TCP: Transmission Control Protocol data flow control IP: Internet Protocol data destination control 87
TCP/IP TCP (Packet) 88
IP IP : IP Address: ( : 66.249.89.99 google.com) domain name 66.249.89.99 = google.com IP NIC (Network Information Center) / (KISA) 89
IP IP 4 (Byte) Byte. 1 Byte = 8 bits (= 28 ) = 256 : 256 x 256 x 256 x 256 = 4,294,967,296 ( 43 ) 90% IP Address: 73,266,688 (69,182,976, 2009/8 ) IP 1.71% ( 95% ) 90
IP (IPv4 vs. IPv6) 4 (32 ) (255.255.255.255 8 X 4) IP : 1 : 1 IP... IPv6 128 (=16 ) 2001:0db8:85a3:08d3:1319:8a2e:0370:7334 16 X 8 3.4x10 38 (340,282,366,920,938,463,463,374,607,431,768,211,456) 91
(Domain Name) IP : IP (Domain Name Server) IP (Internet Corporation for Assigned Names and Numbers, ICANN), IP 92
(Domain Name) :... ( : plaza.snu.ac.kr) ( ), (. media.daum.net, www.daum.net) 93
( ) ( ) edu ac com co org or gov go net ne - re int - mil - Korea Korea N. Japan United Kingdom France Germany Canada Tuvalu kr kp jp uk fr de ca tv 94
1969 ARPANET: 4 1996 1 2001 1 2008 5 1996 1600 1998 1 2008 13 ( 20%) 1999 1000 2006 3400 ( 70%) http://isis.kisa.or.kr 95
: FTP (File Transfer Protocol) : Telnet : Email..., 96
(Email), TCP IP ( ) TCP MIME uuencode ( MIME uudecode ) 97
(Email) :. LDAP (Lightweight Directory Access Protocol) directory ( ) dn: cn=john Doe,dc=example,dc=com cn: John Doe givenname: John sn: Doe telephonenumber: +1 888 555 6789 telephonenumber: +1 888 555 1232 mail: john@example.com manager: cn=barbara Doe,dc=example,dc=com objectclass: inetorgperson objectclass: organizationalperson objectclass: person objectclass: top 98
(Email) : PGP (Pretty Good Privacy) : : (symmetric key) (public key) 99
(Email) (public key) (private key) 100
FTP (File Transfer Protocol) (FTP Server) (download), (upload), (anonymous), FTP / ( :.zip ) 101
Telnet ( ) telnet rlogin, RDC (Remote Desktop Connection) telnet: RDC: 102
(news server) (BBS) comp.* computer-related discussions (comp.software, comp.sys.amiga) humanities.* fine arts, literature, and philosophy, (humanities.classics, humanities.design.misc) misc.* miscellaneous topics (misc.education, (User s Network, USENET) misc.forsale, misc.kids) news.* discussions and announcements about news (meaning Usenet, not current events) (news.groups, news.admin) rec.* recreation and entertainment (rec.music, rec.arts.movies) sci.* science related discussions (sci.psychology, sci.research) soc.* social discussions (soc.college.org,,,,,. soc.culture.african) talk.* talk about various controversial topics (talk.religion, talk.politics, talk.origins) 103
WWW WWW (World Wide Web) 1989 CERN (Tim Berners-Lee) 1993 GUI Mosaic, Netscape Navigator Internet Explorer, 1994 (WWW Consortium) (http://www.w3c.org) 104
World Wide Web (hypertext) : :,,, (text) (note): (link): 105
World Wide Web 1945 Vannevar Bush Memex 1965 Ted Nelson Xanadu 1977 MIT Andrew Lippman Aspen Movie Map http://www.youtube.com/watch? v=hf6lkqgxpmu 106
World Wide Web 1987 Apple HyperCard, (, ),,, 107
World Wide Web, (WWW) HTTP (Hyper Text Transfer Protocol) TCP/IP HTML (Hyper Text Markup Language) URL(Uniform Resource Locator) 108
World Wide Web URL(Uniform Resource Locator), : http://www.neowiz.com http:, www.neowiz...: ftp://www.neowiz.com ftp:, www.neowiz...: URL :// / http://www.google.com/test.jpg 109
World Wide Web WWW Tim Berners-Lee: WWW CERN Enquire (WWW ) 1990, (NeXT ) 1991 8 6 http://info.cern.ch/ 1994 W3C (World Wide Web Consortium) 110
World Wide Web Mosaic 1993 UIUC ( ) NCSA Marc Andreessen Eric Bina GUI, :,, 111
World Wide Web : Netscape Navigator Internet Explorer 1994 Marc Andreessen Jim Clark Netscape, Mosaic Navigator 1994 Microsoft Mosaic Spyglass, Internet Explorer Netscape Navigator,, Navigator integration == IE Unix, Mac OS X 2000 112
World Wide Web : Internet Explorer, MS Netscape (1998 ) (Mozilla) 2002 Mozilla 1.0 2004 Firefox CSS 2, CSS 3, Plugin/Extension MS IE 113
World Wide Web : Internet Explorer, (Apple) MS IE, Netscape KHTML (Konquerer ) Webkit Chrome (Google) Webkit, 114
World Wide Web IE 6 criticism 2001 8 (CSS2 ) (ActiveX) ( ),, facebook IE6 2013.5 115
World Wide Web ActiveX, but access (, ) (, ) spyware UNIX user/admin X ActiveX, signing message 116
5. 2.0
2.0 2.0 2000, (.com) kosmo.com - 1 ( ) IPO,.,, / 118
2.0 2004 10 O Reilly 10 2.0 2.0 119
2.0 2.0 80% 20% : 20% 80% Amazon.com 20% 80% ( (Long Tail), Chris Anderson) 120
2.0 2.0 display model,, Aggregation ( ) RSS 121
2.0 :, GarageBand, :, (RSS), Wiki, UCC, :, : AdSense ( ) 122
2.0 2.0 (Collective Intelligence), 참여 UCC 웹 "2.0 개방 공유 123
2.0 2.0 UCC (User Created Contents), UGC (User Generated Contents) Prosumer,, 124
2.0 2.0 2.0 X, :, : RSS API:, API, mashup 125
2.0 2.0 XML 2.0 2.0, RSS API (Open API) Mashup AJAX 126
2.0 RSS = Web + Log RSS feed RSS: Really Simple Syndication, Rich Site Summary XML, / podcast 127
2.0 Social Tagging and Foxonomy : ( ) : Foxonomy = Folk + Taxonomy ( + ( ) ). Flickr.com, del.icio.us Tag Cloud: 128
2.0 Open API & Mashup API: Application Programming Interface, Open API, : api var map = new GMap2(document.getElementById("map_canvas")); map.setcenter(new GLatLng(37.4419, -122.1419), 13); 129
2.0 Open API & Mashup Mashup: : HousingMaps (http:// www.housingmaps.com/) 130
2.0 (google.com) 1998 Lawrence Page Sergey Brin yahoo.com PageRank AdSense ( ) 131
2.0 itunes itunes: RSS /, UCC 132
2.0 (wikipedia) (wiki) ( / / ) wikipedia UCC, 133
2.0 YouTube, Flickr UCC (UGC), TV SNS (Social Network Service) MySpace, Facebook, Twitter, digg (, SNS ) 134
,, : google docs, calendar. CEO 3.0, 135
: Ricard Stallman.. PC.. ( ) 136
Web 2.0 James Surowiecki, The wisdom of crowds (diverse), (decentralized), (way of summarizing people s opinions into one collective verdict),., del.icio.us,,,, 137
Web 2.0 digital footprints social network agent Siri 138
Web 2.0 Siri, google +1 139
Assignment 1
Assignment 1 - Processing Hour of Code (http://hello.processing.org) (https://processing.org/ tutorials/),, 1 141
Assignment 1 - (2015-09-20 10:00pm). etl.jpg.png : 2014-31378.png 142
Assignment 1 - (https://processing.org/download/) 3.0 Beta 6 (2015-09-11 ) 143
Questions?