Star Trek project

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Star Trek is the code name given to a secret prototype project, running a port of Mac OS 7 and its applications on Intel-compatible x86 personal computers. The project, starting in February 1992,[1] was conceived in collaboration between Apple Computer, who provided the majority of engineers, and Novell, who at the time was one of the leaders of cross-platform file-servers. The plan was that Novell would market the resulting OS as a challenge to Microsoft Windows, but the project was discontinued in 1993 and never released, although components were reused in other projects.

Overview[edit]

"Star Trek" was designed as a hybrid of Apple's Macintosh operating system, made to run as an operating system GUI shell application upon Novell's next in-development version of the DR DOS operating system. It was designed so that a user could think of it as a standalone application platform and general computing environment, in a concept similar to Microsoft's competing Windows 3.1x, running on top of DOS. This was a radical departure both technologically and culturally, because at that time, the Mac OS had only ever officially run on Apple's own computers, which were all based on the Motorola 68000 architecture. The project was named after the Star Trek science fiction franchise with the slogan "To boldly go where no Mac has gone before."

The system was built on the successor of Digital Research's DR DOS 6.0 (BDOS level 6.7 and 7.1) and NetWare PalmDOS 1.0 (code named "Merlin", BDOS level 7.0), Novell's DR DOS "Panther" as a fully PC DOS compatible 16-bit disk operating system (with genuinely DOS compatible internal data structures) for bootstrapping, media access, device drivers and file system support. The system would utilize DR DOS' new "Vladivar" Extended DOS component with flat memory support, which had been under development at least since 1991. "Vladivar" (DEVICE=KRNL386.SYS[2] aka DEVICE=EMM386.EXE /MULTI + TASKMGR)[3] was a dynamically loadable 32-bit protected mode system core for advanced memory management, hardware virtualization, scheduling and domain management for pre-emptive multithreading within applications as well as multitasking of independent applications running in different virtual DOS machines (comparable to Windows 386 Enhanced Mode but without a GUI).[3]

Thereby, the previously loaded DOS environment including all its device drivers became part of the system domain under the multitasker[3] and unless specific protected mode virtual device drivers were loaded, hardware access got tunneled through this 16-bit sub-system by default. For maximum speed at minimum resource footprint the DR DOS BIOS, BDOS kernel, device drivers, memory managers and the multitasker were written in pure x86 assembly language. Apple's port of System 7.1 would run on top of this high-performance yet light-weight hybrid 32-bit/16-bit protected mode multitasking environment as a graphical system and shell in user space. Macintosh resource forks and long filenames were mapped onto the FAT12 and FAT16 file systems.

The developers eventually reached a point where they could boot an Intel 486 PC (with very specific hardware) into System 7.1, and on-screen it was indistinguishable from a Mac. However, every program had to be ported to the new x86 architecture to run. Supposedly programs could be ported with little effort because Apple developed equivalent headers for x86.

However, the project was cancelled in mid-1993 because of political infighting, personnel issues, and the questionable marketability of such a project. Apple's side of the project had seen the exit of the supportive CEO, John Sculley, in favor of the new CEO, Michael Spindler.

All the MBAs in the world can’t convince us it’s a good model.

— Roger Heinen, Manager of Mac software architecture,
on the objectives of Star Trek in March 1992[4]:(p179)

Legacies[edit]

While the joint effort failed, Novell published the long awaited "DR DOS 7.0" as Novell DOS 7 (BDOS 7.2) in 1994. Besides many other additions in the areas of advanced memory and disk management and networking, Novell DOS 7 provided all of Novell's underlying "STDOS" components of the DR DOS "Panther" and "Vladivar" projects except for the graphical "Star Trek" component itself, which had been jointly developed by Apple and Novell. Instead, TASKMGR provided a text mode interface to the underlying multitasker in EMM386, but the system also provided an API to allow third-party GUIs to take over control. Microsoft Windows, ViewMAX/2 & 3 and PC/GEOS / NewDeal are known to utilize this interface, when run on Novell DOS 7 (or its successors OpenDOS 7.01 or DR-DOS 7.02 and higher), and "Star Trek" would have been yet another one. In fact, some additional hooks had been implemented specifically for the "Star Trek" GUI for frame buffer access. These hooks have never been stripped out of EMM386 but just left undocumented.

Apple reused some of the platform abstraction technology developed for Star Trek, incorporating it into the concurrently developed—and some consider competing—migration to the PowerPC architecture. This abstraction technology included the capability of loading the Mac OS ROM data from a file instead of from a ROM chip.[citation needed]

Similar concepts[edit]

Within Apple[edit]

