Jump to content

NeXTSTEP

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Coster~enwiki (talk | contribs) at 09:23, 24 June 2020. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

NeXTSTEP
DeveloperNeXT
Written inC, Objective-C
OS familyUnix
Working stateHistoric, as original code base for macOS, iOS, iPadOS, watchOS, and tvOS
Source modelClosed source with some open-source components
Initial releaseSeptember 18, 1989; 35 years ago (1989-09-18)
Latest release3.3 / 1995 (1995)
Latest preview4.2 Pre-release 2 / September 1997
Marketing targetEnterprise, academia
PlatformsMotorola 68000 series, Intel x86, SPARC, PA-RISC
Kernel typeHybrid
Default
user interface
Graphical
LicenseProprietary EULA
Succeeded bymacOS, iOS, iPadOS, watchOS, tvOS

NeXTSTEP is a discontinued Object-oriented, multitasking operating system based on the Mach kernel and the UNIX-derived BSD. It was developed by NeXT Computer in the late 1980s and early 1990s and was initially used for its range of proprietary workstation computers such as the NeXTcube. It was later ported to several other computer architectures.

Although relatively unsuccessful at the time, it attracted interest from computer scientists and researchers. It was used as the original platform for the development of the Electronic AppWrapper,[1] the first commercial electronic software distribution catalog to collectively manage encryption and provide digital rights for application software and digital media, a forerunner of the modern "app store" concept. It was also the platform on which Tim Berners-Lee created the first web browser, and on which id Software developed the video games Doom and Quake.[2][3]

After the purchase of NeXT by Apple, it became the source of the popular operating systems macOS, iOS, iPadOS, watchOS, and tvOS. Many bundled macOS applications, such as TextEdit, Mail, and Chess, are descendants of NeXTSTEP applications.

Overview

NeXTSTEP (also stylized as NeXTstep, NeXTStep, and NEXTSTEP[4]) is a combination of several parts:

NeXTSTEP is notable for having been a preeminent implementation of the latter three items. The toolkits offer considerable power, and are the canonical development system for all of the software on the machine.

