Showing posts with label Computer multitasking. Show all posts
Showing posts with label Computer multitasking. Show all posts

Friday, December 3

Personal computer hardware

Hardware of a modern Personal Computer.
1. Monitor
2. Motherboard
3. CPU
4. RAM
5. Expansion cards
6. Power supply
7. Optical disc drive
8. Hard disk drive
9. Keyboard
10. Mouse
A personal computer is made up of multiple physical components of computer hardware, upon which can be installed a system software called operating system and a multitude of software applications to perform the operator's desired functions.
Though a PC comes in many different forms, a typical personal computer consists of a case or chassis in a tower shape (desktop), containing components such as a motherboard.

Motherboard

Main article: Motherboard
The motherboard is the main component inside the case. It is a large rectangular board with integrated circuitry that connects the rest of the parts of the computer including the CPU, the RAM, the disk drives (CD, DVD, hard disk, or any others) as well as any peripherals connected via the ports or the expansion slots.
Components directly attached to the motherboard include:
The central processing unit (CPU) performs most of the calculations which enable a computer to function, and is sometimes referred to as the "brain" of the computer. It is usually cooled by a heat sink and fan.
The chip set mediates communication between the CPU and the other components of the system, including main memory.
RAM (Random Access Memory) stores all running processes (applications) and the current running OS.
The BIOS includes boot firmware and power management. The Basic Input Output System tasks are handled by operating system drivers.
Internal Buses connect the CPU to various internal components and to expansion cards for graphics and sound.
Current
The north bridge memory controller, for RAM and PCI Express
PCI Express, for expansion cards such as graphics and physics processors, and high-end network interfaces
PCI, for other expansion cards
SATA, for disk drives
Obsolete
ATA (superseded by SATA)
AGP (superseded by PCI Express)
VLB VESA Local Bus (superseded by AGP)
ISA (expansion card slot format obsolete in PCs, but still used in industrial computers)
External Bus Controllers support ports for external peripherals. These ports may be controlled directly by the south bridge I/O controller or based on expansion cards attached to the motherboard through the PCI bus.
USB
FireWire
eSATA
SCSI

Power supply

Main article: Power supply unit (computer)


Inside a custom-built computer: the power supply at the bottom has its own cooling fan.
A power supply unit (PSU) converts alternating current (AC) electric power to low-voltage DC power for the internal components of the computer. Some power supplies have a switch to change between 230 V and 115 V. Other models have automatic sensors that switch input voltage automatically, or are able to accept any voltage between those limits. Power supply units used in computers are nearly always switch mode power supplies (SMPS). The SMPS provides regulated direct current power at the several voltages required by the motherboard and accessories such as disk drives and cooling fans.

Removable media devices

Main article: Computer storage
CD (compact disc) - the most common type of removable media, suitable for music and data.
CD-ROM Drive - a device used for reading data from a CD.
CD Writer - a device used for both reading and writing data to and from a CD.
DVD (digital versatile disc) - a popular type of removable media that is the same dimensions as a CD but stores up to 12 times as much information. It is the most common way of transferring digital video, and is popular for data storage.
DVD-ROM Drive - a device used for reading data from a DVD.
DVD Writer - a device used for both reading and writing data to and from a DVD.
DVD-RAM Drive - a device used for rapid writing and reading of data from a special type of DVD.
Blu-ray Disc - a high-density optical disc format for data and high-definition video. Can store 70 times as much information as a CD.
BD-ROM Drive - a device used for reading data from a Blu-ray disc.
BD Writer - a device used for both reading and writing data to and from a Blu-ray disc.
HD DVD - a discontinued competitor to the Blu-ray format.
Floppy disk - an outdated storage device consisting of a thin disk of a flexible magnetic storage medium. Used today mainly for loading RAID drivers.
Iomega Zip drive - an outdated medium-capacity removable disk storage system, first introduced by Iomega in 1994.
USB flash drive - a flash memory data storage device integrated with a USB interface, typically small, lightweight, removable, and rewritable. Capacities vary, from hundreds of megabytes (in the same ballpark as CDs) to tens of gigabytes (surpassing, at great expense, Blu-ray discs).
Tape drive - a device that reads and writes data on a magnetic tape, used for long term storage and backups.

Secondary storage

Hardware that keeps data inside the computer for later use and remains persistent even when the computer has no power.
Hard disk - for medium-term storage of data.
Solid-state drive - a device similar to hard disk, but containing no moving parts and stores data in a digital format.
RAID array controller - a device to manage several internal or external hard disks and optionally some peripherals in order to achieve performance or reliability improvement in what is called a RAID array.

Sound card

Main article: Sound card
Enables the computer to output sound to audio devices, as well as accept input from a microphone. Most modern computers have sound cards built-in to the motherboard, though it is common for a user to install a separate sound card as an upgrade. Most sound cards, either built-in or added, have surround sound capabilities.

Input and output peripherals

Main article: Peripheral
Input and output devices are typically housed externally to the main computer chassis. The following are either standard or very common to many computer systems.


Wheel Mouse

