MacOS X a Radical Departure from Its Predecessors
Spencer Smith
spencera@oregon.uoregon.edu
OS X makes a complete break from the previous Mac operating system design.
Rather than a monumental, hardware-specific code base, it uses a Unix-style
kernel based on the Mach 3.0 kernel from Carnegie-Mellon University, as well
as code from FreeBSD 3.2 (based on UC Berkeley's BSD 4.4 Lite.) The kernel
sits on top of the hardware, fielding calls that the operating system and applications
make to the hardware services (e.g., hard drive, CD-ROM, speakers, USB devices,
and so forth).
With this hardware abstraction in place, the reliance on a specific piece of
machinery is lessened, allowing the MacOS to run on a variety of different machine
platforms. I have even seen a version of MacOS X running on an Intel Pentium
III computer; while the operating system had been heavily modified, it was hopeful
evidence that MacOS can eventually migrate to other hardware platforms.
Unix-Style Features
The essentially Unix nature of MacOS X appears in every aspect of its operation.
It's a multiuser operating system, although it initially installs with
this feature turned off. It offers a host of services (including Telnet, FTP,
web services) that we associate with Unix timesharing hosts. The essential services
of the computer, those operations that run in the background, are Unix-based
services. You can open a terminal window, running the tcsh shell, and issue
standard Unix command line directives. Emacs is included in the MacOS X package,
although it's limited to the terminal window within which it was invoked.
The BSD-style Unix architecture of the operating system brings a host of benefits,
most notably a truly protected memory space for running applications. This means
that when one application, such as a word processor, stops working, your other
running programs and the rest of the operating system will be unaffected.
In addition, MacOS X offers true preemptive multitasking, a threaded execution
environment, enhanced virtual memory handling, and symmetric multiprocessing
(for those of you lucky enough to have more than one processor in your computer.)
All of these benefits add up to a more stable, flexible, and nimble operating
system.
To an experienced user, MacOS X's Unix operations may appear somewhat truncated.
There is a terminal program for command-line operations, but that terminal is
only accessible through the graphical interface. Once the terminal is open,
many of the standard Unix commands are available (e.g., vi, top, emacs, ls),
but the lack of an X Windows environment can be startling. More and more Unix
applications and utilities are being ported to MacOS X, but there is still much
work to be done.
Appearance, Menu Changes
The new graphical interface is the showcase of the new MacOS. Called "Aqua"the
interface is slick, colorful, and full of surprises. While there is still an
Apple menu, the apple is Aqua blue. (This predominant color scheme is configurable,
currently a choice between blue and graphite. In future, more colors should
become available, as well as more intricate, involved interface themes.)
There are some striking differences between the MacOS X Apple Menu and that of previous Mac operating systems. For example, the Chooser no longer exists, and the printer and network browsing functions are handled through control panel utilities and menu items. The Aqua Apple Menu is reserved for OS-specific commands, such as Force
Quit, Restart, Shut Down, and Logout. You can't add frequently-used
applications to the Apple menu, nor can you configure the look and feel of the
menu.
Instead of modifying the Apple Menu to keep your applications handy, MacOS
X introduces a new interface element: the Dock. This utility stays at the bottom
of your screen, with icons showing your currently running programs and open
files. To add an application, just drag its icon onto the Dock. Running programs
are denoted by a small triangle below the Dock icon. While a program is loading,
the application's icon bounces happily in the Dock.
Running Older Applications
Your older applications will still run under MacOS X. When you open an older
application, MacOS 9.1 loads as a background processor for handling it. The
first legacy application may take some time to load because the whole MacOS
9.1 must load first. Subsequent legacy applications load much more quickly,
about as fast as they ever did under MacOS 9.x.
When the Apple menu icon reverts to the familiar rainbow fruit with a bite
taken out, that means a legacy application is running. This old-style Apple
menu has all the features with which you're familiar, including Recent Applications,
Recent Documents, Control Panels, and Chooser. However, the Chooser will not
work, and the control panels will only modify the self-contained MacOS that
you're using to run your legacy applicationsÑ not the operation of the
rest of the machine. Within those restrictions, though, the 9.1 operating system
appears to run on top of OS X very well.
Networking Features
The networking for OS X is full-featured, with all the services you'd expect
from a Macintosh and many you'd expect from Unix. AppleTalk is supported, both
for connecting to remote machines and for serving files from your desktop.
The AppleTalk connectivity is tunneled through TCP/IP, increasing the speed
of file transfers and making the network more flexible for upcoming technologies.
Ipv6 (the emerging, next-generation Internet Protocol standard) will be supported
when the standard stabilizes. The Apache Webserver is included in the distribution,
as is an FTP server, WebDAV, NFS, and other emerging technologies.
Pitfalls of using portscan. The networking utilities in MacOS X have
a built-in caveat. In the Utilities directory, there is a utility labeled Network
Utility. This program can give you a lot of information about the network, with
graphical interfaces to ping, nslookup, traceroute, netstat, and other useful
items. However, there is also a graphical interface to portscan built in to
the utility. Portscan can scan remote machines for their open ports and services.
Using portscan on
campus to check for the open ports on remote machines is considered unauthorized
use. Do not port scan any computer
on the network without the express permission of the owner of that computer.
You may want to use portscan to scan your own machine, to increase the security
of your computer and check for loopholes. For more information on how portscan
can affect your activities here at the UO, see the Winter 2001 Computing
News article at http://cc.uoregon.edu/cnews/winter2001/noportscan.html
Summary
Overall, the performance of the new OS seems very good. Older applications run
well after the initial wait for the old OS to load. The kernel seems relatively
stable, even in the Public Beta release we have been running to test the OS.
The interface is slick and fairly well thought out, although it lacks some
of the intuitive feel of the older MacOS. Hard-core Mac enthusiasts may be put
off by the lack of intuitive usage, while Unix aficionados will undoubtedly
be irritated by the lack of an X Windows environment and many standard utilities.
In short, while it won't satisfy everyone, MacOS X seems to be a solid start
for a next-generation operating system.
Note: An X11R6 X Windows implementation for MacOS X is available. The
Xfree86 project's version 4.0.2 release supports Darwin, the Mach-kernel base
of MacOS X (see http://www.xfree86.org/#darwin).
However, the X Windows and MacOS X environments do not coexist.
Hardware requirements. For Macs prior to the G3, you will need to stick
with the current 9.x System Software. MacOS X requires a beige G3 or above,
and processor card upgrades are not supported. Apple recommends 128Mb of RAM
to run the operating system. As usual, this should be considered a minimum;
256Mb or above will allow your computer to work much better. 1.5Gb of hard drive
space is necessary for the install. You should also be aware that support for
some hardware and software is somewhat lacking; although we were able to run
Adaptec Toast 4.1 in the 9.1 environment, our Plextor CD-R wasn't recognized.
Other third- party utilities and programs may also suffer from some incompatibility.
For more information on MacOS X, see http://www.apple.com/macosx/