Barehardware
In theearliest days of electronic digital computing, everything was done on the barehardware. Very few computers existed and those that did exist were experimentalin nature. The researchers who were making the first computers were also theprogrammers and the users. They worked directly on the “bare hardware”. Therewas no operating system. The experimenters wrote their programs in machine orassembly language and a running program had complete control of the entirecomputer. Often programs and data were entered by hand through the use oftoggle switches. Memory locations (both data and programs) could be read byviewing a series of lights (one for each binary digit). Debugging consisted ofa combination of fixing both the software and hardware, rewriting the objectcode and changing the actual computer itself.
The lackof any operating system meant that only one person could use a computer at atime. Even in the research lab, there were many researchers competing forlimited computing time. The first solution was a reservation system, withresearchers signing up for specific time slots. The earliest billing systemscharged for the entire computer and all of its resources (regardless of whetherused or not) and was based on outside clock time, being billed from thescheduled start to scheduled end times.
The highcost of early computers meant that it was essential that the rare computers beused as efficiently as possible. The reservation system was not particularlyefficient. If a researcher finished work early, the computer sat idle until thenext time slot. If the researcher’s time ran out, the researcher might have topack up his or her work in an incomplete state at an awkward moment to makeroom for the next researcher. Even when things were going well, a lot of thetime the computer actually sat idle while the researcher studied the results(or studied memory of a crashed program to figure out what went wrong). Simplyloading the programs and data took up some of the scheduled time.