Input
Main article: Input device
Text input devices
Keyboard - a device to input text and characters by depressing buttons (referred to as keys).
Pointing devices
Mouse - a pointing device that detects two dimensional motion relative to its supporting surface.
Optical Mouse - uses light to determine mouse motion.
Trackball - a pointing device consisting of an exposed protruding ball housed in a socket that detects rotation about two axes.
Touchscreen - senses the user pressing directly on the display
Gaming devices
Joystick - a control device that consists of a handheld stick that pivots around one end, to detect angles in two or three dimensions.
Game pad - a hand held game controller that relies on the digits (especially thumbs) to provide input.
Game controller - a specific type of controller specialized for certain gaming purposes.
Image, Video input devices
Image scanner - a device that provides input by analyzing images, printed text, handwriting, or an object.
Web cam - a video camera used to provide visual input that can be easily transferred over the internet.
Audio input devices
Microphone - an acoustic sensor that provides input by converting sound into electrical signals.

Output
Main article: Output device
Printer - a device that produces a permanent human-readable text of graphic document.
Speakers - typically a pair of devices (2 channels) which convert electrical signals into audio.
Headphones - for a single user hearing the audio.
Monitor - an electronic visual display with textual and graphical information from the computer.
CRT - (Cathode Ray Tube) display
LCD - (Liquid Crystal Display) as of 2010, it is the primary visual display for personal computers.
LED - (light-emitting diode) display


(source:wikipedia)

Sunday, November 28

Transistor computer

A transistor computer was a computer which used transistors instead of vacuum tubes. The "first generation" of electronic computers used vacuum tubes, which generated large amounts of heat, were bulky, and were unreliable. A "second generation" of computers, through the late 1950s and 1960s featured boards filled with individual transistors and magnetic memory cores. These machines remained the mainstream design into the late 1960s, when integrated circuits started appearing and led to the "third generation" machines.


The first transistor computer

The University of Manchester's experimental Transistor Computer was first operational in November 1953 and it is widely believed to be the first transistor computer to come into operation anywhere in the world. There were two versions of the Transistor Computer, the prototype, operational in 1953, and the full-size version, commissioned in April 1955. The 1953 machine had 92 point-contact transistors and 550 diodes, manufactured by STC. It had a 48-bit machine word. The 1955 machine had a total of 200 point-contact transistors and 1300 point diodes, which resulted in a power consumption of 150 watts. There were considerable reliability problems with the early batches of transistors and the average error free run in 1955 was only 1.5 hours. The Computer also used a small number of tubes in its clock generator, so it was not the first fully transistorized machine.
The design of a full-size Transistor Computer was subsequently adopted by the Manchester firm of Metropolitan-Vickers, who changed all the circuits to more reliable types of junction transistors. The production version was known as the Metrovick 950 and was built from 1956 to the extent of six or seven machines, which were "used commercially within the company"or "mainly for internal use".

Other early machines
During the mid-1950s a series of similar machines appeared. These included the Bell Laboratories TRADIC, completed in January 1954 also incorporated a single high-power output vacuum-tube amplifier to supply its 1-MHz clock power.
The first fully transistorised computer was either the Harwell CADET which first operated in February 1955, although the price paid for this was that it only operated at the slow speed of 58 kHz, or the prototype IBM 604 transistor calculator, described in the next section. The Burroughs Corporation claimed the SM-65 Atlas ICBM / THOR ABLE guidance computer (MOD 1) that it delivered to the US Air Force at the Cape Canaveral missile range in June 1957 was "the world's first operational transistorized computer".
In Japan the ETL Mark III began operation in July 1956; the Canadian DRTE Computer in 1957, while in Austria, the Mailüfterl was completed in May 1958, being the first transistorised computers in Asia and mainland Europe.

The first commercial fully transistorised computer

In April 1955, IBM announced the IBM 608 transistor calculator which was first shipped in December 1957. IBM and several historians thus consider the IBM 608 the first all solid-state computing machine commercially marketed. The development of the 608 was preceded by the prototyping of an experimental all-transistor version of the 604. This was built and demonstrated in October 1954, but was not commercialized.
In Italy, Olivetti's first commercial fully transistorised computer was the Olivetti Elea 9003, being sold from 1959.

Schools and Hobbyists

First generation computers where largely out of reach of schools and hobbyists who wished to build their own, largely because of the cost of the large number of vacuum tubes required (though relay-based computer projects were undertaken). The third and fourth generations were also largely out of reach, too, due to most of the design work being inside the integrated circuit package (though this barrier, too, was later removed). So, the second generation computer was really the best suited to being undertaken by schools and hobbyists.

See also

List of transistorized computers


(source:wikipedia)

ENIAC

Glen Beck (background) and Betty Snyder(foreground) program the ENIAC in BRL building 328. (U.S. Army photo)
Programmers Betty Jean Jennings (left) and Fran Bilas (right) operate the ENIAC's main control panel at the Moore School of Electrical Engineering. (U.S. Army photo from the archives of the ARL Technical Library)
 ENIAC (pronounced /ˈɛni.æk/), short for Electronic Numerical Integrator And Computer, was the first general-purpose, electronic computer. It was a Turing-complete, digital computer capable of being reprogrammed to solve a full range of computing problems.
