Electronic Computing: Crash Course Computer Science #2
The Evolution of Early Computing Devices
The Rise of Special Purpose Computing Devices
- The early 20th century saw the emergence of special purpose computing devices, such as tabulating machines, which significantly aided governments and businesses by automating manual tasks.
- During this period, global population nearly doubled, with World War I and II mobilizing millions and leading to unprecedented interconnectedness in trade and transit networks.
Complexity and the Need for Automation
- The explosion of complexity in human systems created a pressing demand for automation and computation, leading to the development of larger electro-mechanical computers.
- One notable example is the Harvard Mark I, completed in 1944 by IBM for the Allies; it was massive, containing 765,000 components and three million connections.
Limitations of Electro-Mechanical Computers
- These early computers relied on relays—electrically-controlled mechanical switches—which had limitations in speed (3 additions per second), wear over time, and susceptibility to failure due to their mechanical nature.
- For instance, complex operations like trigonometric functions could take over a minute to compute on the Harvard Mark I.
Challenges Faced by Early Engineers
- As relay numbers increased (the Harvard Mark I had about 3500), so did the probability of failures. This posed significant challenges during critical calculations.
- A famous incident occurred when operators found a dead moth causing a malfunction in a relay on the Harvard Mark II; this led to the term "computer bug" coined by Grace Hopper.
Transitioning from Relays to Vacuum Tubes
- To overcome these limitations, engineers turned to vacuum tubes developed by John Ambrose Fleming in 1904. These allowed for faster switching without moving parts.
- Lee de Forest improved upon Fleming's design with triode vacuum tubes that could control electron flow more effectively than relays.
Advantages of Vacuum Tubes Over Relays
- Unlike relays, vacuum tubes could switch thousands of times per second due to their lack of moving parts. However, they were initially fragile and costly but became more reliable over time.
The Evolution of Computing: From Vacuum Tubes to Transistors
Transition to Electronic Computing
- The shift from electro-mechanical computing to electronic computing began with the introduction of vacuum tubes, primarily utilized by governments and organizations with substantial funding.
The Colossus Mk 1
- Designed by Tommy Flowers and completed in December 1943, the Colossus Mk 1 was the first large-scale use of vacuum tubes for computing, aiding in decrypting Nazi communications at Bletchley Park.
- Alan Turing created an electromechanical device called the Bombe two years earlier, which was designed to break Enigma codes but wasn't classified as a computer.
- The original Colossus had 1,600 vacuum tubes and required manual configuration through plugboards for programming, marking it as the first programmable electronic computer.
Introduction of ENIAC
- Completed in 1946 at the University of Pennsylvania by John Mauchly and J. Presper Eckert, ENIAC was recognized as the world's first general-purpose programmable electronic computer capable of performing complex calculations rapidly.
- Despite its capabilities, ENIAC faced frequent breakdowns due to its reliance on numerous vacuum tubes, typically operating only half a day before requiring repairs.
Emergence of Transistors
- By the 1950s, limitations of vacuum-tube technology prompted innovation; transistors were invented in 1947 by scientists at Bell Laboratories (John Bardeen, Walter Brattain, William Shockley), leading to a new era in computing.
- A transistor functions similarly to a relay or vacuum tube but is more efficient; it can switch states rapidly using electrical power via a control wire connected to a gate electrode.
Advancements with Transistor Technology
- The IBM 608 emerged in 1957 as the first fully transistor-powered commercial computer containing 3,000 transistors and significantly enhancing computational speed compared to previous machines.
- As transistor technology advanced, computers became smaller and faster; modern transistors are now less than 50 nanometers wide and can switch states millions of times per second.