Wednesday, February 6, 2008

nextstep of NEXTSTEP

Steve Jobs announced the NeXT cube on Oct 1988. The operating system of the computer was NEXTSTEP. The system's kernel is a port of Carnegie Mellon University Mach 2.0 with a 4.3BSD environment and its window server was based on Display PostScript. The graphical window system had a dock application stayed on top to hold frequently used applications. Other NEXTSTEP features included:
  • The ability to "hide" applications
  • 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 such as dictionary
  • 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 drive framework called the Driver Kit
The native programming language of NEXTSTEP is Objective-C. Objective-C is an object-oriented, compiled programming language invented by Brad Cox and Tom Love in the early 80s. It is a superset of C, with dynamic binding and a message syntax inspired by Smalltalk. Even though, it does not have many features of C and C++, such as multiple inheritance and operator overloading. In 1995, Apple bought all the intellectual property related to Objective-C. Now, Apple's Objective-C compiler used in OS X is modified version of the GNU compiler.

In 1996, NeXT released the OpenStep-compliant version of NEXTSTEP 4.0 (based on Mach 3.0). OpenStep specification was an object-oriented operating system project introduced by NeXT and Sun Microsystems. It is an open platform, comprised several APIs and frameworks that anybody could use to create their own implementation of an object-oriented operating system.

In the following year, Apple bought NeXT and based its next-generation operating system, namely Rhapsody, on NeXT's OPENSTEP. In March 1999, Apple announced the Mac OS X Server 1.0, which was an improved version of Rhapsody. It was bundled with WebObjects, the QuickTime streaming server, a collection of developer tools, the Apache web server, and the facilities for booting or administering over the network. Later, in Sept 2000, Apple released a beta version of Mac OS X. At the same time, Apple also announced the Darwin - a fork of Rhapsody's developer release.

The key features of the Mac OS X public beta are:
  • Darwin core with its xnu kernel provided "true" memory protection, preemptive multitasking, and symmetric multiprocessing
  • The PDF-based Quartz 2D drawing engine
  • OpenGL support
  • The Aqua interface and the Dock
  • Apple's new mail client, with support for IMAP and POP
  • A new version of the QuickTime player
  • The Musical Player application for playing MP3 and audio CDs
  • A new version of the Sherlock Internet-searching tool
Then, in 2002, Apple and Internet Systems Consortium, Inc. (ISC) jointly founded the OpenDarwin project. GNU-Darwin is an open source Darwin-based operating system.

Date - Codename - Version
Mar 2001 - Cheetah - 10.0
Sept 2001 - Puma - 10.1
Aug 2002 - Jaguar - 10.2
Oct 2003 - Panther - 10.3
Apr 2005 - Tiger - 10.4 (first shipped x86-Mac used 10.4.4)
Jul 2007 - Leopard - 10.5