ENIAC was designed to calculate artillery firing tables for the United States Army's Ballistic Research Laboratory, but its first use was in calculations for the hydrogen bomb. When ENIAC was announced in 1946 it was heralded in the press as a "Giant Brain". It boasted speeds one thousand times faster than electro-mechanical machines, a leap in computing power that no single machine has since matched. This mathematical power, coupled with general-purpose programmability, excited scientists and industrialists. The inventors promoted the spread of these new ideas by teaching a series of lectures on computer architecture.
The ENIAC's design and construction was financed by the United States Army during World War II. The construction contract was signed on June 5, 1943, and work on the computer began in secret by the University of Pennsylvania's Moore School of Electrical Engineering starting the following month under the code name "Project PX". The completed machine was unveiled on February 14, 1946 at the University of Pennsylvania, having cost almost $500,000 (nearly $6 million in 2008, adjusted for inflation). It was formally accepted by the U.S. Army Ordnance Corps in July 1946. ENIAC was shut down on November 9, 1946 for a refurbishment and a memory upgrade, and was transferred to Aberdeen Proving Ground, Maryland in 1947. There, on July 29, 1947, it was turned on and was in continuous operation until 11:45 p.m. on October 2, 1955.
ENIAC was conceived and designed by John Mauchly and J. Presper Eckert of the University of Pennsylvania. The team of design engineers assisting the development included Robert F. Shaw (function tables), Chuan Chu (divider/square-rooter), Thomas Kite Sharpless (master programmer), Arthur Burks (multiplier), Harry Huskey (reader/printer), Jack Davis (accumulators) and Iredell Eachus Jr.


Description

The ENIAC was a modular computer, composed of individual panels to perform different functions. Twenty of these modules were accumulators, which could not only add and subtract but hold a ten-digit decimal number in memory. Numbers were passed between these units across a number of general-purpose buses, or trays, as they were called. In order to achieve its high speed, the panels had to send and receive numbers, compute, save the answer, and trigger the next operation—all without any moving parts. Key to its versatility was the ability to branch; it could trigger different operations that depended on the sign of a computed result.
Besides its speed, the most remarkable thing about ENIAC was its size and complexity. ENIAC contained 17,468 vacuum tubes, 7,200 crystal diodes, 1,500 relays, 70,000 resistors, 10,000 capacitors and around 5 million hand-soldered joints. It weighed more than 30 short tons (27 t), was roughly 8.5 by 3 by 80 feet (2.6 m × 0.9 m × 24 m), took up 680 square feet (63 m2), and consumed 150 kW of power. Input was possible from an IBM card reader, and an IBM card punch was used for output. These cards could be used to produce printed output offline using an IBM accounting machine, an example of which would be the IBM 405.
ENIAC used ten-position ring counters to store digits; each digit used 36 vacuum tubes, 10 of which were the dual triodes making up the flip-flops of the ring counter. Arithmetic was performed by "counting" pulses with the ring counters and generating carry pulses if the counter "wrapped around", the idea being to emulate in electronics the operation of the digit wheels of a mechanical adding machine. ENIAC had twenty ten-digit signed accumulators which used ten's complement representation and could perform 5,000 simple addition or subtraction operations between any of them and a source (e.g., another accumulator, or a constant transmitter) every second. It was possible to connect several accumulators to run simultaneously, so the peak speed of operation was potentially much higher due to parallel operation.
It was possible to wire the carry of one accumulator into another accumulator to perform double precision arithmetic, but the accumulator carry circuit timing prevented the wiring of three or more for higher precision. The ENIAC used four of the accumulators, controlled by a special Multiplier unit, to perform up to 385 multiplication operations per second. The ENIAC also used five of the accumulators, controlled by a special Divider/Square-Rooter unit, to perform up to forty division operations per second or three square root operations per second.
The other nine units in ENIAC were the Initiating Unit (which started and stopped the machine), the Cycling Unit (used for synchronizing the other units), the Master Programmer (which controlled "loop" sequencing), the Reader (which controlled an IBM punched card reader), the Printer (which controlled an IBM punched card punch), the Constant Transmitter, and three Function Tables.


Cpl. Herman Goldstine (foreground) sets the switches on one of the ENIAC's function tables at the Moore School of Electrical Engineering. (U.S. Army photo)
The references by Rojas and Hashagen (or Wilkes) give more details about the times for operations, which differ somewhat from those stated above. The basic machine cycle was 200 microseconds (20 cycles of the 100 kHz clock in the cycling unit), or 5,000 cycles per second for operations on the 10-digit numbers. In one of these cycles, ENIAC could write a number to a register, read a number from a register, or add/subtract two numbers. A multiplication of a 10-digit number by a d-digit number (for d up to 10) took d+4 cycles, so a 10- by 10-digit multiplication took 14 cycles, or 2800 microseconds—a rate of 357 per second. If one of the numbers had fewer than 10 digits, the operation was faster. Division and square roots took 13(d+1) cycles, where d is the number of digits in the result (quotient or square root). So a division or square root took up to 143 cycles, or 28,600 microseconds—a rate of 35 per second. (Wilkes 1956:20[9] states that a division with a 10 digit quotient required 6 milliseconds.) If the result had fewer than ten digits, it was obtained faster.
[edit]Reliability
ENIAC used common octal-base radio tubes of the day; the decimal accumulators were made of 6SN7 flip-flops, while 6L7s, 6SJ7s, 6SA7s and 6AC7s were used in logic functions. Numerous 6L6s and 6V6s served as line drivers to drive pulses through cables between rack assemblies.


