Section 1.2. The NeXT Chapter


1.2. The NeXT Chapter

All of Steve Jobs' operational responsibilities at Apple were "taken away" on May 31, 1985. Around this time, Jobs had come up with an idea for a startup for which he pulled in five other Apple employees. The idea was to create the perfect research computer for universities, colleges, and research labs. Jobs had even attempted to seek the opinion of Nobel laureate biochemist Paul Berg on using such a computer for simulations. Although interested in investing in Jobs' startup, Apple sued Jobs upon finding out about the Apple employees who joined him. After some mutual agreements, Apple dropped the suit a year after. The startup was NeXT Computer, Inc.

NeXT's beginnings were promising. Jobs initially used $7 million of his personal money. Several larger investments were made in NeXT, such as $20 million from Ross Perot and $100 million from Canon a few years later. True to its original goal, NeXT strived to create a computer that would be perfect in form and function. The result was the NeXT cube.

The cube's motherboard had a clever, visually appealing design. Its magnesium case was painted black with a matte finish. The monitor stand required an astonishing amount of engineering (for a monitor stand). An onboard digital signal-processing chip allowed the cube to play stereo-quality musican exceptional feature for that time. The machines were manufactured in NeXT's own state-of-the-art factory.

1.2.1. NEXTSTEP

Jobs unveiled the NeXT cube on October 12, 1988, at the Davies Symphony Hall in San Francisco. The computer ran an operating system called NEXTSTEP, which used as its kernel a port of CMU[7] Mach 2.0[8] with a 4.3BSD environment. NEXTSTEP's window server was based on Display PostScripta marriage of the PostScript page-description language and window system technologies.

[7] Carnegie Mellon University.

[8] The Mach implementation in NEXTSTEP included NeXT-specific features, as well as some features from later versions of CMU Mach.

In 1986, Sun Microsystems had announced its own Display PostScript Window System called NeWS.


NEXTSTEP offered both a graphical user interface and a Unix-style command-line interface. The NEXTSTEP graphical user interface had multilevel menus, windows whose contents were shown while being dragged, and smooth scrolling. A dock application always stayed on top and held frequently used applications. Other NEXTSTEP features included the following:

  • The ability to "hide" applications instead of quitting them

  • CD-quality sound

  • A versatile mail application that supported voice annotation of messages, inline graphics, and dynamic lookup of email addresses over the network

  • Drag and drop of complex objects between applications

  • A services menu that could be accessed from various applications to provide services such as dictionary and thesaurus

  • A Digital Librarian application that could build searchable indexes of content dragged to it

  • A file viewer that extended across the network

  • An object-oriented device driver framework called the Driver Kit

NEXTSTEP used drag and drop as a fundamental, powerful operation. It was possible to drag an image from, say, the mail application to a document editing application such as WordPerfect. Conversely, you could drag a spreadsheet to the mail application to attach it to a message. Since the file viewer was network capable, a remote directory could be dragged as a shortcut on the user's desktop (specifically, on the shelf).

NEXTSTEP's native programming language was Objective-C. The system included Interface Builder, a tool for designing application user interfaces graphically. Several software kits were provided to aid in application development. A software kit was a collection of reusable classes (or object templates). Examples include the Application Kit, the Music Kit, and the Sound Kit.

Objective-C

Objective-C is an object-oriented, compiled programming language invented by Brad Cox and Tom Love in the early 1980s. It is a superset of C, with dynamic binding and a messaging syntax inspired by Smalltalk. It aims to be a simpler language than C++. Consequently, it does not have many features of C++, such as multiple inheritance and operator overloading.

Cox and Love founded StepStone Corporation, from which NeXT licensed the language and created its own compiler. In 1995, NeXT acquired all rights to StepStone's intellectual property related to Objective-C.

Apple's Objective-C compiler used in Mac OS X is a modified version of the GNU compiler.


At the time of the cube's announcement, NEXTSTEP was at version 0.8. It would be another year before a 1.0 mature release would be made.

NEXTSTEP 2.0 was released a year after 1.0, with improvements such as support for CD-ROMs, color monitors, NFS, on-the-fly spell checking, and dynamically loadable device drivers.

In the fall of 1990, Timothy John "Tim" Berners-Lee at CERN created the first web browser. It offered WYSIWYG browsing and authoring. The browser was prototyped on a NeXT computer in the space of a few months. The speed of implementation was attributed to the qualities of the NEXTSTEP software development system.


NEXTSTEP tools allowed fast prototyping for ideas in human-interface design and navigation techniques.

At the 1992 NeXTWORLD Expo, NEXTSTEP 486a $995 version for the x86was announced.

NEXTSTEP ran on the 68K, x86, PA-RISC, and SPARC platforms. It was possible to create a single version of an application containing binaries for all supported architectures. Such multiple-architecture binaries are known as "fat" binaries.[9]

[9] Fat binaries are the same as the so-called Universal binaries, which are used with the advent of the x86 version of Mac OS X.

Canon had a personal workstation, the object.station 41, which was designed to run NEXTSTEP. The system's 100MHz Intel 486DX4 processor was upgradeable to an Intel Pentium OverDrive processor. Besides NEXTSTEP as the operating system, the machine included Insignia Solutions' SoftPC.


The last version of NEXTSTEP3.3 (Figure 14)was released in February 1995. By that time, NEXTSTEP had powerful application development facilities courtesy of tools such as the Project Builder and the Interface Builder. There existed an extensive collection of libraries for user interfaces, databases, distributed objects, multimedia, networking, and so on. NEXTSTEP's object-oriented device driver toolkit was especially helpful in driver development. Figure 15 shows the timeline and lineage of NeXT's operating systems.

Figure 14. NEXTSTEP


Figure 15. The timeline of NeXT's operating systems


Despite the elegance of NeXT's hardware and the virtues of NEXTSTEP, the company had proven to be economically unviable over the years. In early 1993, NeXT announced its plans to leave the hardware business but continue development of NEXTSTEP for the x86 platform.

1.2.2. OPENSTEP

NeXT partnered with Sun Microsystems to jointly release specifications for OpenStep, an open platform comprised of several APIs and frameworks that anybody could use to create their own implementation of an object-oriented operating systemrunning on any underlying core operating system. The OpenStep API was implemented on SunOS, HP-UX, and Windows NT. NeXT's own implementation, essentially an OpenStep-compliant version of NEXTSTEP, was released as OPENSTEP 4.0 (Figure 16) in July 1996, with 4.1 and 4.2 following shortly afterwards.

Figure 16. OPENSTEP


The OpenStep API and the OPENSTEP operating system did not seem to turn things around for NeXT, even though they caused some excitement in the business, enterprise, and government markets. NeXT started to shift focus to its WebObjects product, which was a multiplatform environment for rapidly building and deploying web-based applications.

As we saw earlier, NeXT was purchased by Apple in early 1997. Mac OS X would be largely based on NeXT's technology. WebObjects would keep up with advancements in its domain, as exemplified by its support for Web Services and Enterprise Java. Apple uses WebObjects for its own web sites, such as the Apple Developer Connection (ADC) site, the online Apple Store, and the .Mac offering.




Mac OS X Internals. A Systems Approach
Mac OS X Internals: A Systems Approach
ISBN: 0321278542
EAN: 2147483647
Year: 2006
Pages: 161
Authors: Amit Singh

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net