Tuesday, November 28, 2006

Mac OS X vs Windows

I've worked on Windows computers much longer than I've worked on Macs. As a software engineer, I've realized a couple key issues with Windows.

Windows Registry
This is a single point failure on Windows. The registry database is used to store the settings and options for Windows' users, applications, preferences, and hardware. When Windows boots up, it reads this database of settings. If the registry gets corrupted, it can render Windows unbootable. When applications install and uninstall themselves they update the registry. When a program fails to uninstall correctly, it can leave cruft in the registry which can lead to performance and stability problems. This is why Windows computers really do slow down, over time, as you install and uninstall more and more applications.

How does Mac OS X get by without a registry? Simple, each application has preferences which are stored in preferences folders. For user specific preferences, the folder is stored under the user's home folder. For system wide preferences, the folder is stored in a globally accessible location. The preferences data is a human readable file (called a plist which is short for property list), which can be edited by hand - but manually editing a plist is rare. The plist file is only read when needed - unlike the Windows Registry, which must fully load to complete the boot up process. If the plist file becomes corrupted it can usually just be deleted and the respective application will create a new one the next time it loads.

On the desktop computer there are basically two operating systems: Windows and Unix.

Windows 98, ME, NT, 2000, etc, are different flavors of Windows with roots that go back to MS-DOS circa 1980. Free BSD, Linux, Open BSD, AT&T, Solaris, and Mac OS X all have their roots in unics [sic] circa 1969.

In the world of high-tech, new usually means better, but that's not the case when it comes to security. MS-DOS got its start on PCs in the early 1980s when there was no local area network and there was no need to log into a PC. Unix, on the other hand, ran on mainframe computers which were accessible by multiple users at once. So, from the beginning, unix had the concept of users, permissions, and security.

Retrofitting security into Windows has been its biggest Achilles' heel. Of course, with more than 90% of the desktop market share it's also a big target.

I joke that Windows is an "open system" in that all of its ports and services were left wide open for attacks.

1 comment:

Anonymous said...

I truly believe that we have reached the point where technology has become one with our society, and I can say with 99% certainty that we have passed the point of no return in our relationship with technology.

I don't mean this in a bad way, of course! Ethical concerns aside... I just hope that as memory becomes less expensive, the possibility of downloading our memories onto a digital medium becomes a true reality. It's a fantasy that I dream about every once in a while.

(Posted on Nintendo DS running [url=http://kwstar88.zoomshare.com/2.shtml]R4 SDHC[/url] DS TF3)