Detail of the back of a section of ENIAC, showing vacuum tubes
Some electronics experts predicted that tube failures would occur so frequently that the machine would never be useful. This prediction turned out to be partially correct: several tubes burned out almost every day, leaving it nonfunctional about half the time. Special high-reliability tubes were not available until 1948. Most of these failures, however, occurred during the warm-up and cool-down periods, when the tube heaters and cathodes were under the most thermal stress. By the simple (but also expensive) expedient of never turning the machine off, the engineers reduced ENIAC's tube failures to the more acceptable rate of one tube every two days. According to a 1989 interview with Eckert the continuously failing tubes story was therefore mostly a myth: "We had a tube fail about every two days and we could locate the problem within 15 minutes."[10] In 1954, the longest continuous period of operation without a failure was 116 hours (close to five days).
[edit]Programming
Although the Ballistic Research Laboratory was the sponsor of ENIAC, one year into this three-year project John von Neumann, a mathematician working on the hydrogen bomb at Los Alamos, became aware of this computer. Los Alamos subsequently became so involved with ENIAC that the first test problem run was computations for the hydrogen bomb, not artillery tables. The input/output for this test was one million cards.
The ENIAC could be programmed to perform complex sequences of operations, which could include loops, branches, and subroutines. The task of taking a problem and mapping it onto the machine was complex, and usually took weeks. After the program was figured out on paper, the process of getting the program "into" the ENIAC by manipulating its switches and cables took additional days. This was followed by a period of verification and debugging, aided by the ability to "single step" the machine.
The six women who did most of the programming of ENIAC were inducted in 1997 into the Women in Technology International Hall of Fame. As they were called by each other in 1946, they were Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas and Ruth Lichterman. Jennifer S. Light's essay, "When Computers Were Women" documents and describes the role of the women of ENIAC as well as outlines the historical omission or downplay of women's roles in computer science history.
ENIAC was a one-of-a-kind design and was never repeated. The freeze on design in 1943 meant that the computer design would lack some innovations that soon became well-developed, notably the inability to store a program. Eckert and Mauchly started work on a new design, to be later called the EDVAC, which would be both simpler and more powerful. In particular, in 1944 Eckert wrote his description of a memory unit (the mercury delay line) which would hold both the data and the program. John von Neumann, who was consulting for the Moore School on the EDVAC sat in on the Moore School meetings at which the stored program concept was elaborated, and wrote up an incomplete set of notes (First Draft of a Report on the EDVAC) intended to be used as an internal memorandum describing, elaborating, and couching in formal logical language the ideas developed in the meetings. Herman Goldstine distributed copies of the First Draft to a number of government and educational institutions, spurring widespread interest in the construction of a new generation of electronic computing machines, including EDSAC and SEAC.
A number of improvements were also made to ENIAC from 1948, including a primitive read-only stored programming mechanism using the Function Tables as program ROM, an idea included in the ENIAC patent and proposed independently by Dr. Richard Clippinger of the BRL. Clippinger consulted with von Neumann on what instruction set to implement. Clippinger had thought of a 3-address architecture while von Neumann proposed a 1-address architecture because it was simpler to implement. Three digits of one accumulator (6) were used as the program counter, another accumulator (15) was used as the main accumulator, a third accumulator (8) was used as the address pointer for reading data from the function tables, and most of the other accumulators (1–5, 7, 9–14, 17–19) were used for data memory. The programming of the stored program for ENIAC was done by Betty Jennings, Clippinger and Adele Goldstine. It was first demonstrated as a stored-program computer on September 16, 1948, running a program by Adele Goldstine for John von Neumann. This modification reduced the speed of ENIAC by a factor of six and eliminated the ability of parallel computation, but as it also reduced the reprogramming time to hours instead of days, it was considered well worth the loss of performance. Also analysis had shown that due to differences between the electronic speed of computation and the electromechanical speed of input/output, almost any real-world problem was completely I/O bound even without making use of the original machine's parallelism and most would still be I/O bound even after the speed reduction from this modification. Early in 1952, a high-speed shifter was added, which improved the speed for shifting by a factor of five. In July 1953, a 100-word expansion core memory was added to the system, using binary coded decimal, excess-3 number representation. To support this expansion memory, the ENIAC was equipped with a new Function Table selector, a memory address selector, pulse-shaping circuits, and three new orders were added to the programming mechanism.

Comparison with other early computers

