Help me understand the "Mac arctitecture"

butch84

Golden Member
Jan 26, 2001
1,202
0
76
I know programs designed for the mac wont run on a pc or vice versa without a port, but why not?? Both macs and pcs use hard drives, memory, and macs even run a unix based operating system. So, why cant you just install osx on a pc?? All of the basic components are there for the software to work with right?? I guess i just dont know enough to even ask my question intelligently. What i mean is, did apple just block the x86 language from being read by their hardware, or what?? Help me understand this!!

Thanks,
butch

EDIT: I just saw the typo in my thread title, but i think its kinda funny, so ill leave it :)
 

Vehementi

Member
Sep 1, 2002
108
0
0
Originally posted by: butch84
So, why cant you just install osx on a pc??

OS X Jaguar is lurking around out there. Run a search for it ;)

All I know is that the Mac architecture is RISC, which is why a 1GHz G4 can rival a Athlon XP 2000+, in MFLOPs and MIPs.

Adapting to the Macintosh Architecture

If any of you know where a comparison between, say, a G4 and an Athlon XP or a G4 and a P4 is, let me know :D
 

Sahakiel

Golden Member
Oct 19, 2001
1,746
0
86
Macs use PowerPC CPUs and PCs use x86 CPUs. Different CPU architecture leads to different binaries. In order to run software from one platform on the other, you either need to recompile the code (port it) or run an emulator (usually extremely inefficient).

Arstechnica has some old articles comparing P4 to the G4e and G4e and K7
 

CTho9305

Elite Member
Jul 26, 2000
9,214
1
81
Macs use an architecture called "PPC". Intel and AMD use an architecture called "x86". These have different instruction sets - they can do different things, and they "evolved" differently. At the lowest level, processors take instructions as numbers. The numbers Macs and PCs use to represent different functions are different. There are MANY MANY other differences, but I think those are enough to make it clear :)
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
One of the "problems" would be the amount of assembly used in Mac OS X. That would all have to be ported to x86. Many linux applications work just fine on Mac OS X though, so many applications dont take much work to get working on the other OS. One of the problems is the gui though.
 

butch84

Golden Member
Jan 26, 2001
1,202
0
76
Ok, i guess for my purposes, it would be okay to say that a mac simply speaks a different "language" and pcs. Anyway, i like the idea of running a linux/unix based os with a gui (kinda like osx). However, i dont really know much about linux, so is there some distro of linux that will have a gui installed automatically when i install the os? I really dont have enough linux skillz to install command prompt based linux and then install a gui after it. So, does a "newbie" distro exist? Or a tutorial that is easy to follow??

Also, what file system works with both windows and linux? I have heard that linux cannot write to ntfs partitions or something like that. Also, how does file sharing work between pc and mac?? Do they use a compatible file system? If i need to create a file on a mac, i am guessing a windows pc wont be able to read it right??

Thanks for all your help guys, and sorry for the continued questions,
Butch
 

n0cmonkey

Elite Member
Jun 10, 2001
42,936
1
0
Originally posted by: butch84
Ok, i guess for my purposes, it would be okay to say that a mac simply speaks a different "language" and pcs. Anyway, i like the idea of running a linux/unix based os with a gui (kinda like osx). However, i dont really know much about linux, so is there some distro of linux that will have a gui installed automatically when i install the os? I really dont have enough linux skillz to install command prompt based linux and then install a gui after it. So, does a "newbie" distro exist? Or a tutorial that is easy to follow??

RedHat, Mandrake, and SuSE all make this "easier." One bit of advice though, learn the command line! The rest is useless without it.

Also, what file system works with both windows and linux? I have heard that linux cannot write to ntfs partitions or something like that.

Linux can read/write to FAT32 partitions, but NTFS is better for Windows. Use ext3fs, XFS, or ReiserFS for Linux.

Also, how does file sharing work between pc and mac??

Between Widows and Mac OS X? Between Linux and OS X? Between OS X and OS X? SAMBA can do most of that.

Do they use a compatible file system?

Who? Macs use HFS+. Linux's default has been ext2fs for a long time, and Microsoft is pushing NTFS.

If i need to create a file on a mac, i am guessing a windows pc wont be able to read it right??

Depends on the file.

Thanks for all your help guys, and sorry for the continued questions,
Butch

Its in the "not highly technical area now..."
 

Neurofreeze

Member
May 12, 2001
91
0
0
Originally posted by: Vehementi
Originally posted by: butch84
So, why cant you just install osx on a pc??

OS X Jaguar is lurking around out there. Run a search for it ;)

All I know is that the Mac architecture is RISC, which is why a 1GHz G4 can rival a Athlon XP 2000+, in MFLOPs and MIPs.

Adapting to the Macintosh Architecture

If any of you know where a comparison between, say, a G4 and an Athlon XP or a G4 and a P4 is, let me know :D

