Showing posts with label Colossus computer. Show all posts
Showing posts with label Colossus computer. Show all posts

Monday, November 29

Shareware

The term shareware (also known as trialware or demoware) refers to proprietary software that is provided to users without payment on a trial basis and is often limited by any combination of functionality, availability or convenience. Shareware is often offered as a download from an Internet website or as a compact disc included with a periodical such as a newspaper or magazine. The rationale behind shareware is to give buyers the opportunity to use the program and judge its usefulness before purchasing a license for the full version of the software. Firms with superior software thus have an incentive to offer samples, except if their product is already well known, or if they do not want to be listed in direct competition with other products on shareware repositories.
Shareware is usually offered either with certain features only available after the license is purchased, or as a full version but for a limited trial period of time. Once the trial period has passed the program may stop running until a license is purchased. Shareware is often offered without supports or updates which only become available with the purchase of a license. The words "free trial" or "trial version" are indicative of shareware.
The term shareware is used in contrast to retail software, which refers to commercial software available only with the purchase of a license which may not be copied for others, public domain software, which refers to software not copyright protected, and freeware, which refers to copyrighted software for which the author solicits no payment (though he or she may request donations).

History

The history of shareware started in: In 1982, Andrew Fluegelman created a program for the IBM PC called PC-Talk, a telecommunications program, he used the term freeware. About the same time, Jim "Button" Knopf released PC-File, a database program, calling it user-supported software. Not much later, Bob Wallace produced PC-Write, a word processor, and called it shareware. Appearing in an episode of Horizon titled Psychedelic Science originally broadcast 5 April 1998, Bob Wallace said the idea for shareware came to him "to some extent as a result of my psychedelic experience."
In 1984, Softalk-PC magazine had a column, The Public Library, about such software. Public domain is a misnomer for shareware, and Freeware was trademarked by Fluegelman and could not be used legally by others, and User-Supported Software was too cumbersome. So columnist Nelson Ford had a contest to come up with a better name.
The most popular name submitted was Shareware, which was being used by Wallace. However, Wallace acknowledged that he got the term from an InfoWorld magazine column by that name in the 1970s, and that he considered the name to be generic,[citation needed] so its use became established over freeware and user-supported software.
Fluegelman, Knopf, and Wallace clearly established shareware as a viable software marketing method. Via the shareware model, Button, Fluegelman and Wallace became millionaires.
During the late 1980s and early 1990s, shareware software was widely distributed over bulletin board systems globally and on diskettes (and subsequently, CD-ROMs) by commercial shareware distributors who produced catalogs of up to thousands of public domain and shareware programs. One such distributor, Public Software Library (PSL), began an order-taking service for programmers who otherwise had no means of accepting credit card orders.
As Internet usage grew, users turned to downloading shareware programs without paying long-distance charges or disk fees, spelling the end of bulletin board systems and shareware disk distributors. In addition to shareware libraries online, the authors of programs had their own sites where the public could learn about their programs and download the latest versions, and even pay for the software online.
The Internet also made it easier to locate niche software, as well as the best and most popular general software. During the early 2000s, and with the increasing popularity of Web 2.0, new ways to filter the software became available. Major download sites began to rank titles based on quality, feedback, and downloads. Popular software was sorted to the top of the list. Blogs and online forums further enabled individuals to spread news about titles they like. With this pruning in place, consumers can more easily find quality shareware products while still preserving the ability to find obscure and niche software.

Implementations

Free/open source software and shareware are similar in that they can be obtained and used without monetary cost. Usually shareware differs from free/open source software in that requests of voluntary shareware fees are made, often within the program itself, and in that source code for shareware programs is generally not available in a form that would allow others to extend the program. Notwithstanding that tradition, some free/open source software authors ask for voluntary donations, although there is no requirement to do so. Free/open source software is usually compatible with the strict Association of Shareware Professionals shareware guidelines.
Sometimes, paying the fee and obtaining a password results in access to expanded features, documentation, or support. In some cases, unpaid use of the software is limited in time or in features — in which case the software is vernacularly called crippleware. Some shareware items require no payment; just an email address, so that the supplier can use this address for their own purposes.
Shareware is available on all major computer platforms including Microsoft Windows, Macintosh, Linux, and Unix. Titles cover a very wide range of categories including: business, software development, education, home, multimedia, design, drivers, games, and utilities.

Logistics

With shareware, a developer bypasses the normal distribution channel eliminating the normal retail middleman markups and directly markets to the end user. The end result is a reduced end-user price compared to the retail channel. Users of shareware are encouraged to copy and distribute unregistered versions of the software to friends, coworkers and other acquaintances. The hope is that users will find the program useful or entertaining and will pay to register to be able to access all the features.
In the early to mid-1990s, large online distribution channels known as "portals", such as Download.com, Tucows, Yahoo! Games and RealArcade emerged. These portals acted as media of distribution for the shareware developers, providing a much larger audience than before.
Many shareware developers are individual computer programmers who develop their own product. Online shareware author communities, like the newsgroup alt.comp.shareware.authors, are often used by software seekers to post their novel software ideas for potential implementation.

