ppc64 vs IA64 question[ANSWERED] inadvertant new topic
ppc64 vs IA64 question[ANSWERED] inadvertant new topic
Ok, I want my OS to be x64 optimized and while that is simple enough, in theory, to do for standard PC's I've been wondering about Mac hardware. Many use dual core Intel processors now I believe instead of the ppc processor/architecture so my question is: Do I have to implement code for the ppc64 architecture? Or will the IA64 architecture suffice and then just add in code for Mac hardware?
Last edited by Brackets on Mon Jun 11, 2007 9:16 am, edited 1 time in total.
My OS is an honor roll student
Fenrir OS
I lay siege to your goods and cattle!
![Image](http://www.opensource.org/trademarks/opensource/web/opensource-110x95.gif)
![Wink ;)](./images/smilies/icon_wink.gif)
I lay siege to your goods and cattle!
![Image](http://www.opensource.org/trademarks/opensource/web/opensource-110x95.gif)
- Brynet-Inc
- Member
- Posts: 2426
- Joined: Tue Oct 17, 2006 9:29 pm
- Libera.chat IRC: brynet
- Location: Canada
- Contact:
**obsolete**After checking the wiki both of the first two links for motorola and IBM docs are obsolete and I was unable to find the docs at the new location, but looking at the Mac website, it seems like only Intel processors are used now (Dual core, I believe that means x64
) so I don't know if the ppc manuals are needed. **/obsolete** Yes I am referring to the Intel 64 (dual core) architecture. So I'm assuming that means that the only different code that is required is regarding the other hardware and not the processor?
![Confused :?](./images/smilies/icon_confused.gif)
My OS is an honor roll student
Fenrir OS
I lay siege to your goods and cattle!
![Image](http://www.opensource.org/trademarks/opensource/web/opensource-110x95.gif)
![Wink ;)](./images/smilies/icon_wink.gif)
I lay siege to your goods and cattle!
![Image](http://www.opensource.org/trademarks/opensource/web/opensource-110x95.gif)
- Brynet-Inc
- Member
- Posts: 2426
- Joined: Tue Oct 17, 2006 9:29 pm
- Libera.chat IRC: brynet
- Location: Canada
- Contact:
Well then Yes, Apple has dropped the PowerPC line of it's computers in favour of Intel 64 (x86-64) processors.
If you already have an x86-64 port, Adding support for Intel Mac's will simply require supporting it's hardware.
I'm pretty sure the Intel Mac's use EFI instead of the legacy PC BIOS services though..
http://en.wikipedia.org/wiki/Extensible ... _Interface
Someone else should be able to get into more specifics, I don't own a Mac.
If you already have an x86-64 port, Adding support for Intel Mac's will simply require supporting it's hardware.
I'm pretty sure the Intel Mac's use EFI instead of the legacy PC BIOS services though..
http://en.wikipedia.org/wiki/Extensible ... _Interface
Someone else should be able to get into more specifics, I don't own a Mac.
- Colonel Kernel
- Member
- Posts: 1437
- Joined: Tue Oct 17, 2006 6:06 pm
- Location: Vancouver, BC, Canada
- Contact:
I do own a Mac, but I do all my OS dev in Parallels. Some day in the distant future, when I figure out how to have my kernel booted by EFI, then maybe I'll try my OS on my own hardware... ![Razz :P](./images/smilies/icon_razz.gif)
![Razz :P](./images/smilies/icon_razz.gif)
Top three reasons why my OS project died:
- Too much overtime at work
- Got married
- My brain got stuck in an infinite loop while trying to design the memory manager
Thanks for that! I was recently reading an article (literally just 5 min ago http://www.pcadvisor.co.uk/news/index.cfm?newsid=8863) and it presented an interesting idea that is only mentioned once in the article, and that is the idea of closed hardware. The idea was that because Macs use specific hardware, and only that hardware (instead of the vast differences like windows hardware) the OS is more stable because it only has to contend with that hardware. So that raises a question for OS developers (one I'm trying to personally answer to myself right now, but I think I already know the answer): Is it easier to create a better OS designed for Mac computers, or computers that contain specific hardware? Many will argue, myself included that it probably would be better to give the user options and variety but this is a compelling argument. It seems to me that it would dramatically reduce the size and complexity of the OS if it only had to deal with something like 4 display drivers, 3 sound drivers etc. The main thing about that that I don't like and actually highly disagree with is that it shows favoritism. I see the whole point of opensource as being one that information is shared equally so how is it any better than proprietary if it is only designed to support certain hardware. Now I can be called a hypocrite since I just declared I want to be optimized for x86-64, but IMO it's different to provide exclusion to the newest advancement in 1 piece of hardware then exclusion to only a couple of brands and models.
My OS is an honor roll student
Fenrir OS
I lay siege to your goods and cattle!
![Image](http://www.opensource.org/trademarks/opensource/web/opensource-110x95.gif)
![Wink ;)](./images/smilies/icon_wink.gif)
I lay siege to your goods and cattle!
![Image](http://www.opensource.org/trademarks/opensource/web/opensource-110x95.gif)
Hi,
If you try to run OS X on a normal PC it won't boot, and therefore it's not stable on a wide range of 80x86 machines. If you try to run Windows on a PowerPC or Sparc then it won't be stable either. If you try to run Linux on a Intel/Mac, a normal 80x86, a PowerPC, or a Sparc, then it will (should) be stable. Therefore the most stable OS is the OS that supports the most hardware...![Wink ;)](./images/smilies/icon_wink.gif)
Limiting the hardware that an OS is designed for reduces it's overall stability, but also reduces the amount of hardware users expect it to be stable on. For e.g. no-one expects OS X to run on Sparc, and therefore they only take into account how stable it is on Intel/Mac and come to the conclusion that it is stable in general. What they really mean is that it's only stable on Intel/Mac and NOT stable in general.
![Smile :)](./images/smilies/icon_smile.gif)
As OS developers we don't have much choice - we can only support the hardware we can test the OS on and have time to support. However, this doesn't mean we can't design the OS to support other hardware eventually, and it doesn't mean that there isn't other ways to improve stability - for e.g. you could use fault isolation (where a fault or bug in one part can't effect the reliability of other parts), and defensive programming principles.
Cheers,
Brendan
If I had 1 million randomly selected computers, how stable would different OSs be?Brackets wrote:The idea was that because Macs use specific hardware, and only that hardware (instead of the vast differences like windows hardware) the OS is more stable because it only has to contend with that hardware.
If you try to run OS X on a normal PC it won't boot, and therefore it's not stable on a wide range of 80x86 machines. If you try to run Windows on a PowerPC or Sparc then it won't be stable either. If you try to run Linux on a Intel/Mac, a normal 80x86, a PowerPC, or a Sparc, then it will (should) be stable. Therefore the most stable OS is the OS that supports the most hardware...
![Wink ;)](./images/smilies/icon_wink.gif)
Limiting the hardware that an OS is designed for reduces it's overall stability, but also reduces the amount of hardware users expect it to be stable on. For e.g. no-one expects OS X to run on Sparc, and therefore they only take into account how stable it is on Intel/Mac and come to the conclusion that it is stable in general. What they really mean is that it's only stable on Intel/Mac and NOT stable in general.
That depends - do you want to increase the stability on all computers, or increase the stability on a small percentage of computers while sacrificing stability on all others?Brackets wrote:So that raises a question for OS developers (one I'm trying to personally answer to myself right now, but I think I already know the answer): Is it easier to create a better OS designed for Mac computers, or computers that contain specific hardware?
![Smile :)](./images/smilies/icon_smile.gif)
As OS developers we don't have much choice - we can only support the hardware we can test the OS on and have time to support. However, this doesn't mean we can't design the OS to support other hardware eventually, and it doesn't mean that there isn't other ways to improve stability - for e.g. you could use fault isolation (where a fault or bug in one part can't effect the reliability of other parts), and defensive programming principles.
Cheers,
Brendan
For all things; perfection is, and will always remain, impossible to achieve in practice. However; by striving for perfection we create things that are as perfect as practically possible. Let the pursuit of perfection be our guide.
- Colonel Kernel
- Member
- Posts: 1437
- Joined: Tue Oct 17, 2006 6:06 pm
- Location: Vancouver, BC, Canada
- Contact:
Apple's choice to support Mac OS X only on Apple hardware is a business decision more than a technical one. They've already demonstrated that OS X can be ported to other architectures (PPC, Intel, and now with the iPhone, ARM). Nothing about OS X prevents it from dealing with different devices -- network cards, video cards, etc. They artificially limit the number of devices they support for three main reasons IMO:
If you're just doing it for fun of course, just do whatever you feel like.![Razz :P](./images/smilies/icon_razz.gif)
- Apple makes most of its money selling hardware. Putting OS X on other hardware would cannibalize Apple's own sales of Mac hardware.
- The fewer hardware configurations that need to be supported, the cheaper it is to support them.
- The user experience for Apple customers doesn't stop with the UI of the OS -- it goes all the way to the form factor and functionality of the hardware itself. For example, one of the main reasons my Mom really likes her iMac is that it is integrated, has very few cords hanging out (this is important to some people), looks nice, and has all the stuff she needs built in and working out of the box (camera, mic, speakers).
If you're just doing it for fun of course, just do whatever you feel like.
![Razz :P](./images/smilies/icon_razz.gif)
Top three reasons why my OS project died:
- Too much overtime at work
- Got married
- My brain got stuck in an infinite loop while trying to design the memory manager