Mechanical and electrical computing machines have been around since the 19th century, but the 1930s and 1940s are considered the beginning of the modern computer era.
The German Z3 (shown working in May 1941) was designed by Konrad Zuse. It was the first general-purpose digital computer, but it was electromechanical, rather than electronic, as it used relays for all functions. It computed logically using binary math. It was programmable by punched tape, but lacked the conditional branch. While not designed for Turing-completeness, it accidentally was, as it was found out in 1998 (but to exploit this Turing-completeness, complex, clever hacks were necessary). It was destroyed in a bombing on Berlin in December 1943.
The American Atanasoff–Berry Computer (ABC) (shown working in summer 1941) was the first electronic computing device. It implemented binary computation with vacuum tubes but was not general purpose, being limited to solving systems of linear equations. It also did not exploit electronic computing speeds, being limited by a rotating capacitor drum memory and an input-output system that was intended to write intermediate results to paper cards. It was manually controlled and was not programmable.
The British Colossus computers (used for cryptanalysis starting in 1943) were designed by Tommy Flowers. The Colossus computers (of which ten were built) were digital, all-electronic, and could be reprogrammed by rewiring, but they were dedicated to code breaking and not general purpose.
Howard Aiken's 1944 Harvard Mark I was programmed by punched tape and used relays. It performed general math functions, but lacked any branching.
The ENIAC was, like the Z3 and Mark I, able to run an arbitrary sequence of mathematical operations, but did not read them from a tape. Like the Colossus, the operations happened at electronic speed. The ENIAC combined full, Turing complete programmability with electronic speed.
Defining characteristics of some early digital computers of the 1940s (In the history of computing hardware)
Name First operational Numeral system Computing mechanism Programming Turing complete
Zuse Z3 (Germany) May 1941 Binary floating point Electro-mechanical Program-controlled by punched film stock (but no conditional branch) Yes (1998)
Atanasoff–Berry Computer (US) 1942 Binary Electronic Not programmable—single purpose No
Colossus Mark 1 (UK) February 1944 Binary Electronic Program-controlled by patch cables and switches No
Harvard Mark I – IBM ASCC (US) May 1944 Decimal Electro-mechanical Program-controlled by 24-channel punched paper tape (but no conditional branch) No
Colossus Mark 2 (UK) June 1944 Binary Electronic Program-controlled by patch cables and switches No
Zuse Z4 (Germany) March 1945 Binary floating point Electro-mechanical Program-controlled by punched film stock Yes
ENIAC (US) July 1946 Decimal Electronic Program-controlled by patch cables and switches Yes
Manchester Small-Scale Experimental Machine (Baby) (UK) June 1948 Binary Electronic Stored-program in Williams cathode ray tube memory Yes
Modified ENIAC (US) September 1948 Decimal Electronic Program-controlled by patch cables and switches plus a primitive read-only stored programming mechanism using the Function Tables as program ROM Yes
EDSAC (UK) May 1949 Binary Electronic Stored-program in mercury delay line memory Yes
Manchester Mark 1 (UK) October 1949 Binary Electronic Stored-program in Williams cathode ray tube memory and magnetic drum memory Yes
CSIRAC (Australia) November 1949 Binary Electronic Stored-program in mercury delay line memory Yes
The ABC, ENIAC and Colossus all used thermionic valves (vacuum tubes). ENIAC's registers performed decimal arithmetic, rather than binary arithmetic like the Z3 or the Atanasoff-Berry Computer.
Until 1948, ENIAC required rewiring to reprogram, like the Colossus. The idea of the stored-program computer with combined memory for program and data was conceived during the development of the ENIAC, but it was not implemented at that time because World War II priorities required the machine to be completed quickly, and it was realized that 20 storage locations for memory and programs would be much too small.

Public knowledge
The Z3 and Colossus were developed independently of each other and independently from the ABC and the ENIAC during World War II. The Z3 was destroyed by Allied bombing of Berlin in 1943. The Colossus machines were part of the UK's war effort, and were destroyed in 1945 to maintain secrecy. Their existence only became generally known in the 1970s, though knowledge of their capabilities remained among their UK staff and invited Americans. The ABC was dismantled by Iowa State University, after John Atanasoff was called to Washington, D.C. to do physics research for the U.S. Navy. ENIAC, by contrast, was put through its paces for the press in 1946, "and captured the world's imagination". Older histories of computing may therefore not be comprehensive in their coverage and analysis of this period.

Patent
 Honeywell v. Sperry Rand
