History of Apple operating systems. Part 1. The graphic era

Original author: Amit Singh
  • Transfer
I begin the translation of Amit Singh’s very thorough work on the history of Apple operating systems. Some of the images were added during translation for clarity. I plan 3 or 4 parts, depending on how it turns out in volume. In this part, let's see what happened before the Macintosh and Apple Lisa.

First bytes of code


At the end of 1975, Steve Wozniak completed a prototype computer, which would soon become known as Apple I. Wozniak was working at HP at the time. But this project was not interesting to them, so he asked to give them free. On April 1, 1976, Steve Jobs, Steve Wozniak, and Atari engineer Ronald Wayne founded Apple. The first product under this name was Wozniak's computer.

Apple i

Apple I was based on the 8-bit processor MOS Technology 6502, with a frequency of less than 1 MHz. It was a simplified version of the more expensive Motorola 6800 chip. The Intel 8080 was approximately similar in parameters, but it was more expensive. The computer had a built-in output to the TV, connectors for 8 KB of memory, keyboard and cassette recorder interfaces. The case, PSU, keyboard and TV were not included in the package, the buyer had to get them on their own.
image
Apple I connected to the TV through the antenna input and could display 24 lines of 40 characters. The starting price was 666 dollars 66 cents, the set, except for the motherboard, included 4 KB of memory and a cassette with Apple BASIC.
image
Apple I did not have an operating system as such, but there was a firmware called System Monitor. Its size was only 256 bytes, not KB. It allowed you to work with the command line using the keyboard and screen, view the contents of memory, type and run programs, and so on.
Compared with UNIX (the sixth edition at that time, see habrahabr.ru/post/194160 ), calling Apple I firmware the operating system does not rotate the language. On the other hand, a UNIX-compatible computer was then worth tens of thousands of dollars. The much cheaper Apple I was intended for the general public geeks .

Apple ii

Apple I was on the conveyor for less than a year, but the next model, Apple II, lived much longer. Apple II is based on the same 6502 processor, but was designed by Wozniak as an integrated computer. The keyboard was built right into the case. It was the first PC capable of working with color graphics.
The Apple II line was quite diverse: Apple II +, IIe, IIc, IIc +, IIe Enhanced, IIe Platinum, and finally 16-bit IIgs in 1986. (IIgs is not entirely appropriate here because it was made on a new platform and a new processor, but was able to work in compatibility mode with old Apple II - approx. Transl.) Some of these models were also upgraded during the release.
For Apple II, several operating systems have been created.

Apple dos

Soon after the release of Apple II in 1977, it became apparent that the computer would not live without a drive. Wozniak designed the excellent Disk II floppy drive. (This episode is well described in Wozniak’s memoirs. I highly recommend it - approx. transl.) A disk operating system was also needed for the drive. The first version of Apple DOS 3.1 (not only Windows NT began numbering from the top three - approx. Transl.) Was released in July 1978.
image
The system had nothing to do with the not yet released MS-DOS. Drives were a luxury at the time, so the DOS abbreviation was used extensively for PR, much like the prefix i .
Such a strange numbering was due to the fact that one of the programmers, Paul Loughton, actually replaced the version number with the build number. It all started with 0.1, and the beta was at number 3.0.

Apple pascal

image
The p-System was developed at the University of California and San Diego (UCSD) and was very popular in the 70s and early 80s. It was a portable operating system, de facto a virtual machine running p-code bytecode. The most popular development language is UCSD Pascal. Apple modified it for Apple II. Mark Allen and Richard Gleaves, UCSD students, developed the interpreter for 6502 in the summer of 1978. In 1979, Apple II Pascal was released on the basis of this development. Apple Pascal has been available for five years.

Apple CP / M

Microsoft developed the Softcard coprocessor board in 1980. It was originally called Microsoft Z-80 SoftCard, but then it was renamed to avoid litigation with Zilog. The card allowed launching programs for the Z-80 processor and CP / M OS on Apple II. In those years, there was a lot of software for it. Of the useful and popular, you can recall dBase and WordStar.
image
There were other coprocessor cards with support for various processors. The Stellation Mill card with the Motorola 6809 processor allowed running the OS-9 real-time operating system on Apple computers.