It introduced the idea of the Dock (carried through OpenStep and into today's macOS) and the Shelf. NeXTSTEP also originated or innovated a large number of other GUI concepts which became common in other operating systems: 3D "chiseled" widgets, large full-color icons, system-wide drag and drop of a wide range of objects beyond file icons, system-wide piped services, real-time scrolling and window dragging, properties dialog boxes called "inspectors", and window modification notices (such as the saved status of a file). The system is among the first general-purpose user interfaces to handle publishing color standards, transparency, sophisticated sound and music processing (through a Motorola 56000 DSP), advanced graphics primitives, internationalization, and modern typography, in a consistent manner across all applications.

Additional kits were added to the product line to make the system more attractive. These include Portable Distributed Objects (PDO), which allow easy remote invocation, and Enterprise Objects Framework, a powerful object-relational database system. The kits made the system particularly interesting to custom application programmers, and NeXTSTEP had a long history in the financial programming community.[citation needed]

History

A preview release of NeXTSTEP (version 0.8) was shown with the launch of the NeXT Computer on October 12, 1988. The first full release, NeXTSTEP 1.0, shipped on September 18, 1989.[5] The last version, 3.3, was released in early 1995, by which time it ran on not only the Motorola 68000 family processors used in NeXT computers, but also on Intel x86, Sun SPARC, and HP PA-RISC-based systems.

NeXTSTEP was later modified to separate the underlying operating system from the higher-level object libraries. The result was the OpenStep API, which ran on multiple underlying operating systems, including NeXT's own OPENSTEP, Windows NT[6] and Solaris. NeXTSTEP's legacy stands today in the form of its direct descendants, Apple's macOS, iOS, watchOS, and tvOS operating systems.

Unix

From day one, the operating system of NeXTSTEP was built upon Mach/BSD.

  • It was initially built on 4.3BSD-Tahoe.
  • It changed to 4.3BSD-Reno after the release of NeXTSTEP 3.0.
  • It changed to 4.4BSD during the development of Rhapsody.

Legacy

The first web browser, WorldWideWeb, and the first-ever app store[7] were all invented on the NeXTSTEP platform.

1990 CERN: A Joint proposal for a hypertext system is presented to the management. Mike Sendall buys a NeXT cube for evaluation, and gives it to Tim Berners-Lee. Tim's prototype implementation on NeXTStep is made in the space of a few months, thanks to the qualities of the NeXTStep software development system. This prototype offers WYSIWYG browsing/authoring! Current Web browsers used in "surfing the Internet" are mere passive windows, depriving the user of the possibility to contribute. During some sessions in the CERN cafeteria, Tim and I try to find a catching name for the system. I was determined that the name should not yet again be taken from Greek mythology. Tim proposes "World-Wide Web". I like this very much, except that it is difficult to pronounce in French...

— Robert Cailliau, 2 November 1995[8]

Some features and keyboard shortcuts now commonly found in web browsers can be traced back to NeXTSTEP conventions. The basic layout options of HTML 1.0 and 2.0 are attributable to those features available in NeXT's Text class.[9]

Features seen first on NeXTSTEP:

In the 1990s, the pioneering PC games Doom (with its WAD level editor), Doom II, and Quake (with its respective level editor) were developed by id Software on NeXT machines. Other games based on the Doom engine such as Heretic and its sequel Hexen by Raven Software as well as Strife by Rogue Entertainment were also developed on NeXT hardware using id's tools.[10]

Altsys made a NeXTSTEP application called Virtuoso, version 2 of which was ported to Mac OS and Windows to become Macromedia FreeHand version 4. The modern "Notebook" interface for Mathematica, and the advanced spreadsheet Lotus Improv, were developed using NeXTSTEP. The software that controlled MCI's Friends and Family calling plan program was developed using NeXTSTEP.[11][12]

About the time of the release of NeXTSTEP 3.2, NeXT partnered with Sun Microsystems to develop OpenStep. It is the product of an effort to separate the underlying operating system from the higher-level object libraries to create a cross-platform object-oriented API standard derived from NeXTSTEP. The OpenStep API targets multiple underlying operating systems, including NeXT's own OPENSTEP. Implementations of that standard were released for Sun's Solaris, Windows NT, and NeXT's version of the Mach kernel. NeXT's implementation is called "OPENSTEP for Mach" and its first release (4.0) superseded NeXTSTEP 3.3 on NeXT, Sun, and Intel IA-32 systems.

Following an announcement on December 20, 1996,[13] Apple Computer acquired NeXT on February 4, 1997, for $429 million. Based upon the "OPENSTEP for Mach" operating system, and developing the OPENSTEP API to become Cocoa, Apple created the basis of Mac OS X,[14] and eventually, in turn, of iOS, watchOS, and tvOS.

A free software implementation of the OpenStep standard, GNUstep, also exists.[15]

Release history

Version Date Distribution medium Notes
0.8 October 12, 1988 MO disc NeXTStep Digital Webster, Complete Works of William Shakespeare, netboot, NFS
0.8a 1988 MO disc
0.9 1988 MO disc NeXT 0.9/1.0 Release Description
1.0 1989 MO disc
1.0a 1989 MO disc Photo of NeXTSTEP 1.0a MO disc
2.0 September 18, 1990 MO disc, CD-ROM Support for the NeXTstation, NeXTcube (aka m68040 cube). Support for floppy disk, CD-ROM, Fax modems, and color graphics. Workspace Manager now has the Shelf, copies performed in background, black hole is replaced by recycler icon. Terminal.app. Dynamic loading of drivers.[16][17]
2.1 March 25, 1991 MO disc, CD-ROM Support for the NeXTdimension board. TeX, Internationalization improvements. New machines bought with 2.1 included Lotus Improv.[16]
2.1a MO disc, CD-ROM
2.2 CD-ROM Support for the NeXTstation Turbo
3.0 September 8, 1992[18] CD-ROM Project Builder, 3D support with Interactive RenderMan, Pantone colors, PostScript Level 2, Object Linking and Embedding, Distributed Objects, Database Kit, Phone Kit, Indexing Kit, precompiled headers, HFS, AppleTalk, and Novell NetWare.
3.1 May 25, 1993 CD-ROM First release for the i386 architecture, introducing fat binaries.
3.2 October 1993 CD-ROM
3.3 February 1995 CD-ROM Support for the PA-RISC and SPARC architectures added, introducing Quad-fat Binaries. Last and most popular version released under the name NEXTSTEP. Referred to as NEXTSTEP/m68k, NEXTSTEP/Intel, NEXTSTEP/SPARC. NEXTSTEP/PA-RISC

Delivered on 2 CDs: NeXTSTEP CISC and NeXTSTEP RISC. The Developer CD includes libraries for all architectures, so that programs can be cross-compiled on any architecture for all architectures.

4.0 beta 1996 CD-ROM Very different user interface.[19][20] Notable as being a precursor of many ideas later introduced in the macOS Dock.

Allegedly dropped due to complaints of having to re-teach users but not for technical reasons (the new UI worked well in the beta).

4.0 July 1996 CD-ROM Support for the PA-RISC architecture dropped. Support for m68k, i486, and SPARC architectures. Initial Release of OpenStep for Windows.
4.1 January 1997 CD-ROM Support for m68k, i486, and SPARC architectures, and OpenStep for Windows, under OPENSTEP Enterprise (NT only).
4.2 Pre-release 2 September 1997 CD-ROM Pre-release 2 circulated to limited number of developers before OpenStep and Apple acquisition.
Apple Rhapsody August 31, 1997 - October 27, 2000 CD-ROM While released after the Apple merger, these versions are still very close to NeXTSTEP/OPENSTEP. Arguably closer to NeXTSTEP than to Mac OS X. For example, they can still be used as remote display via NXHost.[21]

Versions up to 4.1 are general releases. OPENSTEP 4.2 pre-release 2 is a bug-fix release published by Apple and supported for five years after its September 1997 release.

See also

References

  1. ^ Electronic AppWrapper. Kevra.org. Retrieved on 2013-11-22.
  2. ^ "Apple-NeXT Merger Birthday!". rome.ro. December 20, 2006. Retrieved 2019-10-05.
  3. ^ "GameTales: Cray 6400". rome.ro. January 31, 2010. Retrieved 2019-10-05.
  4. ^ Ford, Kevin (2008). "What's with all the NeXT names?". www.kevra.org. Retrieved 2009-09-07.
  5. ^ Singh, Amit (December 2003). "What is Mac OS X?". osxbook.com. Retrieved 18 April 2011.
  6. ^ with some hacking it even ran on Windows 95
  7. ^ "Jesse Tayler talks App Store and NeXTSTEP with AppStorey". AppStorey. April 11, 2016. Retrieved 2019-01-09.
  8. ^ "Roads and Crossroads of Internet History Chapter 4: Birth of the Web".
  9. ^ "Tim Berners-Lee: WorldWideWeb, the first Web client".
  10. ^ "Apple-NeXT Merger Birthday!". Archived from the original on 2007-03-05.
  11. ^ "Why OS X is on the iPhone, but not the PC". Roughly Drafted. January 24, 2007. MCI used NeXT software to power its revolutionary Friends and Family networking referral campaign, which other rivals couldn't match for years.
  12. ^ "Water Utility Consultants | Water Utility Consulting by StepWise". Stepwise.com. 2012-09-12. Archived from the original on 2006-04-07. Retrieved 2013-07-17.
  13. ^ "Apple Computer, Inc. Agrees to Acquire NeXT Software Inc" (Press release). Apple Computer, Inc. December 20, 1996. Archived from the original on March 1, 1997. Retrieved April 12, 2013.
  14. ^ Linzmayer, Owen W. (1999). Apple Confidential: The Real Story of Apple Computer, Inc.
  15. ^ "GNUStep: Introduction". GNUStep.org. Retrieved May 2, 2013.
  16. ^ a b info taken from
  17. ^ NeXTSTEP 2.0 Release Notes (User)
  18. ^ NeXT Ships NeXTSTEP Release 3.0, Third Generation of the Complete Object-Oriented Environment
  19. ^ NextStep 4 Beta demo video, part 1
  20. ^ NextStep 4 Beta demo video, part 2
  21. ^ Andrew's Simple Guide to running NeXTSTEP/OpenStep Apps on Mac OS X Server

This article is based on material taken from the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.