Community Perspective Expectations for MacOS X

By Investosaurous
September 18, 2000

The following perspective was written by a member of the Fool community and regular contributor to our Apple Computer discussion board. The opinions of the author are not necessarily representative of the opinions of The Motley Fool or its editorial staff.

I am not a long-time Mac user, I just started using a Mac about 2 months ago. I am very impressed with what I have seen from this company so far, and from what I see about MacOS X, it looks like they are definitely on the right track. I have worked at an OS [operating system] company for the past 15 years and have noticed that there are many common misconceptions among users about just what an OS can and cannot do. For example:

The common myths about accepted OS limitations:

1. If you run too many applications, you can "overload" the OS and it will crash.
2. Be careful about which program you run, you can crash the OS if you run the wrong one.
3. If you don't have enough memory, your applications won't run, or will run slowly.
4. An OS has to be big to provide all the most useful features.

To answer some of these in reference to OS X as well as Windows and MacOS 9, let's look at the particulars:

1. Under Windows and MacOS 9, there is absolutely no memory protection (or it is very minimal) between applications and certainly not between applications and the OS. In particular, the most elaborate OS protection mechanism appears to be the ability to detect that "something" happened that shouldn't and that you should reboot because it's probably real bad. In the OS X (really UNIX) world, this never happens. All applications are shielded from each other through an ingenious hardware-based mechanism called an MMU (Memory Management Unit). It is actually impossible for one application to write into another's address space in an OS that uses an MMU to provide virtual address space protection. Because OS X is based on BSD and Mach, this mechanism will be in place, providing a highly reliable computing environment. UNIX systems rarely crash and it will be nice to bring the desktop to parity with this.

If MacOS X is truly based on a UNIX processing model, then it will be the finest desktop OS out there.
2. This follows from the previous discussion about the MMU, but with an additional corollary - Applications can only access the OS through a prescribed set of interfaces. Under Windows, the DLL (Dynamic Link Library) concept has been stretched to a ridiculous level. The main problem here is that since you have created so many inroads to the kernel's address space and you have so many untested pathways resulting from various combinations of DLLs, you have a massive system just waiting to fail. It appears that MacOS 9 does not have this problem in as severe a way, but it does exist to a more limited degree in the extension mechanism. In a UNIX model, there is just no way for any application to get to the kernel's address space in an unexpected way by using the standard libraries. Bugs in libraries can cause problems, but the overall level of bugs in a UNIX system that can cause a showstopper are far less than those in a MacOS or Windows environment, simply because the vast majority of failure modes are impossible to ascertain due to the complexity of the system.

3. Having over 192 megs of RAM in this Mac with VM turned off, everything works just fine, but just try running a Windows system with virtual memory turned off with an equivalent amount of RAM and you will see many applications fail. It appears to me that Windows relies on virtual memory more than MacOS, but both have a problem that they don't appear to make use of VM properly. In a UNIX model, the use of virtual memory is almost seamless, you don't ever worry about memory if you have more than 64 megs because it is very efficiently utilized. This is mainly because the overall mechanisms for virtual memory in a UNIX environment have been tested over twice as long a period than those in Windows and MacOS. There has been a lot of refinement that makes using virtual memory a very small issue in running large apps.

4. Although large OSs with loads of features are "in," it doesn't have to be that way. Largeness implies more code paths and that implies a greater capacity for bugs. In a UNIX model, the kernel itself is kept small and well tested. In Windows (and presumably MacOS) the gray area between OS and application is much more blurred. I was shocked to see just how big Netscape and IE are under Windows. Why do they have 30 megs of libraries when the operating systems they run under presumably have all the features they need? When it comes right down to it, a browser is just a glorified terminal with some graphics thrown in -- does 30 megs sound right to you to do that? It doesn't to me.

I realize I may be incorrect about some of my MacOS assumptions, but I am absolutely certain about my Windows and UNIX ones. If MacOS X is truly based on a UNIX processing model, then it will be the finest desktop OS out there. If it takes off with third party support, than I would buy a lot of Apple stock right now, because they will dominate the desktop. There are a lot of iMacs going out now (you can buy the things at Price Club for pete's sake!). Combine this ubiquity of hardware with a fantastic OS with world-class third party support and you have a real winner!

I will post more when I have had a chance to preview MacOS X beta thoroughly.

Until then...think different!

-Investosaurous

Do you have an opinion you'd like to share about the MacOS X? Drop into our Apple discussion board and share your thoughts.