1 COSC 1306 COMPUTER SCIENCE AND PROGRAMMINGJehan-François Pâris Fall 2016 1
2 CHAPTER I THE COMPUTER
3 Chapter Overview The computing phenomenon PervasivenessComputers or computing? Historical perspective Four predecessors The birth of computers Its evolution 3
4 THE COMPUTING PHENOMENON
5 Computers as life changersThey are everywhere They have changed our lives Electronic mail WWW Online order processing Ticketless travel
6 The iceberg Most computing takes place where we do not see it
7 Examples Car computers Set-top box Digital televisionFly-by-wire planes Smart phones Many medical appliances
8 An analogy Mid-nineteenth century big textile factories usedSteam-powered looms One steam engine powered several looms Power went through transmission belts and pulleys Dangerous
9 transmission belts
10 An analogy (cont'd) Stream engines were progressively replaced by electrical motors Quickly found it was better to have one smaller motor per loom Got rid of transmission belts Allowed more flexible plant layouts Now electrical motors are everywhere Car power windows, razors, toothbrushes, …
11 How it applies Started with a few giant "electronic brains"Replaced by time sharing computers and individual terminals Moved to personal computers Each of us is now likely to have several computing devices
12 Counterpoint Are we now living in the best of all possible worlds?
13 Social problems Lack of privacy Distraction Nothing is forgotten
14 More pressing problemsWhat happens when computers that control critical aspects of our lives go wrong? In 1985 a Canadian-built radiation-treatment device began blasting holes through patients' bodies. How a series of simple computer errors sabotaged a state-of-the-art medical wonder. (http://www.ccnr.org/fatal_dose.html)
15 The full report An Investigation of the Therac-25 AccidentsNancy Leveson, U of Washington Clark S. Turner, UC Irvine IEEE Computer, Vol. 26, No. 7, July 1993, pp
16 Another big problem In fly-by-wire planes, pilots’ inputs are handled by an on-board computer What happens when pilots’ inputs conflict with safety rules implemented in the on-board computer?
17 The answer It depends On Boeing planes, the pilot winsGreat for airlines with highly-trained pilots Not so good otherwise On Airbus planes, the computer wins Great for airlines with not-so-well-trained pilots Pilots can still override computer
18 An outcome On June 1, 2009 Air France flight 447 from Rio to Paris crashed in mid-Atlantic Cause of crash was aerodynamic stall Preceded by problems with speed sensors Inquiry noted that "pilots had not been trained to fly the aircraft in manual mode " 447
19 A long-term problem An increasing large number of documents are exclusively stored in digital format without any hard copy Most of your recent pictures Your grades Will they survive as well as hard copies do?
20 The issues Disk failures:Hard to figure exact mean time to fail of hard drives One hundred thousand to one million hours One hundred thousand hours is slightly more than 11 years An array of 150 disks will experience an average of one failure per month
21 The issues (cont’d) Offline storage media become rapidly obsoleteWho can read a 5.25” floppy? A 4 MB floppy? A 100MB Zip disk?
22 Can you read these? On an old PC No No
23 But you can still read this
24 And this
25 SENATVS POPVLVSQ[UE] The Senate and the people …Or even this SENATVS POPVLVSQ[UE] The Senate and the people …
26 That’s not all Hard copies were easy to authenticateType of paper and ink that were used Typewriter font Electronic forgeries are harder to detect Can use digital signatures Become easier to break over time Pictures can be “Photoshopped”®
27 My conclusion We are not in the best of all possible worldsRolling clock backward is not possible The genie is out the bottle! Must understand the issues and push for action Course will only help you with first part
28 HISTORICAL PERSPECTIVE
29 Three stages The ancestors The pioneers The continuation
30 The ancestors Their contributions made computing possibleBlaise Pascal Joseph Marie Jacquard Charles Babbage Samuel Morse Herman Hollerith All died well before computers were invented
31 Blaise Pascal Seventeenth-century French physicist, Christian polemist and philosopher His contribution First adding machine He patented it!
32 La machine de Pascal Could only add and subtract Costly to buildNot a commercial success
33 Long-term impact Showed that arithmetic operations could be performed by mechanical devices Proof of concept People kept building and using mechanical computing machines until the late sixties
34 Joseph Marie Jacquard Self-taught French inventorInvented in 1801 a mechanical loom that simplified the weaving of fabrics with complex patterns (brocade, damask, …) Key idea was to use punched cards to store the patterns
35 Jacquard loom
36 Long-term impact Jacquard loom was quickly adoptedReduced manpower needs for weaving of fabrics with complex patterns Caused a workers' revolt in Lyon in 1831 Still in use today Showed that information could be stored in a machine-readable form
37 Charles Babbage English mathematician and mechanical engineerProposed a mechanical calculator that could tabulate polynomial functions Not built until much later
38 Motivation Polynomials were used—and are still used—to compute logarithms, sinus, cosines and so on Boole wanted to speed up the computation of numerical tables
39 The differential engine
40 Long-term impact Boole went on to design a much more ambitious analytical engine Prototype of a modern computer Some difference engines were built later One was used to produce printed logarithmic tables Showed that computations can be programmed
41 Samuel Morse American painter and inventor Invented the telegraphFirst practical application of electricity "Queen Victoria's Internet" Huge immediate impact on many human endeavors Made the world smaller
42 Long-term impact Was developed to avoid continued fighting after peace treaty (Treaty of Ghent 1814) Did not guarantee universal peace among nations Showed that information could travel fast over long distances
43 Herman Hollerith American statisticianTried to speed up the processing of the 1890 census Invented the tabulating machine
44 Tabulating machine and sorter
45 How they worked (I) Used punched cards Hollerith cardsBecame obsolete in the late seventies
46 How they worked (II) When tabulating machine read a card, it couldAdd the values stored in some columns to one of its registers Instruct the sorter to open one of its slots Next step was to make cards move within tabulator and sorter without any human intervention
47 Long-term impact Tabulating machines were produced until the mid-seventies Were used all around the world Made IBM While Babbage’s differential engine was purely mechanical, Hollerith tabulating machines were electromechanical.
48 More inventors (I) Charles Sanders PierceAmerican philosopher, logician and inventor Showed in 1880’s that Boolean algebra could be implemented by electrical circuits
49 Boolean algebra Uses two quantities (0 or 1; true or false)Basic operations include AND: p AND q is true iff both p and q are true OR: p OR q is true unless both p and q are false NOT: NOT p is true if p is false and false otherwise
50 Boolean algebra and circuitsConvention: Switch on is 1, switch off is zero AND: OR:
51 More inventors (II) John Atanasoff and Clifford BerryIowa State College Built a very limited computer using vacuum tubes in the 1930’s
52 World War II United States had to build very quickly large armed forces Train and equip them Needed better ballistic tables to predict naval gun trajectories Resulted in development of two computers
53 Harvard Mark I Designed by Howard H. AikenBuilt by IBM from switches, relays and other electromechanical parts First programmable computer Read its instructions from a punched paper tape Executed them in sequence Loops were implemented by making a paper loop
54 ENIAC Electronic Numerical Integrator And ComputerDesigned and built at University of Pennsylvania by a team headed by John Mauchly and J. Presper Eckert Used vacuum tubes Thousand times faster than Harvard Mark I Came too late to contribute to war effort Needed to be programmed externally
55 EDVAC Successor to ENIAC Designed by same authorsUsed binary arithmetic Simpler Stored its programs in its memory Could even modify them while running (Von Neumann architecture)
56 Other WW II Computers Set of top secret machines developed in UK to crack German Enigma code Collectively known as Colossus Existence was not known until much later
57 Binary arithmetic Used by all computers Two-digit arithmetic 0 and 1Easier to implement Two voltages HIGH and LOW
58 Binary numbers 0 same as decimal 0 1 same as decimal 11K = 1 followed by ten zeroes, same as 1,02410 1M = 1 followed by twenty zeroes a million 1G = 1 followed by thirty zeroes a billion
59 Deciphering decimal numbersBoth digit value and position count 937 Rightmost value indicates units Value at its left indicates tens Leftmost value indicates hundreds We read 937 as nine hundred thirty-seven
60 Deciphering binary numbersBoth digit value and position count 110 Rightmost value indicates units Value at its left should be multiplied by 2 Leftmost value should be multiplied by 4 We read 110 as 0×1 + 1×2 + 1×4 = 6
61 Binary addition and multiplication0 + 0 = = = = 10 0 × 0 = 0 0 × 1 = 0 1 × 0 = 0 1 × 1 = 1
62 The Von Neumann architectureInput Output Memory containing program and data Processor Data path Control Storage subsystem came later
63 A single bus realization
64 A more recent realizationCore Processors DDR3 RAM PCI Express PCI Express DDR3 RAM PCI Express Express Chipset All other devices
65 A laptop motherboard
66 THE FIRST GENERATION Used vacuum tubesWere power hungry and unreliable UNIVAC First commercially successful computer IBM Well established tabulating machine maker Started dominating the field in the mid to late fifties
67 The UNIVAC I
68 Evolution Revolution was started by UNIVACIBM quickly become the leader Was a true computer company Well introduced in most businesses Already used IBM tabulating machines In the sixties and seventies, most people identified IBM as “the” computer maker
69 Batch systems Allow users to submit a batches of requests to be processed in sequence Include a command language specifying what to do with the inputs Compile Link edit Execute and so forth 69
70 An IBM 1401 70
71 Interactive systems Came laterAllow users to interact with the OS through their terminals: Include an interactive command language UNIX shells, Windows PowerShell Can also be used to write scripts 71
72 Time sharing (I) Lets several interactive users to access a single computer at the same time Standard solution when computers were expensive 72
73 Time sharing (II)
74 UNIX Started at Bell Labs in the early 70'sSophisticated time-sharing system running on a very small minicomputer. First OS to be almost entirely written in C Ported to many other architectures Most popular current version Is Linux Free 74
75 Ken Thompson and Denis RitchieThe fathers of UNIX Ken Thompson and Denis Ritchie 75
76 Time sharing (III) Time sharing become much less important by the end of the eighties Personal computers became almost as cheap as terminals Time sharing could not support graphical user interfaces
77 Why? A graphical user interface must transfer a lot of data between the processor and the display unit Cannot do it if distance exceeds a few feet The workstation was born Combines a computer with its display
78 Graphical user interfacesCalled GUIs (pronounced goo-eys): Macintosh, Windows, X-Windows, Linux Require a dedicated computer for each user Pioneered at XEROX Palo Alto Research Center Popularized by the Macintosh Dominated the market with Microsoft Windows 78
79 Xerox PARC (I) Founded by XEROX in 1970 Invented Laser printingEthernet The GUI paradigm Object-oriented programming (Smalltalk) 79
80 Xerox PARC (II) All their inventions were brought to market by other concerns Popular belief is that Xerox management blew it In reality Alto workstations were very expensive Smalltalk was very slow Group was too small to deliver a full system 80
81 The personal computer By 1971, it was possible to put a very simple CPU on a single chip Intel 4004 was a four-bit microprocessor designed for a desktop calculator Followed by an 8-bit version 8008 Used to build very basic personal computers
82 Evolution (I) 1977: Apple ][ First widely successful mass-produced PCKiller app was Visicalc spreadsheet 1981: IBM PC Big success because people trusted IBM Microsoft designed the OS (PC-DOS)
83 Evolution (II) 1984: Macintosh First mass-produced PC with GUIWas not an instant success Rescued by laser printer 1992: Windows 3.1 MSDOS + Windows 3.1 offered the first GUI solution for IBM PCs
84 The new frontiers Smaller devices: Smart phones, tabletsOften cheaper than PCs (but tablets) Much bigger market New microprocessor architectures: Intel—and AMD—pulverized the competition Now competing with ARM chips
85 Challenges Openness Android is very open (maybe too much)Apple systems are not Digital divide Addiction