Distribution

In the early 1990s, shareware distribution was a popular method of publishing games for smaller developers, including then-fledgling companies such as Apogee Software (now 3D Realms), Epic Megagames (now Epic Games), and id Software. It gave consumers the chance to play the game before investing money in it, and gave them exposure that some products would be unable to get in the retail space.
With the Kroz series, Apogee introduced the "episodic" shareware model that became the most popular incentive for "registering" (or buying) the game. While the shareware game would be a truly complete game, there would be additional "episodes" of the game that were not shareware, and could only be legally obtained by paying for the shareware episode. In some cases these episodes were neatly integrated and would feel like a longer version of the game, and in other cases the later episode(s) would be stand-alone games.
Racks of games on single 5 1/4 inch and later 3.5 inch floppy disks were common in retail stores. However, bulletin board systems (BBS) and computer expositions such as Software Creations BBS were the primary distributors of all early low-cost software. Free software from a BBS was the motive force for consumers to purchase a computer equipped with a modem, so as to acquire software at no cost. At PC expositions, extant today, shareware was essentially free; the cost only covered the disk and minimal packaging.
In the mid-1990s, the shareware market declined and within a few years had virtually disappeared as a means for distributing computer games. The reasons for this are various, but could be closely linked with the decline of garage coders. Shareware was often a great means for games that were unable to get traditional marketing and retail exposure to get noticed. However, as technology improved, independent games were less able to be competitive in a commercial market, and larger developers found it unnecessary to release extensive shareware episodes, instead offering more limited demos in their stead.
The important distinguishing feature between a shareware game and a game demo is that the shareware game is, at least in theory, a complete game. Where modern demos are often a single level or less, shareware games usually had many hours of play with a beginning, middle, and end. Shareware episodes most commonly offered 1/3 or 1/2 of the entire registered version, and many even offered the entire product as shareware with no additional content for registered users.

Criticism

In the 1980s and early-to-mid 1990s shareware was considered to be a concept for independent software writers to receive a degree of remuneration for their labor. However, after that the shareware model began to degrade as the term was used by commercial startups offering (sometimes substandard) commercial software and labeling non-functional or limited demo versions (known as crippleware) as shareware. As a result, the term shareware has shown reduced usage in recent years, replaced by either demo for trial software or freeware for full editions. However, shareware software is not always so limited in function, as demonstrated with programs such as The Bat!, GetRight, WinZip, and WinRAR, as well as various games.
Some shareware groups have liberal standards, allowing 'nag screens' that remind the user to buy the software, demonstration or "demo" versions and trialware. Some have refused to accept any software with limited functionality, including demos, trial use, or crippled software. Most groups, such as the Association of Shareware Professionals, the Software Industry Professionals group and PC Shareware clearly state their position that any software marketed as 'try before you buy' is shareware.
Another issue is the high percentage of projects that are either unsuccessful or just abandoned. Sites like Tucows, download.com, and Handango list hundreds of thousands of shareware projects, many of which are abandoned. One sampling found 76% of listed projects were abandoned or no longer being updated. Active projects commonly see less than 0.5% of downloaders convert to paying customers, and as many as half of the users may be using pirated versions of the software.
With the advent of the internet, many traditional shareware programs (such as photo editing tools or word processors) are now available directly through a web browser, therefore bypassing the entire process of having to download and install the application. In addition to offering the convenience of not having to install any software, most online applications are offered at no cost to the user, through means of online advertisements.

Derivatives

Other types of software distribution, taking the suffix "-ware" have followed shareware's lead. They usually do not require the user to make a specific payment to the author. Rather, they sometimes require the user to send the author a postcard (postcardware), donate to a specific charity (careware), say a prayer for the author (prayerware), or do some other action.

Industry standards and technologies

There are several widely accepted standards and technologies that are used in the development and promotion of shareware.
FILE ID.DIZ is a descriptive text file often included in downloadable shareware distribution packages.
PAD (Portable Application Description) is used to standardize shareware application descriptions. PAD file is an XML document that describes a shareware or freeware product according to the PAD specification.
DynamicPAD extends the Portable Application Description (PAD) standard by allowing shareware vendors to provide customized PAD XML files to each download site or any other PAD-enabled resource. DynamicPAD is a set of server-side PHP scripts distributed under a GPL license and a freeware DynamicPAD builder for 32-bit Windows.
Code signing is a technology that is used by Shareware developers to digitally sign their products. The recent versions of Microsoft Operating Systems, namely Windows XP Service Pack 2 and Windows Vista, show a warning when the user installs unsigned software.

(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)