PDA

View Full Version : How Does an Apple Macintosh Work?


KBFinFan
Oct 12, 2003, 10:06 PM
Hey, as a new member to the Apple community I really have just begun to wonder how exactly how an Apple computer varies from a PC?

What is different in the PowerPC architecture?

The RISC format?

How does it work without a registry?

And so on.....

If someone could link me to a informative resource or a recommended book I would appreciate it.

Thanks

macstudent
Oct 12, 2003, 10:27 PM
Apple, it just works:D

Sun Baked
Oct 12, 2003, 10:34 PM
The Mac OS is nothing like the old ROM toolbox machine of old.

It's now a pretty face on top of Unix.

Or you can consider it a update of the NeXT OS with new GUI, integrated Mac on Unix engine (ie, Classic), and integration of Apple's technologies (Quicktime, AppleTalk, etc.)

http://developer.apple.com

http://developer.apple.com/macosx/architecture/index.html

KBFinFan
Oct 12, 2003, 10:35 PM
I haven't wondered too much because it has 'just worked'..

Now I'm just getting curious...

NeoMayhem
Oct 12, 2003, 10:59 PM
ROFL, the registry is one of the stupidest things to come out of MS.

OS X uses .plist files to store settings for programs, each program has its own file, so you never need to worry about one program corrupting everything, or things getting screwed up.

Horrortaxi
Oct 12, 2003, 11:12 PM
Originally posted by KBFinFan
How does it work without a registry?

I can't resist this one. Without the registry it works about a thousand times better!

mac15
Oct 12, 2003, 11:34 PM
not to be rude or anything but I seriously can't stand these threads. no offence to you KBfinfan . Its like people think macs are aliens and run off candy filled buckets or something. There computers, simple eh?

oldschool
Oct 12, 2003, 11:55 PM
Originally posted by mac15
not to be rude or anything but I seriously can't stand these threads. no offence to you KBfinfan . Its like people think macs are aliens and run off candy filled buckets or something. There computers, simple eh?

Why can't you stand this thread? The guy is not trashing macs, and he's not looking at them as if they were gossamer. He's simply asking how they work...and he wants to know if there is a book.

oh...and its "they're computers" unless that was some sort of weird slang.

beefcake
Oct 13, 2003, 12:01 AM
Not to be hokey or anything, but "It just works" is the best response. I was used to PC's when I switched to Mac, and I still can't figure out why things "just work." For example, I wanted to change some file names in iTunes. I opened up the folder (I have since found better ways to achieve the end result), changed the name, and that was it. I didn't need to re-add the file to my playlist or anything, it just worked. There are 1,001 other things that OS X just does, no questions asked. I suggest you play around with OS X and experience it firsthand.

Doctor Q
Oct 13, 2003, 12:20 AM
I'm not convinced that plist files and/or NetInfo-type services have some inherent design advantage over the Windows Registry, or even over old-style Windows INI files, for that matter. What I see is that, in practice, the implementation of the Windows Registry results in corruption problems more often than what I see in plist files, but I'm talking about the design principles involved, not the implementations. Most application programs have details, such as records of their installation, licenses, preferences, etc., to be stored somewhere. Some are user specific; some are system-wide. Some settings apply across applications. And the operating system itself has user-preference settings, system-wide settings, and information about applications.

Should it be stored in a centralized system-managed database? Should it be stored in each application's private area? Should it be stored in a central directory as a set of application-specific files? There are tradeoffs of efficiency involved, but the choice shouldn't really matter to users or even to application writers. As long as the rules and conventions are clear, things will work properly when code is correct. When the inevitable bugs cause the wrong information to be stored, no matter where it is, problems will result.

Perhaps experience has shown us that use of a central repository makes it more likely for one buggy application to harm another's stored information. If so, Windows will continue to suffer, but Mac OS X hasn't completely avoided this problem either.

arn
Oct 13, 2003, 12:33 AM
Originally posted by KBFinFan
Hey, as a new member to the Apple community I really have just begun to wonder how exactly how an Apple computer varies from a PC?


The answer to this question depends from what perspective you are asking from. Programmer? User Interface? Filesystem? etc....

And, by the responses, you can see the question is a bit too broad to answer easily.

arn