Apple SOS

Apple III was launched in 1980 for business users. The new OS, SOS, officially got its name because of the sophistication and sophistication (Sophisticated Operating System), but actually one of the developers immortalized the name of his daughter - Sara's Operating System. Each program also loaded into the memory the operating system. The disk contained the SOS.kernel kernel, the SOS.Interp interpreter, and the SOS.Driver driver set.
image
SOS has evolved into Apple ProDOS.

Apple prodos

Apple DOS 3.3 was replaced in October 1983 by ProDOS 1.0, based on SOS. In the new system, it was more convenient to program in BASIC, assembler and directly in codes. SOS improved interrupt handling, accelerated and simplified disk access, and made many other improvements. A hierarchical file system with the following features also appeared:
  • Support for multiple logical volumes on a single physical medium
  • Support for up to 20 different file types, 10 of which are available for user assignment
  • Up to eight files opened simultaneously
  • Any number of files in a subdirectory. Although the root directory could be no more than 51

image
After the release of the 16-bit Apple IIGS, ProDOS version 1.1.1 at that time was divided into an 8-bit branch of ProDOS 8 and 16-bit ProDOS 16.

Search for sources of inspiration


Apple introduced the Macintosh in 1984 and Apple Lisa in 1983. It will be appropriate here to return to 1968. Before UNIX, before the founding of Apple and Microsoft. 17 years before the release of Windows 1.0.

NLS: oNLine System

December 9, 1968 in San Francisco at the FJCC (Fall Joint Computer Conference) Douglas Engelbart introduced NLS. Since 1962, he created it with 17 employees at the Augmented Reality Research Center at the Stanford Research Institute in California. It was a breakthrough and an overflow of innovation per unit time.


We give the floor to Engelbart himself.
Суть этого проекта вкратце такова: представь, что у тебя в офисе есть компьютер с экраном, который работает на тебя весь день и моментально откликается на твои действия. Сколько можно было бы дополнительно заработать с таким помощником? Мы стремились именно к такой картине.


Mouse

Engelbart showed the first mouse. Pointing device with three buttons and a bug spot on the screen. There were two perpendicular wheels below, each with a potentiometer. If you drag the mouse on the surface, the bug on the screen crawls according to its movement.
image

Chord keyboard

Another new feature in this presentation is the five-finger chord keyboard. It allows you to enter 2 ** 5-1 = 31 characters. The minus one matches all the non-pressed keys.
image

Work with documents

Engelbart showed that you can enter, drag, copy, paste, format, scroll, hierarchically group text, and so on. Created text can be saved in a file with metadata such as author name and creation time. If you use a mouse, then all this is simple and fast. Engelbart called the general mechanism of all this view control.
The system was convenient for writing code. Blocks of code could be minimized, autocompletion worked. Markup was also supported, which allowed you to format the document in accordance with the purpose, for example, for printing.

Hypertext and Image Cards

Using hypertext, Engelbart implemented transitions between text fragments. This can be a transition to the search result or just a click on a visible or invisible hyperlink.
The system also supported drawing. It was also possible to embed hyperlinks in images in the manner of modern image maps, image map.
The word "hypertext" was coined by Ted Nelson, and the idea itself is attributed to Vannevar Bush. He was a science adviser to Franklin Roosevelt, and in 1945 proposed association instead of indexing as a way of linking pieces of information.

Search

A powerful search toolkit was implemented with keyword weights and output of the result in the form of hypertext.

Window

The screen could be divided into two parts, one of which is static, and the second interactive. For example, when reading a manual an incomprehensible word appeared. It was possible to open the dictionary in the second window and clarify its meaning. In general, it was like HTML frames.

Teamwork

It was also possible to work together on documents, edit someone else's text, leave notes to the co-authors - almost like a github.
It was also possible to leave a message to a specific person, and not to the user at all. A programmable filter made it possible to show different file contents to different users.

