MultiFinder
MultiFinder is an extension for the Apple Macintosh's classic Mac OS, introduced on August 11, 1987[1] and included with System Software 5.[2] It adds cooperative multitasking of several applications at once – a great improvement over the previous Macintosh systems, which can only run one application at a time. With the advent of System 7, MultiFinder became a standard integrated part of the operating system and remained so until the introduction of Mac OS X.
History
Background
The first Macintosh was released in 1984, and Apple's developers made an early decision that the machine's 128 KB of RAM was so limited that they must abandon the application multitasking functionality that Apple had developed for the Lisa. As the successive Macintosh hardware models were released with much more RAM being the key feature, new programming techniques were developed as workarounds to allow users to run concurrent applications. Desk Accessories became a staple through the lifespan of System 6; and the Switcher would give way to the MultiFinder, which then became directly integrated into System 7.
Desk Accessories
To allow some degree of freedom and to deliver the GUI's promise of interface consistency, the original Macintosh includes Desk Accessories, such as a calculator, that can be run concurrently. However, their functionality is deliberately limited in favor of RAM conservation. In fact, they are device drivers which take advantage of the multitasking system designed for hardware peripheral support. As such, their running environment is severely restricted. They can only draw a single window, which by default is given a special round-bordered appearance. Although the system software does little to specifically support them, the popularity of Desk Accessories led many application developers to ensure good cooperative multitasking support even from the early days.
Switcher
Andy Hertzfeld, one of Apple's original Macintosh software architects, wrote Switcher after seeing John Markoff use a terminate-and-stay-resident program on an IBM PC in October 1984. By the end of the year he had a working prototype, and he soon demonstrated it in public.[3] Both Microsoft and Apple wanted to purchase the utility. Hertzfeld chose the latter because of his belief that Switcher should be bundled with the Macintosh system. Apple offered more money (US$100,000 plus royalties) and the company planned to ship Switcher with the Macintosh 512K. The first official version of Switcher appeared in April 1985.[4]
Switcher works by designating a number of fixed slots in memory into which applications could be loaded. The user can then switch between these applications by clicking a small button on the top of the menu bar. The current application horizontally slides out of view, and the next one slides in. Though awkward, this approach does fit well with the existing system's memory management scheme, and applications need no special programming to work with Switcher.[5] This early work on Switcher led to the development of MultiFinder by Apple system software engineers Erich Ringewald and Phil Goldman.
Microsoft saw Switcher as especially benefiting the company's highly memory-optimized Macintosh applications[4] so the utility was shipped with Excel. Microsoft stated that using multiple applications with Switcher was preferable to a single integrated software application like Lotus Symphony.[6] By 1987, Compute!'s Apple Applications reported that "many Macintosh owners are comfortable only when using more than one application at a time. Switcher and desk accessories are the two most common examples of that philosophy".[7] PC Magazine said that Switcher used too much of the system's precious little RAM and was not reliable enough.[8]
Multi-Mac
Multi-Mac is another application switching utility designed specifically for the Macintosh 512K, though it is more known for its mysteriousness. Showing up sometime in late 1985, after the introduction of Switcher, and being credited as being made by Jwa van der Vuurst with a copyright by Aubrac Systems, it makes over 200 direct calls to undocumented addresses in the Macintosh ROMs.[9] This led to the accusations that Jwa van der Vuurst was merely an alias and that the program was actually from someone that worked at Apple and had significant knowledge on the Macintosh's inner workings. The app itself adds a second apple menu on the right side of the menu bar which displays all currently running application and allows switching between them. It also allows adjusting the applications' memory allocation size, disk cache and adds background multi-threaded copying similar to Speed Doubler's and Mac OS 8's improved copy function.[10]
Servant
Servant was another attempt by Andy Hertzfeld at multitasking on the Macintosh, intended to solve Switcher's shortcomings. Released in September 1986, it was effectively a Finder, Switcher and ResEdit combined into one tool for the Macintosh Plus.[11] Its file manager is unusual due to its lack of a scrollbar, instead requiring to hold and drag the window background like a modern map app. One of its most interesting features is the first known implementation of wallpapers on the Macintosh, allowing users to replace the default grey background with MacPaint or ThunderScan images.[12] In comparison to Switcher, Servant allows users to open apps as they see fit instead of requiring you to select which apps you want to run first, then launching them inside Switcher. Switcher also has a primitive ability to recover from application crashes as well as force quit stuck applications that are no longer responding.[13] The result is a user experience more intuitive than Switcher. While Servant's resource editing features are not as full featured as ResEdit, it does allow editing file icons.[14]
MultiFinder
MultiFinder, known before its release as "Juggler",[15] was introduced on August 11, 1987.[1] It is simply a way for windows from different applications to coexist by using a cooperative application layering model. Its initial release is able to handle only two concurrent applications, one of which runs in the background;[8] and later releases allow many more concurrent applications. When an application is activated, all of its windows are brought forward as a single layer. This approach is necessary for backward compatibility with many of the windowing data structures that were already documented. MultiFinder also provides a way for applications to supply their memory requirements ahead of time, so that MultiFinder can allocate a chunk of RAM to each according to need. This scheme, while functional, has severe limitations which cause many problems for users. Virtual memory was only available to contemporary Macs with a PMMU chip (Mac II-class machines required) and an extension named Virtual from Connectix.[16] Apple eventually provided virtual memory with the introduction of System 7.[17]
Later in 1987, System 6 engineer Erich Ringewald's desire to solve these architectural problems altogether would bring him to defiantly cofound and lead the Pink project as the intended future of a new MacOS,[18] and then become chief software architect at Be Inc. to design BeOS in 1990.[19]
With the release of System 7, the MultiFinder extension was integrated with the operating system, and it remains so in Mac OS 8 and Mac OS 9. However, the integration into the OS does nothing to fix MultiFinder's inherent idiosyncrasies and disadvantages.[16] These problems were not overcome in the mainstream Macintosh operating system until the MultiFinder model was abandoned with the move to a modern preemptive multitasking Unix-based OS in Mac OS X. Two utilities, CPU Doubler and Peek-A-Boo, did implement a form of priority based task scheduling in the classic Mac OS, though they were unable to solve its other issues, like the lack of protected memory.[20][21]
Reception
Upon MultiFinder's 1987 release, PC Magazine noted it for beating IBM's competing OS/2 multitasking operating system to market, and said the System with MultiFinder "isn't a true multitasking operating system, though it's much more than a context switcher".[8] Jerry Pournelle of BYTE in 1989 said that "while MultiFinder doesn't work very well yet, DESQView on a big 80386 machine certainly does".[22] In 1990, InfoWorld tested the four mainstream desktop multitasking options: DESQView, OS/2 1.2, Windows 3.0, and System 6 with MultiFinder. MultiFinder was viewed overall positively for speed, ease of use, and value. Its presence halved the speed of file transfer and printing compared to the single-tasking System 6 without MultiFinder, but this was still comparable to Windows and DesqView and much faster than OS/2. These tradeoffs were seen as typical of contemporary add-on multitaskers compared to the natively architected but less friendly OS/2.[16]
References
- "Mac GUI :: MultiFinder Announced". macgui.com. Retrieved October 9, 2017.
- Macintosh: System Software Version History, Apple
- "Mac GUI :: Switching Mac Applications". macgui.com. Retrieved February 15, 2019.
- Hertzfeld, Andy. "Switcher". Folklore.org.
- "Mac GUI :: Switcher hints". macgui.com. Retrieved October 9, 2017.
- Pournelle, Jerry (September 1985). "PCs, Peripherals, Programs, and People". BYTE. p. 347. Retrieved March 20, 2016.
- "Information On A Card". Compute!'s Apple Applications. December 1987. p. 6. Retrieved August 18, 2014.
- "The new seekers: Hypertext comes of age". PC Magazine. November 24, 1987. p. 109. Retrieved March 8, 2019.
- Multi-Mac - Macintosh Servant
- Multitasking and the Mysterious Multimac - Stories of Early Mac
- Servant - Macintosh Servant
- Finder - Macintosh Servant
- Switcher - Macintosh Servant
- ResEdit - Macintosh Servant
- "Mac Bulletin". MacWorld. September 1987.
- "Orchestrating applications". InfoWorld. September 24, 1990. p. 83.
- Inside Macintosh: Memory. Reading, Massachusetts: Addison-Wesley Publishing Company. 1992. pp. 3–5. ISBN 0-201-63240-3.
- Hormby, Tom (April 27, 2014). "Pink: Apple's First Stab at a Modern Operating System". Low End Mac. Retrieved February 1, 2019.
- "Be Newsletter". Be Newsletter. Vol. 3, no. 8. March 25, 1998. Retrieved February 1, 2019.
- Inspecting Gadget - TidBITS
- How I Hacked a 90's Mac Kernel: CPU Doubler, a QL-like Task Scheduler/Task Manager - YouTube
- Pournelle, Jerry (January 1989). "To the Stars". BYTE. p. 109.