simX
Oct 13, 2003, 12:34 AM
Originally posted by Doctor Q
I'm not convinced that plist files and/or NetInfo-type services have some inherent design advantage over the Windows Registry, or even over old-style Windows INI files, for that matter. What I see is that, in practice, the implementation of the Windows Registry results in corruption problems more often than what I see in plist files, but I'm talking about the design principles involved, not the implementations. Most application programs have details, such as records of their installation, licenses, preferences, etc., to be stored somewhere. Some are user specific; some are system-wide. Some settings apply across applications. And the operating system itself has user-preference settings, system-wide settings, and information about applications.

Should it be stored in a centralized system-managed database? Should it be stored in each application's private area? Should it be stored in a central directory as a set of application-specific files? There are tradeoffs of efficiency involved, but the choice shouldn't really matter to users or even to application writers. As long as the rules and conventions are clear, things will work properly when code is correct. When the inevitable bugs cause the wrong information to be stored, no matter where it is, problems will result.

Perhaps experience has shown us that use of a central repository makes it more likely for one buggy application to harm another's stored information. If so, Windows will continue to suffer, but Mac OS X hasn't completely avoided this problem either.

But that's exactly the point. Of course everything when written perfectly will work perfectly. That's obvious. :rolleyes: It's just that when you deal with problems that will happen sometimes, different systems will respond to the problems differently.

So when you have a central repository for settings, when problems occur, it's inevitable that, because of how it was designed, settings across all applications will be affected. In contrast, when you have settings for each program stored in different files, the most an error can do is affect that one file, which will affect the settings just for that program. (I have no idea if Windows does actually store settings for programs in a central database or not -- I'm just going off of what's been said in this thread.)

So, yes, there is an inherent design advantage in having settings stored in different files. It has nothing to do with when everything works perfectly -- it has to do with when something goes wrong.

GulGnu
Oct 13, 2003, 05:43 AM
Aye, when it comes to the registry, one of the things I like the most with the Mac is how easy it is to move programs around, without worrying about breaking them. (Due to references in the M$ registry being fixed.)

/GulGnu

yamabushi
Oct 13, 2003, 06:10 AM
I would say that a central repository such as the Windows registry is an insecure and unreliable solution. Basically you have to give a program quite a bit of control over your system settings, including shared resources. Programs have to be allowed to do just about whatever they please since their intended purpose and scope is unknown. Allowing any program access to your system files is a bad idea. Who knows where it's been?:) The OSX way of handling preferences isn't perfect, but it's better. At least each program tends to keep it's mess in it's own area.

caveman_uk
Oct 13, 2003, 06:27 AM
Originally posted by KBFinFan
Hey, as a new member to the Apple community I really have just begun to wonder how exactly how an Apple computer varies from a PC?

What is different in the PowerPC architecture?

The RISC format?

How does it work without a registry?

And so on.....

If someone could link me to a informative resource or a recommended book I would appreciate it.

Thanks
Hardware wise PCs and Macs use similar components. The harddrives and memory and at a broad overview logic board components do much the smae thing.
The processor itself is quite different relying on a different ideology for the way it works. The machine code is different - it doesn't run x86 code. Even the way numbers are stored is different (they are reversed in memory to the way an x86 stores it's numbers). The CPU still performs much the same tasks though.
The registry is a windows only data structure - it isn't an essential part of the way x86 processors work. Linux on PCs doesn't use one. Linux and other Unix's use lots of flat text files for each application to store information. Mac OS X is a bit of a hybrid. It uses text files like Linux for the BSD Unix core and uses XML text files for application data. There is also NetInfo which I believe came from openstep which seems to be losing favor. Basically Mac OS X uses all three but generally shields you from it.

The big differences for me in a mac are

1) Design and Quality
2) Thought put into hardware / software use
3) Great OS

KBFinFan
Oct 13, 2003, 09:35 AM
Originally posted by oldschool
Why can't you stand this thread? The guy is not trashing macs, and he's not looking at them as if they were gossamer. He's simply asking how they work...and he wants to know if there is a book.

oh...and its "they're computers" unless that was some sort of weird slang.

Thanks oldschool.. I appreciate the support.

My question wasn't "Hey! Mac's don't have a registry?! Then how in the world do they work, because the registry is obviously the best way to do things."