That's not very true at all. Here's a popular example, it's a little old, but it's somewhat relevant:
http://www.digitalvideoediting.com/2002/05_may/features/cw_aeshowdown.htm
Basically it shows a dual Athlon MP (1.533GHz/1800+) against a dual 1Ghz G4+ system. The Athlon system is clocked 50% higher than the G4+ system and beats it on average (not losing a single benchmark, leading anywhere from 30%-50%) of ~40%. And this is on After Effects, Adobe, Mac's home turf. Adobe isn't exactly a Carmack of optimizing x86 code.

Mac's greatest strengths do not lie in brute force (because even the latest dual 1.25GHz G4's pale in comparison to the highest end PC stuff), it lies in stuff that PC's just can't have (and it's not just OSX). One of those things, one BIG thing, is color calibration. Mac's color calibration is just so far ahead of PC's that it's sickening. Actually what's sickens me is the incredibly poor color calibration of PC's. Not only are Mac's color calibration painless and seamless between all its programs and hardware, but its hardware and operating system are symbiotic with it. Their monitors send info to the system, the system sends info to the OS, and back again. It's so sophisticated that as an Apple monitor ages and some of its properties degrade, the OS will detect it and tell the monitor to adjust its properties accordingly, so it will keep displaying correctly until it's so far gone you need to chuck it out.

I suppose at the most basic level, you can boil down the difference between the PPC architecture and x86 architecture (and subsequently why it's inherently incompatible) to its operand system.

x86 uses the two operand system, ie. a + b = a. Or in English, two variables, 'a' and 'b', are added together, the result is recorded (written over) the variable 'a'.

PPC uses the three operand system, ie. a + b = c. Although with the introduction of AltiVec, the G4+'s actually use four operands in SIMD operations. It gets kind of complex.

This reason alone makes it VERY, VERY hard to compare performance between one and the other. The above link is one of the best, nearly unbiased comparison, and it's still far from perfect. The best comparisons you can hope for are "real world" comparisons like FPS benches or application timing (like the After Effects benchmarks), but even that's not entirely reliable because very few companies have the talent, time, or resources to optimize both sides of the coin equally. Microsoft, suprisingly, is probably the best at it. If you use Office in OSX or Office in WinXP, they're both pretty much equally fast. IE is still the fastest browser on either platform. Go figure.

The differences in operand systems and how they affect performance is also hard to predict. It's pretty obvious that the three operand system is better, although the why is not quite what you'd expect. Performance-wise, they're almost equal, but x86 has to do some compiler and scheduling tricks, luckily for x86, Intel is the master at this. The biggest advantage of the three operand system is flexibility and ease of use.

Going back to your first question. It'd be like trying to put three numbers in a two-variable equation or vice-versa, ie. the square peg in the round hole.
 

kpb

Senior member
Oct 18, 2001
252
0
0
Yeah the simple answer is macs use power pc chips which speak a different language than intel chips do. Thats what keeps you from running the same exact copy of a program on both platforms. It is possible to make a program that will compile to both platforms how ever with some work. There are several linux companies that have both intel and PPC processor support and you can compile to either platform depending on your need. Compiling is basically taking a language the programers understand, C++, java , what ever and converting it to what the processor understands.

Apple supposedly has a copy of the mac os x that will run on pc hardware. Next Step that it was based on was origially a pc operating system. Apple hasn't currently released this version of the os or even admited it exsist realy yet. There are other issue tho on top of that tho for running os x on a pc. Most current mac programs wouldn't run on the pc version of the os because they are what is called a carbon application.

Basically there are 3 types of programs that os x can run. Classic is an old program running inside of os 9.x running inside of os x. These are slow and not really a good option.

The next type is what apple calls carbon apps. These applications can potentially run natively inside of both os 9 and os x. What happened was apple took the most common and best behaved parts of the os 9 system and implimented them in os x. A carbon app uses only these parts that apple implimented in both. theoretically it's easier to design or convert an app over to a carbon app because it's simular to older os 9 apps but it still provides alot of the benifits of being an os x app. Runs natively, gets protected memory etc. This carbon environment probably isn't implimented in to pc version of the os x if it actually exsists.

The final type of app is a coco app. This is an application that has been compleately rewriten or writen from the ground up using all os x native features. These apps can only run in os x. Theoretically speaking if there is a x86 version of mac os x all a coco application should need to do is change the processor it is compiling for and it should be able to run on the x86 version of the os x.

People with in apple have said things like they like to keep thier options open when asked about the progress of the ppc architecture hinting that they are keeping thier ability to use other processors viable in some form with the os x opperating system. This makes sense since the unix os that it is at the core has been on many different processors in one form or another. Of hand linux at times has supported x86, ppc, alpha and i beleive mips processors.