Abstract
There is a decade of writing operating systems before the ‘classic’ period of the mid-1960s, when such complex operating systems as Multics or OS/360 were developed and the theoretical principles for designing an operating system were first outlined. The few accounts on these early systems mostly focus on those developed for IBM machines that dominated the market, but even there, there is a greater variation of systems than one would expect. During this period, running roughly from 1954 to 1964, not even the notion nor the name of ‘operating system’ had stabilized. Some used the term ‘monitor’, others ‘supervisor’, yet others ‘director’ or ‘executive’. These systems were still very closely tied up with the hardware, in particular, since processor memory was at a premium, the organization of the communication between the processor and external memory devices was a crucial issue. Magnetic tapes made operating systems really worthwhile, because it allowed for a faster I/O communication than punched cards or paper tape. The early operating systems were also were deeply entangled with programming systems. Programming languages, assembler systems, routine libraries, editing and debugging tools etc., were often, though not always and not necessarily, integral parts of early operating systems. Therefore, the question of what an operating system exactly is, and how it would differenciate itself from these other tools, was neither an easy nor unequivocal question during this early period. An operating system not only incorporates a vision on how to access the computer, but also on how to access the user. These visions were influenced by local practices and design philosophies and often changed while accumulating experience in using the computer.