I just threw the registry idea out there to give an example of somewhere where PCs and Macs differ that was obvious to me. Yes, I am new to Macs, but I am not a Mac basher nor a PC lover.

I appreciate the links Sun Baked- they gave me some of the information I was looking for.

I do love how OS X 'just works,' and I can't wait to see how Jaguar 'just works better.'

One particular thing that was interesting to me on the Mac is how there, with most things at least, is no 'install'. Just drag it into the Applications folder and Voila! That is what 'just works,' truly means...

Thanks again everyone

slowtreme
Oct 13, 2003, 09:41 AM
How does it work... Pixie Dust

KBFinFan
Oct 13, 2003, 10:35 AM
Originally posted by slowtreme
How does it work... Pixie Dust

:D That's the answer I was looking for all along!

bertagert
Oct 13, 2003, 11:10 AM
First, lets begin with a history lesson -> www.apple-history.com (http://www.apple-history.com)

Next, go to Apple site for current hardware -> http://www.apple.com/hardware/

Then, current software -> http://www.apple.com/macosx/architecture/

Now for the competition, lets go to www.microsoft.com (http://www.microsoft.com/). Funny how the first thing you see on that site is how your PC is NOT secure.

That should clear it up for you!

Let me add one more link for promotion of Apple ->San Francisco Chronicle (http://www.sfgate.com/cgi-bin/article.cgi?file=/gate/archive/2003/10/01/notes100103.DTL)

benixau
Oct 13, 2003, 11:25 AM
hey guys, give him a week or two then the reality distortion field will take effect and he wont care any more.

AmigoMac
Oct 13, 2003, 11:33 AM
:p

mactastic
Oct 13, 2003, 12:18 PM
Ones and zeros man, it's all ones and zeros. :p
[/SARCASM]

Bear
Oct 13, 2003, 01:28 PM
Just fine, thank you.

acj
Oct 13, 2003, 02:43 PM
OSX just works.

I think a lot of people forget that if someone went from OS 7.5.2 to XP today, they would say, "wow, it just works!" Meaning works with printers, usb and firewire drives, card readers, networking, etc, without drivers or user input.

I mention this because a lot of my friends are much more anti-PC than I am, because the last PC they really used had an 8 year old OS, like windows 95.

SiliconAddict
Oct 13, 2003, 03:15 PM
Originally posted by NeoMayhem
ROFL, the registry is one of the stupidest things to come out of MS.



Actually I've heard a computer science professor actually say its one of the stupidest things ever developed in the computer industry. I frequent www.pocketpcthoughts.com and can't believe the utter stupidity of some windows users. People actually defend the registry. Obviously these are people who have never had to dig through the registry when a uninstall process goes bad on an app. Example. I was upgrading a user in our office from Acrobat 4 to 6. The uninstall process blew up when I went to uninstall the app. Consequently I ended up crawling up the butt of windows to remove about 30 registry entries. Even then it left the uninstaller icon for Acrobat 4 in the add/remove application utility. You click on it, it says the application is already removed. Nice. I have more horror stories about the Windows registry then you could possibly imagine. Suffice it to say: Whoever at MS thought up the idea of the registry deserves to be shot for treason against the computer industry. It was a bad idea when they implemented it then. Itís a bad idea now. And history will most likely judge it to be the worst idea in the history of computer science.

Doctor Q
Oct 13, 2003, 04:10 PM
I've done surgery on the Windows registry more than once to fix installation problems, so I know what a mess it can cause.

But I'm still not convinced that a central repository of system information isn't sensible. In Mac OS 9 and earlier, the desktop database was a central repository of application information. It made the Finder efficient. Maybe its nicest feature was that, when the desktop database was trashed, you could simply rebuild it.

Even directories under /Library are central repositories. They just happen to contain separate files, many of them XML files, rather than a single system-maintained binary version of the same information. Either way, it's a huge tree-structured set of keys and values and any application has permission from the operating system to write to the files there.

What I'm starting to believe is that the Finder's desktop database taught us a lesson. Have each application keeps its information in a private place, and have the operating system collect a cache with the same information, as opposed to letting each application update the central files directly. That way, the operating system has everything it needs in one place (good performance), the O.S. has the only code that writes to the repository (safe from application bugs) and you can rebuild when necessary (a way out when things go wrong).

ColdZero
Oct 13, 2003, 07:54 PM
Originally posted by slowtreme
How does it work... Pixie Dust

No, Pixie Dust is how IBM got higher densities on their hard drives. And I'm not joking either, it was called Pixie dust. Thats why I laugh every time I see the commercial for IBM where the have the "magic server pixie dust" :)

Makosuke
Oct 13, 2003, 08:38 PM
Originally posted by ColdZero
No, Pixie Dust is how IBM got higher densities on their hard drives. And I'm not joking either, it was called Pixie dust. Thats why I laugh every time I see the commercial for IBM where the have the "magic server pixie dust" :) Shoot! You beat me to that one.

(Official IBM Link (http://www.research.ibm.com/resources/news/20010518_pixie_dust.shtml))

I agree that I understand the curiosity behind things like this; it's the same thing I do when I start messing with a new platform or technology (say, the BeOS)--how does it do what it does? For that matter, why did the architects make those decisions?

I prefer the Developer version of the Architecture document linked earlier, since it goes into more detail if you're willing to spend the time reading:

http://developer.apple.com/macosx/architecture/

and even better, the System Overview Book (http://developer.apple.com/documentation/MacOSX/Conceptual/SystemOverview/).

Whatever you think of the registry, you've got to love the ease of installation of most apps in OSX. Since all of the application's resources are contained in a simple folder (what apps really are), they're highly portable. Apps are designed to locate the user's preference file (located in their Library folder), so preferences are system-wide and mostly centralized but user-specific.

Specific library information and application bindings are handled by the OS on-the-fly whenever the user moves stuff, opens a folder with installed apps, or runs a new program (prebindings and the like), so you get the advantages of efficient caching that Dr. Q talked about, while not having to worry about updating a set of static links if the application happens to get moved, installed, or deleted.

Of course, badly designed applications (or the few that provide services to the whole OS, like Safari) can require an installer, but for the most part that's unnecessary and I tend to avoid apps that do.

That's a big part of why the "just works" equation happens, and it was really satisfying to see in action the last time a PC user on a Mac in my office (we do things the other way around--force PC people to use Macs at work) asked me:

"How do I uninstall this program?"

"Drag the icon to the trash. That's it."

"Wow. That's easy."

Fender2112
Oct 14, 2003, 05:32 PM
I think ArsTechnica (http://arstechnica.com/) is a good site to get some info on various apsects about computers. Some of it can be a bit technical, but it has a lot of information in one site.

From what I can gather the fundimental difference is the in the chip design. Macs us the PowerPC which is a RISC based chip and Wintel's use x86 chips that are CISC based chips. This difference between RISC and CISC revolves around how many and what type of instructions are performed during each clock cycle. It's kind of like comparing a rotary engine (Mazda RX7) to a four-stroke engine. The end result is the same but the methods are different.

I read a book a few months ago titled "Codes" which explains the evolution of the microchip. I recommend it if you want to know what those 1's and 0's really do.

Another analogy I use sometimes is this: Windows is a GUI wrapped around a DOS foundation and OS X is a GUI wrapped around a UNIX foundation. Over the course of time UNIX has become a much more powerful, robust and stable core than DOS. I'm not sure what OS 9 (and earlier) are wrapped around, maybe a Hershey's Kiss. :)

I am just a construction worker with a passion for Macs. This is my simple take on a very complex topic.

notjustjay
Oct 14, 2003, 05:48 PM
Hey now, Fender.. you're not "just" anything. You know far more about computers than I know about construction... so more power to ya! :D

Iconocat
Oct 14, 2003, 05:53 PM
Having just come back to Macs after about 11 years, I found myself wondering how they work as well.. after a little bit of investigation (a lot of the places that have been mentioned on this thread) I've found my thirst for knowledge increasing! I have to admit from the time I was forced to start using PC's (1992) until I got my new mac, I lost interest in them pretty quickly. (Windows just KILLED the attraction for me.)

Now I can't get enough learning about macs!!! I find myself wondering how much more I can charge on my credit card to buy yet ANOTHER Mac book (between this and ITMS... ouch!)

"It just works" is such a fabulous way to sum it up but once you really start to dig deep into WHY it does.. you think "It just works.. and HOW!"

I just felt like sharing! :)