For a variety of reasons (including Mauchly's June 1941 examination of the Atanasoff–Berry Computer, prototyped in 1939 by John Atanasoff and Clifford Berry), US patent 3,120,606 for the ENIAC, granted in 1964, was voided by the 1973 decision of the landmark federal court case Honeywell v. Sperry Rand, putting the invention of the electronic digital computer in the public domain and providing legal recognition to Atanasoff as the inventor of the first electronic digital computer.

Parts on display



Four ENIAC panels and one of its three function tables, on display at the School of Engineering and Applied Science at the University of Pennsylvania
The School of Engineering and Applied Science at the University of Pennsylvania has four of the original forty panels and one of the three function tables of the ENIAC. The Smithsonian has five panels in the National Museum of American History in Washington D.C. The Science Museum in London has a receiver unit on display. The Computer History Museum in Mountain View, California has a single panel on display. The University of Michigan in Ann Arbor has four panels, salvaged by Arthur Burks. The U.S. Army Ordnance Museum at Aberdeen Proving Ground, Maryland, where ENIAC was used, has one of the function tables. There is also a panel on display at Perot Systems in Plano, Texas.
As of 1997, a square chip of silicon measuring 0.25 inches (8 mm) on a side holds the same capacity as the ENIAC, which occupied a large room.


(source:wikipedia)

Colossus computer

A Colossus Mark 2 computer. The operator on the left is Dorothy Duboisson. The slanted control panel on the left was used to set the pin patterns on the Lorenz; the paper tape transport is on the right.
The Colossus machines were electronic computing devices used by British codebreakers to help read encrypted German messages during World War II. These were the world's first programmable, digital, electronic, computing devices. They used vacuum tubes (thermionic valves) to perform the calculations.
Colossus was designed by engineer Tommy Flowers with input from Harry Fensom, Allen Coombs, Sid Broadhurst and Bill Chandler at the Post Office Research Station, Dollis Hill to solve a problem posed by mathematician Max Newman at Bletchley Park. The prototype, Colossus Mark 1, was shown to be working in December 1943 and was operational at Bletchley Park by February 1944. An improved Colossus Mark 2 first worked on 1 June 1944, just in time for the Normandy Landings. Ten Colossi were in use by the end of the war.
The Colossus computers were used to help decipher teleprinter messages which had been encrypted using the Lorenz SZ40/42 machine—British codebreakers referred to encrypted German teleprinter traffic as "Fish" and called the SZ40/42 machine and its traffic "Tunny". Colossus compared two data streams, counting each match based on a programmable Boolean function. The encrypted message was read at high speed from a paper tape. The other stream was generated internally, and was an electronic simulation of the Lorenz machine at various trial settings. If the match count for a setting was above a certain threshold, it would be sent as output to an electric typewriter.
The Colossus was used to find possible key combinations for the Lorenz machines – rather than decrypting an intercepted message in its entirety.
In spite of the destruction of the Colossus hardware and blueprints as part of the effort to maintain a project secrecy that was kept up into the 1970s—a secrecy that deprived some of the Colossus creators of credit for their pioneering advancements in electronic digital computing during their lifetimes—a functional replica of a Colossus computer was completed in 2007.

Purpose and origins

The Lorenz machine was used by the Germans to encrypt high-level teleprinter communications. It contained 12 wheels with a total of 501 pins.
The Colossus computers were used in the cryptanalysis of high-level German communications, messages which had been encrypted using the Lorenz SZ 40/42 cipher machine; part of the operation of Colossus was to emulate the electromechanical Lorenz machine electronically. To encrypt a message with the Lorenz machine, the plaintext was combined with a stream of key bits, grouped in fives. The keystream was generated using twelve pinwheels: five were termed (by the British) χ ("chi") wheels, another five ψ ("psi") wheels, and the remaining two the "motor wheels". The χ wheels stepped regularly with each letter that was encrypted, while the ψ wheels stepped irregularly, controlled by the motor wheels.
Bill Tutte, a cryptanalyst at Bletchley Park, discovered that the keystream produced by the machine exhibited statistical biases deviating from random, and that these biases could be used to break the cipher and read messages. In order to read messages, there were two tasks that needed to be performed. The first task was wheel breaking, which was discovering the pin patterns for all the wheels. These patterns were set up once on the Lorenz machine and then used for a fixed period of time and for a number of different messages. The second task was wheel setting, which could be attempted once the pin patterns were known. Each message encrypted using Lorenz was enciphered at a different start position for the wheels. The process of wheel setting found the start position for a message. Initially Colossus was used to help with wheel setting, but later it was found it could also be adapted to the process of wheel breaking as well.
Colossus was developed for the Newmanry, the section at Bletchley Park responsible for machine methods against the Lorenz machine, headed by the mathematician Max Newman. It arose out of a prior project which produced a special purpose opto-mechanical comparator and counting machine called "Heath Robinson".
The main problems with the Heath Robinson were the relative slowness of electro-mechanical relays and the difficulty of synchronising two paper tapes, one punched with the enciphered message, the other representing the patterns produced by the wheels of the Lorenz machine. The tapes tended to stretch when being read at some 2000 characters per second, resulting in unreliable counts. Tommy Flowers of the Post Office Research Station at Dollis Hill was called in to look into the design of the Robinson’s combining unit. He was not impressed with the machines and, at his own initiative, designed an electronic machine which stored the data from one of the tapes internally. He presented this design to Max Newman in February 1943, but the idea that the one to two thousand thermionic valves (vacuum tubes) proposed, could work together reliably was greeted with scepticism, so more Robinsons were ordered from Dollis Hill. Flowers, however, persisted with the idea and obtained support from the Director of the Research Station.

The construction of Colossus

Tommy Flowers spent eleven months (early February 1943 to early January 1944) designing and building Colossus at the Post Office Research Station, Dollis Hill, in northwest London. After a functional test in December 1943, Colossus was dismantled and shipped north to Bletchley Park, where it was delivered on 18 January 1944 and assembled by Harry Fensom and Don Horwood, and attacked its first message on 5 February.
The Mark 1 was followed by nine Mark 2 Colossus machines, the first being commissioned in June 1944, and the original Mark 1 machine was converted into a Mark 2. An eleventh Colossus was essentially finished at the end of the war. Colossus Mark 1 contained 1,500 electronic valves (tubes). Colossus Mark 2 with 2,400 valves was both 5 times faster and simpler to operate than Mark 1, greatly speeding the decoding process. Mark 2 was designed while Mark 1 was being constructed. Allen Coombs took over leadership of the Colossus Mark 2 project when Tommy Flowers moved on to other projects. For comparison, later stored-program computers like the Manchester Mark 1 of 1949 used about 4,200 valves. In comparison, ENIAC (1946) used 17,468 valves, but, unlike Colossus, was not a software programmable machine.
Colossus dispensed with the second tape of the Heath Robinson design by generating the wheel patterns electronically, and processing 5,000 characters per second with the paper tape moving at 40 ft/s (12.2 m/s or 27.3 mph). The circuits were synchronized by a clock signal generated by the sprocket holes of the punched tape. The speed of calculation was thus limited by the mechanics of the tape reader. Tommy Flowers tested the tape reader up to 9,700 characters per second (53 mph) before the tape disintegrated. He settled on 5,000 characters/second as the desirable speed for regular operation. Sometimes, two or more Colossus computers tried different possibilities simultaneously in what now is called parallel computing, speeding the decoding process by perhaps as much as doubling the rate of comparison.
Colossus included the first ever use of shift registers and systolic arrays, enabling five simultaneous tests, each involving up to 100 Boolean calculations, on each of the five channels on the punched tape (although in normal operation only one or two channels were examined in any run).
Initially Colossus was only used to determine the initial wheel positions used for a particular message (termed wheel setting). The Mark 2 included mechanisms intended to help determine pin patterns (wheel breaking). Both models were programmable using switches and plug panels in a way the Robinsons had not been.

Design and operation



In 1994, a team led by Tony Sale (right) began a reconstruction of a Colossus at Bletchley Park. Here, in 2006, Sale supervises the breaking of an enciphered message with the completed machine.
Colossus used state-of-the-art vacuum tubes (thermionic valves), thyratrons and photomultipliers to optically read a paper tape and then applied a programmable logical function to every character, counting how often this function returned "true". Although machines with many valves were known to have high failure rates, it was recognised that valve failures occurred most frequently with the current surge when powering up, so the Colossus machines, once turned on, were never powered down unless they malfunctioned.
Colossus was the first of the electronic digital machines with programmability, albeit limited in modern terms. It was not, however, a fully general Turing-complete computer, even though Alan Turing worked at Bletchley Park. It was not then realized that Turing completeness was significant; most of the other pioneering modern computing machines were also not Turing complete (e.g. the Atanasoff–Berry Computer, the Harvard Mark I electro-mechanical relay machine, the Bell Labs relay machines (by George Stibitz et al.), or the first designs of Konrad Zuse). The notion of a computer as a general purpose machine—that is, as more than a calculator devoted to solving difficult but specific problems—would not become prominent for several years.
Colossus was preceded by several computers, many of them first in some category. Zuse's Z3 was the first functional fully program-controlled computer, and was based on electromechanical relays, as were the (less advanced) Bell Labs machines of the late 1930s (George Stibitz, et al.). The Atanasoff–Berry Computer was electronic and binary (digital) but not programmable. Assorted analog computers were semiprogrammable; some of these much predated the 1930s (e.g., Vannevar Bush). Babbage's Analytical engine design predated all these (in the mid-19th century), it was a decimal, programmable, entirely mechanical construction—but was only partially built and never functioned during Babbage's lifetime (the first complete mechanical Difference engine No. 2, built in 1991, does work however). Colossus was the first combining digital, (partially) programmable, and electronic. The first fully programmable digital electronic computer was the ENIAC which was completed in 1946.
Defining characteristics of some early digital computers of the 1940s (In the history of computing hardware)
Name First operational Numeral system Computing mechanism Programming Turing complete
Zuse Z3 (Germany) May 1941 Binary floating point Electro-mechanical Program-controlled by punched film stock (but no conditional branch) Yes (1998)
Atanasoff–Berry Computer (US) 1942 Binary Electronic Not programmable—single purpose No
Colossus Mark 1 (UK) February 1944 Binary Electronic Program-controlled by patch cables and switches No
Harvard Mark I – IBM ASCC (US) May 1944 Decimal Electro-mechanical Program-controlled by 24-channel punched paper tape (but no conditional branch) No
Colossus Mark 2 (UK) June 1944 Binary Electronic Program-controlled by patch cables and switches No
Zuse Z4 (Germany) March 1945 Binary floating point Electro-mechanical Program-controlled by punched film stock Yes
ENIAC (US) July 1946 Decimal Electronic Program-controlled by patch cables and switches Yes
Manchester Small-Scale Experimental Machine (Baby) (UK) June 1948 Binary Electronic Stored-program in Williams cathode ray tube memory Yes
Modified ENIAC (US) September 1948 Decimal Electronic Program-controlled by patch cables and switches plus a primitive read-only stored programming mechanism using the Function Tables as program ROM Yes
EDSAC (UK) May 1949 Binary Electronic Stored-program in mercury delay line memory Yes
Manchester Mark 1 (UK) October 1949 Binary Electronic Stored-program in Williams cathode ray tube memory and magnetic drum memory Yes
CSIRAC (Australia) November 1949 Binary Electronic Stored-program in mercury delay line memory Yes

Influence and fate

The use to which the Colossus computers were put was of the highest secrecy, and the Colossus itself was highly secret, and remained so for many years after the War. Thus, Colossus could not be included in the history of computing hardware for many years, and Flowers and his associates also were deprived of the recognition they were due.
Being not widely known, it therefore had little direct influence on the development of later computers; EDVAC was the early design which had the most influence on subsequent computer architecture.
However, the technology of Colossus, and the knowledge that reliable high-speed electronic digital computing devices were feasible, had a significant influence on the development of early computers in Britain and probably in the US. A number of people who were associated with the project and knew all about Colossus played significant roles in early computer work in Britain. In 1972, Herman Goldstine wrote that:
Britain had such vitality that it could immediately after the war embark on so many well-conceived and well-executed projects in the computer field.
In writing that, Goldstine was unaware of Colossus, and its legacy to those projects of people such as Alan Turing (with the Pilot ACE and ACE), and Max Newman and I. J. Good (with the Manchester Mark 1 and other early Manchester computers). Brian Randell later wrote that:
the COLOSSUS project was an important source of this vitality, one that has been largely unappreciated, as has the significance of its places in the chronology of the invention of the digital computer.
Colossus documentation and hardware were classified from the moment of their creation and remained so after the War, when Winston Churchill specifically ordered the destruction of most of the Colossus machines into "pieces no bigger than a man's hand"; Tommy Flowers personally burned blueprints in a furnace at Dollis Hill. Some parts, sanitised as to their original use, were taken to Newman's Royal Society Computing Machine Laboratory at Manchester University. The Colossus Mark 1 was dismantled and parts returned to the Post Office. Two Colossus computers, along with two replica Tunny machines, were retained, moving to GCHQ's new headquarters at Eastcote in April 1946, and moving again with GCHQ to Cheltenham between 1952 and 1954. One of the Colossi, known as Colossus Blue, was dismantled in 1959; the other in 1960. In their later years, the Colossi were used for training, but before that, there had been attempts to adapt them, with varying success, to other purposes. Jack Good relates how he was the first to use it after the war, persuading NSA that Colossus could be used to perform a function for which they were planning to build a special purpose machine. Colossus was also used to perform character counts on one-time pad tape to test for non-randomness.
Throughout this period the Colossus remained secret, long after any of its technical details were of any importance. This was due to the UK's intelligence agencies use of Enigma-like machines which they promoted and sold to other governments, and then broke the codes using a variety of methods. Had the knowledge of the codebreaking machines been widely known, no one would have accepted these machines; rather, they would have developed their own methods for encryption, methods that the UK services might not have been able to break. The need for such secrecy ebbed away as communications moved to digital transmission and all-digital encryption systems became common in the 1960s.
Information about Colossus began to emerge publicly in the late 1970s, after the secrecy imposed was broken when Colonel Winterbotham published his book The Ultra Secret. More recently, a 500-page technical report on the Tunny cipher and its cryptanalysis – entitled General Report on Tunny – was released by GCHQ to the national Public Record Office in October 2000; the complete report is available online, and it contains a fascinating paean to Colossus by the cryptographers who worked with it:
It is regretted that it is not possible to give an adequate idea of the fascination of a Colossus at work; its sheer bulk and apparent complexity; the fantastic speed of thin paper tape round the glittering pulleys; the childish pleasure of not-not, span, print main header and other gadgets; the wizardry of purely mechanical decoding letter by letter (one novice thought she was being hoaxed); the uncanny action of the typewriter in printing the correct scores without and beyond human aid; the stepping of the display; periods of eager expectation culminating in the sudden appearance of the longed-for score; and the strange rhythms characterizing every type of run: the stately break-in, the erratic short run, the regularity of wheel-breaking, the stolid rectangle interrupted by the wild leaps of the carriage-return, the frantic chatter of a motor run, even the ludicrous frenzy of hosts of bogus scores.

Reconstruction



The Colossus rebuild seen from the rear.
Construction of a fully-functional replica of a Colossus Mark 2 was undertaken by a team led by Tony Sale. In spite of the blueprints and hardware being destroyed, a surprising amount of material survived, mainly in engineers' notebooks, but a considerable amount of it in the U.S. The optical tape reader might have posed the biggest problem, but Dr. Arnold Lynch, its original designer, was able to redesign it to his own original specification. The reconstruction is on display, in the historically correct place for Colossus No. 9, at The National Museum of Computing, in H Block Bletchley Park in Milton Keynes, Buckinghamshire.
In November 2007, to celebrate the project completion and to mark the start of a fundraising initiative for The National Museum of Computing, a Cipher Challenge[12] pitted the rebuilt Colossus against radio amateurs worldwide in being first to receive and decode three messages enciphered using the Lorenz SZ42 and transmitted from radio station DL0HNF in the Heinz Nixdorf MuseumsForum computer museum. The challenge was easily won by radio amateur Joachim Schüth, who had carefully prepared for the event and developed his own signal processing and decrypt code using Ada. The Colossus team were hampered by their wish to use World War II radio equipment, delaying them by a day because of poor reception conditions. Nevertheless the victor's 1.4 GHz laptop, running his own code, took less than a minute to find the settings for all 12 wheels. The German codebreaker said: "My laptop digested ciphertext at a speed of 1.2 million characters per second—240 times faster than Colossus. If you scale the CPU frequency by that factor, you get an equivalent clock of 5.8 MHz for Colossus. That is a remarkable speed for a computer built in 1944."
The Cipher Challenge verified the successful completion of the rebuild project. "On the strength of today's performance Colossus is as good as it was six decades ago", commented Tony Sale. "We are delighted to have produced a fitting tribute to the people who worked at Bletchley Park and whose brainpower devised these fantastic machines which broke these ciphers and shortened the war by many months."


(source:wikipedia)