I just finished reading BeOS
or NeXT: Did Apple Make the Wrong Choice? While it is a well
written article, some points are explained poorly and some are just
plain wrong. I am writing this note to you in hope that you will
publish it and correct some of the points that Mr. Ploudre made.
Multitasking
Multitasking is the ability to run more than one program at the
exact same time. While this is impossible on a single processor
system, it is possible on a multiprocessor system. On a single
processor system, the CPU must quickly switch between programs to
give the illusion that it is running more than one program at the
same time.
This leads us to the two major types of multitasking: cooperative
and preemptive. Mac OS 8 and Windows 3.1/95/98/Me use
cooperative multitasking (Windows 3.1/95/98/Me use preemptive
multiprocessing to switch between DOS sessions, but we will ignore
that for now). Mac OS X and Windows NT/2000 use preemptive
multitasking. Preemptive multitasking is better in most
circumstances, but let's look at both.
Cooperative Multitasking
Imagine that your computer is a kitchen. Instead of programs, you
have three appliances: a blender, a clock, and a lamp. You are the
CPU, and you have a single power cord that you have to switch between
all of the appliances. Now this is part is tricky, each of the
appliances has a "locking" power plug. In other words, when you plug
the power into the appliance, the appliance "holds" onto the cord
until it releases the cord, then you can move the cord to another
appliance.
Everything is working well in your kitchen, and all three
appliances are working in perfect harmony. Then you decide to add a
stereo. You add the stereo, and there are problems. The clock starts
showing the wrong time, and the lamp is flickering. Remember when I
wrote about each appliance "'holding" on the cord until it lets go?
Well, that is the problem with cooperative multitasking. The CPU can
not move to the next process until the current process releases
control. While this is nice for an application that sometimes needs a
little extra CPU time, a poorly written application can hog the CPU
and basically starve all of the other applications.
Preemptive Multitasking
Preemptive multitasking works a bit differently. Imagine instead
of plugging the power cord directly into the appliance, each
appliance has an extension cord attached that runs to you. So instead
of plugging directly into each appliance, you plug into the
appliance's extension cord. So now you don't need to wait until the
appliance releases the cord, you can switch cords whenever you like.
That is preemptive multitasking. The CPU switches between the
applications when it wants and each application thinks that it has
full control of the CPU. With preemptive multitasking no one
application can hog the entire system.
Multithreading
If multitasking is running multiple applications at the same time,
multithreading is running multiple parts of an application at the
same time. An example would be a word processor. Remember when you
had to type the document and then run the spellchecker? And remember
how you had to wait for it to send your document to the printer? With
multithreading, the spellchecker can run at the same time as you
type. That way you see all of those little red lines immediately. And
you can start typing immediately after you tell the file to print.
When you tell the program to print the file, it spawns the process
(creates a new process and executes it), and the CPU can send that
process to the background so you can keep typing.
Journaling File System
A journaling file system is always a good thing. However, a
journaling file system will not prevent file system corruption, nor
does it add any extra security. A journaling system will corrupt as
easily as any other file system if a power outage occurs in the midst
of a disk write. The benefit is on the restart.
A journaling file system keeps a log of all the file system
writes. On a non-journaling file system, a disk repair program must
check the entire file system for errors. On today's large hard drives
this can take some time.
On a journaling file system, the disk repair program, which must
still be executed, can read the journal entries of all of the open
files. This way, the entire disk need not be scanned, only the
previously open files.
Disk fragmentation will always occur. Here is a visual
example of fragmentation. For simplicity sake, each file is
represented by a number and each character equals one meg.
You have a clean disk and you save a 10 meg file. Your disk looks
like this.
1111111111
You then save a 5 meg file.
111111111122222
You then save a 3 meg file.
111111111122222333
You then add 2 megs to the '2' file.
11111111112222233322
You add 1 meg to the '1' file.
111111111122222333221
You delete the '2' file. See the 'open' spaces between the
files?
1111111111 333 1
You save a 4 meg file.
11111111114444 333 1
You save a 6 meg file.
111111111144445333551555
You add 2 more megs to the '1' file.
1111111111444453335155511
As you can see, the file system has become fragmented. Fragmented
just means that all of the files are not contiguous. You notice how
the '5' file is located in three different parts of the disk. Rather
than the hard drive reading the file at one time, it has to read
parts of it from three different areas. This takes time. And when a
file is scattered in thousands of places across a hard drive, you can
understand how this can really slow down a system. BTW, if we ran a
disk defragmenter on the above hard drive the result might look like
this.
11111111111114444333555555
BeOS
I can speak well of Be. I was one that looked anxiously for the Be
beta that was distributed with Mac Tech magazine. I was an original
beta1 and beta2 tester. I bought the first release when it was
available on the Intel platform. I was amazed at the spinning teapot
demo. And that was the problem.
That is all the OS could do. It could spin a teapot and play
several movies without dropping frames. A nice technological demo,
but hardly a career choice. In other words, there were (and are)
no apps for the wonderful little OS. Sure, Be designed it on a
clean sheet of paper - the same paper they could use to list every
application ever written for Be and still have room to doodle.
There is an old joke that goes like this. How was God able to
create the world in 6 days? No backwards compatibility
needed.
When Apple decided to go with NeXT over Be, Be couldn't even
print. Be, while blazingly fast, was blazing fast for a reason.
Nothing was running on it. Apple chose to go with the OS that was
stable, proven, and gorgeous. Apple also got NeXT's unbelievably fast
development environment, the leading application server software
WebObjects, and the Mac's father and Apple's savior, Steve Jobs.
(Personal note: I still remember leaving work late for Christmas
vacation ecstatic after reading that Steve Jobs was back at
Apple.)
Speaking of NeXT's fast development environment, Steve Jobs used
to demo it in a unique way. When Steve was giving a demo or seminar
of NeXT, he would have a programmer onstage with him. The programmer
would start writing an application at the start of the seminar. Steve
would close the seminar by demonstrating the app that had just been
written!
As for Apple choosing NeXT or Be, I think the choice was quite
clear. So the next time you think that Mac OS X or OS 9 is
holding your system back, you should thank Apple. Thank Apple that
there are device drivers for hardware, extensions, and thousands of
applications that "slow down" that wonderful computer with its
gorgeous and elegant GUI.
Share your perspective on the Mac by emailing with "My Turn" as your subject.
Recent My Turn articles
Using Low End Macs for Internet Radio, 08.18.
When the local public radio station moved classical music to HD radio, it was time to find another way to listen. An old iMac with iTunes solved the problem.
'That's Not a Computer', 07.30.
Salvaging a broken PowerBook by turning it into a desktop computer.
My 4 favorite PowerBooks, 05.28.
The PowerBook 150 has a big screen for a vintage PowerBook, the 165c has color, the 100 is diminutive, and Lombard has USB and a great keyboard.
Mac of the Day: Mac LC III, Feb. 1993 - The first LC without compromise: 25 MHz 68030 CPU, 32-bit memory, up to 36 MB of RAM.
List of the Day: G4 'Books an email list for G4 iBooks and PowerBooks.
September 8 in LEM history: 99: Big sound from the little iMac - Ethernet alternative to USB drives - 00: Building a back-to-school bundle - 03: 17" 1.25 GHz iMac G4 - My Mac Plus revisited - 06: Inside your notebook's battery - Andy Hertzfeld, software wizard - OS X is a pleasure to use - MacBook random shutdown - Core2 7% faster
Listen to Just the Music with the V-Moda Vibe Earbuds, Tommy Thomas, Welcome to Macintosh, 09.05.
Well built, the noise canceling earbuds will let you hear all the nuances of your music without letting through background noise.
Best iPod touch Deals, Low End Mac Deals, 09.05.
Refurb 8 GB, $199; new, $284; refurb 16 GB, $299; new, $370; refurb 32 GB, $399; new, $453.
Best 15" MacBook Pro Deals, Low End Mac Deals, 09.05.
Used 1.83 GHz Core Duo, $999; 2.16, $1,125; new, 2.2, $1,450 after rebate; refurb 2.4, $1,699; 2.5, $1,999; 2.6 Santa Rosa, $1,849; rebates on new.
Best iMac G4 Deals, Low End Mac Deals, 09.05.
Used 15" 700 MHz CD-RW, $279; 800 Combo, $300; 1 GHz $390; 17" 800 MHz SD, $439; 1.25 GHz, $449; 20", $569.
Best Mac mini Deals, Low End Mac Deals, 09.04.
Used 1.25 GHz G4 SD, $549; 1.42 Combo, $409; new 1.83 Core2 Combo, $569 after rebate; 2.0 SD, $769 after rebate.
Tomorrow's Solid State Drives and Notebooks, Dan Knight, Mac Musings, 09.04.
Flash drives are great but have some shortcomings. Some thoughts on building better SSDs and notebooks to use them.
Best 12" PowerBook G4 Deals, Low End Mac Deals, 09.04.
Used 867 MHz Combo, no APX, $490; 1 GHz, $550; SuperDrive, $625; 1.5 GHz w/o APX, $660; w/APX, $675.
Best 17" PowerBook G4 Deals, Low End Mac Deals, 09.04.
Used 1 GHz, $779; 1.33 GHz, $799; 1.5 GHz, $859; 1.67 GHz, $910.
11 Mac Browsers Compared, Simon Royal, Mac Spectrum, 09.03.
The latest versions of Internet Explorer, Opera, Safari, Shiira, iCab, Radon, Firefox, Netscape Navigator, SeaMonkey, Flock, and Camino tested in Leopard.
Best eMac Deals, Low End Mac Deals, 09.03.
Used 700 MHz Combo, $120; 1.25 GHz SuperDrive, $150; 1.42 GHz, $349.
Best Mac OS X 10.5 'Leopard' Deals, Low End Mac Deals, 09.03.
Mac OS X 10.5, single user, $99; 5 users, $140; 10.5 Server, 10 users, $395; unlimited, $850.
Best MacBook Air Deals, Low End Mac Deals, 09.03.
Refurb 1.6 HD, $1,499; new, $1,690 after rebate; refurb 1.8, $1,699; new, $1,919 a/r; refurb 1.6 SSD, $2,099; new, $2,294 a/r; refurb 1.8, $2,299; new, $2,400 a/r.
Psystar Strikes Back, Countersues Apple, Frank Fox, Stop the Noiz, 09.03.
Psystar is trying to paint Apple as a monopoly and force it to license the Mac OS.
All of our advertising is handled by BackBeat Media. For
price quotes and advertising information, please contact
at BackBeat Media
(646-546-5194). This number is for advertising only.
Problems viewing this page with Internet Explorer
5.5 or 6? It works fine in other browsers, including IE 7. We
recommend Firefox
for those using Windows, as it is standards based and more
secure than IE 6 (and earlier). More LEM visitors use Firefox
than any other browser.