Apple has actually delivered upon the concept of hybridizing Mac OS 7 into a shell application platform. It was accomplished in the form of the startmac process and other hybridized applications launched atop its UNIX-based A/UX system. It was also accomplished in the form of the Macintosh Application Environment (MAE), which was the functional equivalent of Star Trek plus an embedded 68k emulator (as was the case with System 7 for Power Macintosh), running as an application for Solaris and HP/UX. Apple also delivered its "DOS Compatible" models of Macs, which is a hybridized Mac with a concurrently functional Intel coprocessor card inside. Mac OS 7 and later have always had DOS filesystem compatibility.[5]

A corporation formerly known as ARDI invented a product called Executor, which can run a compatible selection of 68k Macintosh applications, and is hosted upon either the DOS or Linux operating systems on an Intel CPU. Executor is a cleanroom reimplementation of the Macintosh Toolbox and versions 6 and 7 of the operating system, and an integrated 68k CPU emulator called Syn68k.[4]:(p182)[6]

Although a direct x86 port of the classic Mac OS was never released to the public, determined users could make Apple's retail OS run upon non-Mac computers through emulation. The development of these emulation environments was said to have been inspired by the initiative shown in the Star Trek project.[citation needed] Two of the more popular 68k Macintosh emulators are vMac and Basilisk II, and a PowerPC Macintosh emulator is SheepShaver; each are written by third parties.

Ten years after Project Star Trek, it became possible to natively run Darwin, the Unix-based core of OS X, on the x86 platform by virtue of its NeXTstep foundation. This port was widely available because Darwin was open source under the Apple Public Source License. However, the OS X graphical user interface, named Aqua, was proprietary. It was not included with Darwin, which depended on other window managers running on X11 for graphical interfaces, and thus most commercial Mac OS applications cannot run natively on Darwin alone.

Apple ran a similar project to Star Trek for Mac OS X, called Marklar. This project was to keep Mac OS X and all supporting applications (including iLife and Xcode) running on the x86 architecture as well as that of the PowerPC. Marklar was publicly revealed by Apple's CEO Steve Jobs in June 2005, when he announced the Macintosh transition to Intel processors starting in 2006.[citation needed]

Within IBM[edit]

Comparing and contrasting with Apple's efforts, IBM had long since attempted a different strategy to provide the same essential goal of innovating a new software platform upon commodity hardware, while nondestructively preserving existing legacy installations of MS-DOS heritage. However, its strategy was based upon its OS/2 operating system, which had long since achieved seamless backward compatibility with MS-DOS applications. In 1992, roughly coinciding with the timeframe of the Star Trek project, IBM devised a new and fundamentally integral subsystem for backward compatibility with Windows 3.0 and Windows 3.1 applications. This new subsystem for OS/2, called Win-OS/2, was integrated beginning with OS/2 2.0. Although conceived through different legacy business requirements and cultures, Win-OS/2 was designed with similar software engineering objectives and virtualization techniques as was Star Trek. Coincidentally, IBM had also code-named its OS/2 releases with Star Trek themes, and would eventually make such references integral to OS/2's public brand beginning with OS/2 Warp.

Apple and IBM have attempted several proprietary cross-platform collaborations, including the unreleased port of Quicktime to OS/2, the significant traction of the OpenDoc software framework, the AIM alliance, Kaleida Labs, and Taligent. Star Trek fandom interests will note that both companies have utilized actual personnel from the Star Trek television and movie franchise for promotional purposes.

For more details on this topic, see OS/2: 1994-1996: The "Warp" years.

See also[edit]

References[edit]

  1. ^ Caldera, Inc. (1999-04-19). "Caldera's consolidated response to Microsoft's motions for partial summary judgement on plaintiff's claims of "predisclosure", "perceived incompatibilities," and "intentional incompatibilities"" (court deposition). paragraph 27. Retrieved 2013-03-21. Caldera admits paragraph 27, excerpt as follows: Discussions with Apple regarding the "Star Trek" project began in February or March 1992. Deposition of Toby Corey ("Corey Dep.") at 44, Record Support, v.3 to Consolidated Statement of Facts. 
  2. ^ Schulman, Andrew; Brown, Ralf; Maxey, David; Michels, Raymond J.; Kyle, Jim (1994). Undocumented DOS. Andrew Schulman programming series (second ed.). Addison Wesley. ISBN 978-0-201-63287-3. OCLC 28547404. Archived from the original on 2013-03-21. Retrieved 2013-03-21. 0-201-63287-X 
  3. ^ a b c Caldera, Inc (August 1997). OpenDOS Developer's Reference Series — Multitasking API — Programmer's Guide. UK. Caldera Part No. 200-DODG-004. Retrieved 2013-03-21. 
  4. ^ a b Linzmayer, Owen W. (1999). Apple Confidential. San Francisco, CA: No Starch Press. ISBN 9781886411289. OCLC 245921029. Archived from the original on 2013-03-21. Retrieved 2013-03-21. 
  5. ^ "Macintosh: DOS, OS/2, and Windows Compatibility". March 1993. Retrieved 2013-03-23. 
  6. ^ "ARDI.com". Retrieved 2013-03-21. 

External links[edit]