Interactive Collaboration

They also showed a live video conference. You could even show remote users the same image on the screen, but provide different access rights. For example, one edits, and the second observes in read-only.

Result

Engelbart argued that such a system would allow users to effectively deal with complex information in which content is a concept. NLS was supposed to be a tool for navigating structures that cannot be displayed in plain text.
Engelbart also worked on the creation of ARPANet. The plans included a special service for working with up-to-date information about the network and answers to questions like “Who provides this service?”, “Which protocol should I use?”, “Which hosts are online and which are disabled?”
The bootstrap concept was actively used. Short meaning: "We create this tool to create even better tools with it."
Even such innovations did not save NLS. The institute has stopped financing. Many developers moved to the new Xerox PARC project, where they planned to create a distributed network version of NLS. Engelbart went to the telephone company Tymshare. Ironically, his office was not far from Apple.

Smalltalk

The development of Xerox PARC has greatly changed the approach to computer interfaces in general. The first version of Smalltalk was released at PARC in 1972. It was the first fully object-oriented language. It was based on the language of Simula. There was also a development environment with a windowed interface. A lot of interesting things were written on Smalltalk for that platform: a WYSIWYG editor, software for capturing and editing sound, animation, and so on.
Later, looking at Smalltalk, they developed the Objective-C language. Smalltalk lead developer Alan Kay was the founder of the PARC project. In the late 60s, he proposed the idea of ​​something in the spirit of a modern PDA called Dynabook. He later worked at many large computer companies, including Apple, as chief science officer.

Xerox alto

Xerox did not forget about personal computers in the current sense of the word. The result is a Xerox Alto. He had a 16-bit processor, a vertical screen with a resolution of 606x808, a regular and accord keyboard, a three-button mouse with a ball and a beautiful body. Interfaces for a printer, plotter, Ethernet with a speed of 2.94 Mbps were available. Network and network printing were supported, but there was no virtual memory. In 1979, there were about 1,500 Alto stations in operation. They were sold to third-party buyers.

Alto os

There was a built-in emulator of a standard set of commands that was executed with the lowest priority. It was executed from ROM. (< — этот фрагмент мне не понятен, дополнительные источники ничего внятного не говорят — прим. перев.) (<- I don’t understand this fragment, additional sources don’t say anything intelligible - approx. Transl.)
The OS was written in BCPL. A debugger called Swat (hands itched to translate as OMON, but restrained - approx. Transl.) Allowed to save the state of the machine in a Swatee-file for debugging. There was a kind of shell, Alto Executive. Its network version of NetExec could download programs from the server via Ethernet instead of a local disk.
image

Applications

There were many, and they were useful. Short list: Bravo word processor, Laurel message manager, Markup document illustrator, Draw vector editor, Neptune file manager, Mesa programming languages ​​(Pascal version), Smalltalk, Lisp.
These applications are quite advanced, even when looking from the future. In the Draw editor, the screen was divided into several areas: the menu of brushes, commands, fonts, the image itself, the title and the message box. Officetalk, a form editor, was later integrated into the STAR System office system. Many developments on interfaces were also included there. Network features included FTP and Telnet.

Xerox STAR System

image
Xerox introduced the new 8010 STAR Information System at the Chicago trade fair in April 1981. Iron has been updated compared to Alto, but the differences were mostly quantitative. The main feature - the interface was developed before hardware and software.
The STAR interface was based on virtual metaphors for ordinary office realities: paper, folders, file cabinets, mailboxes, calculators, seals . Later it all spilled over into numerous imitations. Examples:
  • There was a desktop with icons of documents, folders and mailboxes
  • Icons opened or started by clicking. Almost all functions from the current right-click menu in Windows were supported.
  • Windows had headers with a name, context menu, and context help. If necessary, scroll bars appeared. In general, the interface was sharpened on tile windows, without overlapping.
  • Ways to visualize work with text were developed, for example, search tools with a bunch of options.


The next series will feature the Maki era Motorola 68k and early PowerPC.