# FreeBSD works on Itanium - Works on macs too?



## supanatral (Oct 19, 2007)

I was reading that Intel Itanium-based processors use EFI. So does that mean that if i were to download freebsd for Itanium processor that it will work on my mac as well?

Also, random quesion about EFI: Since BIOS uses 16bit code to run, how many bits does EFI use?


----------



## lurk (Oct 19, 2007)

Question #1, is no.  That Itanium uses a totally different instruction set than the x86 family.  You would literally have as much luck installing the PowerPC version.

Question #2,  The big difference is the addressing mode.  BIOS starts up and runs in what is called "real mode" which goes all the way back to the first IBM PCs.  That is what limits BIOS to seeing only 1MB of RAM and the like.  EFI in contrast runs the processor in "protected mode" where it can see the whole memory address space.  I do not think that it really cares about 32 vs. 64 bit then, it will just do the right thing.

To what your real question is, why don't you just get Bootcamp?  That includes the EFI modules to fake a BIOS so that you can install a legacy operating system.

Finally, you do know that MacOSX already uses FreeBSD for its Unix user-space.  So you already have FreeBSD running on your box even before you start down this path.


----------



## supanatral (Oct 19, 2007)

I know what your saying about bootcamp. During my quick research, I figured out that boot camp only supports 32bit, however please feel free to correct me if i'm wrong.

After running Windows XP 32bit on a PC and then upgrading them to Vista x64I found out just how fast 64bit really is. The computer is so much faster running 64bit even though its running Vista.


----------



## eric2006 (Oct 19, 2007)

About 64-bit bootcamp:
http://en.wikipedia.org/wiki/Boot_Camp#64-bit_.28x64.29_Microsoft_Windows


----------



## nixgeek (Oct 19, 2007)

Mac OS X does *not* use FreeBSD.  It runs Darwin, a BSD derivative (and VERY derivative at that compared to other BSDs) whose kernel draws some code from FreeBSD 5.0 and Mach.  FreeBSD and Darwin environments have their differences when it comes to userspace.

http://ezine.daemonnews.org/200010/darwin.html

So if he were to use the Terminal, he would have access to much of the BSD and GNU CLI applications found under a command shell in most any *nix, but much of how the system is managed would be very different.  Check the following page and select "FreeBSD" and "Mac OS X" to see a chart showing the differences between them:

http://bhami.com/rosetta.html

I imagine that with Boot Camp you might be able to install FreeBSD, unless the FreeBSD distribution has support in the kernel for EFI-based systems.  You can check out the following pages for getting FreeBSD 6.2 installed on your Intel Mac:

http://goddess-gate.com/dc2/index.php/post/251


----------



## lurk (Oct 19, 2007)

It does so, neener-neener-neener!! (that was fun ;-) )

More maturely, I said that the OS X used the FreeBSD "user space" the kernel is Mach.  When you type 'ls' or 'ps' in a terminal those commands are compiled from what one would call the FreeBSD distribution, for example for Tiger they were all synced up with FreeBSD 5.0 (I think that was the version) and I am sure that leopard will match 6.0. 

If you look at the list of differences that you will find at the "Rosetta Stone for Unix" you linked there are not really that many.  Two big ones account for most of the differences, the different kernel and the fact that OS X uses a directory service (Netinfo) by default.  This is kind of an apples vs oranges comparison, in most cases the original interface is still present and used when Netinfo fails or would be a match if you configured the FreeBSD box to use a directory service like LDAP for that info. 

Ignoring that, the other differences on that list are even less important and many are just wrong, OS X has dmesg and ifconfig thank you very much.  I use them often.  Others are just ignorant, like comparing Aqua to X11.  The funny thing is that when you run X11 on your Mac  those differences go away.   

The final two differences of note are that the Mac does not use BSD style disk labels and the mach-o format for binary files.  No user will ever see that difference and only a handful of system utilities even can tell the difference.

So, for all of your vanilla Unix needs as a user it looks like FreeBSD and you are running the exact same code.  So I think that I can stand by my assertion.


----------



## nixgeek (Oct 19, 2007)

Where did you see the comparison of Aqua to X11??  

Are you sure you selected JUST Mac OS X and FreeBSD?  I just ran down the comparison between the two and saw no comparison of Aqua to X11.  It also mentioned that both used ipconfig and dmesg. 

Make sure you follow the directions on the top of the page.  Seems to render fine in IE, Opera, or Mozilla-based browsers.

Are you sure you looked at the correctly?  The site also mentioned some commands that have nothing to do with NetInfo but still differ from your average FreeBSD system.  And if you check at the bottom of the page it was last updated on August 16, 2007.

I'm not sure many BSDers would stand by your assertion that Darwin is a FreeBSD because of how it "feels" in the command line.  A BSD, maybe, but even then it strays quite a bit from the norm.  By your description, you might as well make the same assertion that Darwin is like GNU/Linux at the CLI, so there wouldn't be a need for installing GNU/Linux to learn it (which would be wrong).


----------



## nixgeek (Oct 19, 2007)

There's some discussion on the subject in this Usenet group thread (circa 2004).  They also mention that even though there are bits of FreeBSD in the kernel, it is far from being "like FreeBSD":
http://groups.google.com/group/fa.f...18bf827c72f950?hl=en&lnk=st&q=darwin+freebsd#


----------



## lurk (Oct 19, 2007)

nixgeek said:


> Where did you see the comparison of Aqua to X11??



It is present in a couple of entries.  The strongest is the one labeled "X pop-up" where the FreeBSD version points to xmessage and the OSX one uses a snippet of Applescript to have Finder display the window.  Xmessage works just fine on OS X contrary to the implication of the listing.  

The other is the entry for "X kvm config" again this is a problem of omission you configure X the same on both systems.

The reasons that these things don't work the same is that they are comparing X on FreeBSD with Aqua.  If you actually compare it with X11 on the Mac all this stuff goes away.




nixgeek said:


> Are you sure you selected JUST Mac OS X and FreeBSD?  I just ran down the comparison between the two and saw no comparison of Aqua to X11.  It also mentioned that both used ipconfig and dmesg.
> 
> Make sure you follow the directions on the top of the page.  Seems to render fine in IE, Opera, or Mozilla-based browsers.



Yep I read that and I am using it right, did you actually look at the entries in the table or did you just scroll a bit and say "that is long."

A quick count shows that there are 73 entries of which 20 are actually equivalent or the OS X is a superset of the FreeBSD commands.  I was trying to explain why a large part of the remaining ones are not really that significant for the comparison we are making here.



nixgeek said:


> Are you sure you looked at the correctly?  The site also mentioned some commands that have nothing to do with NetInfo but still differ from your average FreeBSD system.  And if you check at the bottom of the page it was last updated on August 16, 2007.



I didn't say that they *all* were related to Netinfo, but that a group of them were.  Also the fact that they updated it on August 16th does not have any bearing on the fact that they are wrong in several of their categories.

One thing to keep in mind though, is that we  are not really using this list for its intended purpose right now.  It is meant to give generally helpful if not technically correct information, the fact that they ignore xmessage under OS X is actually the right thing under that approach since the osascript will do a better version of what somebody would want.



nixgeek said:


> I'm not sure many BSDers would stand by your assertion that Darwin is a FreeBSD because of how it "feels" in the command line.  A BSD, maybe, but even then it strays quite a bit from the norm.  By your description, you might as well make the same assertion that Darwin is like GNU/Linux at the CLI, so there wouldn't be a need for installing GNU/Linux to learn it (which would be wrong).



Well BSDers are notoriously fanatical and resistant to logic ;-)  One way you can sum up my point is that as part of Tiger, Apple synched up their system with FreeBSD 5.0 and if what you are looking for is not directly interacting  with the kernel or a couple of other specific it was compiled from FreeBSD 5.0 source.  Playing the back of the envelope counting game again, I have 1036 binaries in /bin /sbin /usr/bin and /usr/sbin even if everything in the rosetta list was a different application  that account for about 5% of the commands on the system.


Then again this could just be a case of you (a diehard BSDer) not recognizing all the times things work the way you want them to and over emphasizing the differences.  I have always been partial to Sys V myself and things like BSD's ps drive me up the wall, so I may be a bit too hard on the BSDs in this situation, blaming my discomfort on the shared BSD heritage.

But in the end OS X will not pass any purity test that would satisfy the die hard FreeBSD folk, the Mach kernel kills that at the get go.  However, for the pragmatists in the world you cannot deny that the vast majority of the user space programs in the Unix layer are just FreeBSD.


----------



## lurk (Oct 19, 2007)

nixgeek said:


> There's some discussion on the subject in this Usenet group thread (circa 2004).  They also mention that even though there are bits of FreeBSD in the kernel, it is far from being "like FreeBSD":
> http://groups.google.com/group/fa.f...18bf827c72f950?hl=en&lnk=st&q=darwin+freebsd#



I think that you are confusing the kernel with the system again.  There used to be a good document on this that I cannot find for the life of me but if you go look at http://developer.apple.com/opensource/index.html you will see taht even Apple describes the system as



> With its open-source core based on FreeBSD 5.0 and the Mach 3.0 microkernel...



The presence or absence of FreeBSD code in the kernel itself is irrelevant to the meat to the matter that the user land stuff is all pulled from FreeBSD.

I don't want to belabor this too much and I would be happy to go around on this with you some more, I just do not want to get hung up on a questions of the semantics of purity.  That is ultimately a pointless discussion since it is just a case of religious interpretation and ignores the relevant facts.  

If it walks like FreeBSD 5.0 and quacks like FreeBSD 5.0 is it what?


----------



## nixgeek (Oct 19, 2007)

Your assumptions of me are greatly exaggerated, sir.  I never said I was a "diehard BSDer", and I did actually look through all of the commands that were there (my response to read the instructions was not meant to be facetious).  You painted with a very broad brush in your original statements and so I had to make sure we weren't confusing a user who is interested in giving FreeBSD a try.

Now that you've clarified your assertion some more, I can understand where you are coming from but your conclusion is still rather broad.  Even if for pragmatists the fact that it "feels" like FreeBSD might be the case in Darwin, what then would you say of Slackware or Arch Linux, which also use BSD init scripts?  Would this and the fact that *BSD and BSD-inited Linux flavors share many common GNU and BSD applications make them one and the same?  Slackware sure tries to walk, talk, and squawk like FreeBSD to the pragmatist, but I don't think that you'd be taking the same stance that you're taking with Darwin and FreeBSD.

If you were to tell me that Darwin is a BSD, I accept it.  Even those BSDers in the articles and thread I linked pretty much said that (except for one or two that just said it's a NeXT derivative which is foolish since even NeXT had its history from BSD).  But to say that because Darwin "feels" like FreeBSD it in essence is is quite the contrary.  Even in the link you gave from Apple which you quoted "With its open-source core *based on FreeBSD 5.0* and the Mach 3.0 microkernel..." you've proved that it's only BASED on FreeBSD, but not ONCE does Apple call Darwin "FreeBSD".  IF what you were saying was true, then Apple would have just called it "FreeBSD" or even saved time and just used FreeBSD as its underpinning.

Remember that even Linux was created with influences from MINIX, only because that's what Linus Torvalds used as his base operating environment when he was writing the kernel.  That most certainly does NOT make Linux "MINIX" (Just ask Andrew Tanenbaum or Linus if Linux is actually a MINIX).

Even more simply, if you look like someone I know named Fred and have similar mannerisms, I can't say that you're Fred when your name might be Tom, can I?

You don't want to get into a quibble of semantics, but the fact that you're being very broad with your descriptions is calling for just that and is in fact far from the facts, regardless of whether it's pragmatic or not.


----------



## lurk (Oct 19, 2007)

nixgeek said:


> Your assumptions of me are greatly exaggerated, sir.  I never said I was a "diehard BSDer", and I did actually look through all of the commands that were there (my response to read the instructions was not meant to be facetious).  You painted with a very broad brush in your original statements and so I had to make sure we weren't confusing a user who is interested in giving FreeBSD a try.



I tried to sprinkle a number of smilies through that, I have to remember to not to write in a slightly joking tone since it does not always come through.



nixgeek said:


> Now that you've clarified your assertion some more, I can understand where you are coming from but your conclusion is still rather broad.  Even if for pragmatists the fact that it "feels" like FreeBSD might be the case in Darwin, what then would you say of Slackware or Arch Linux, which also use BSD init scripts?  Would this and the fact that *BSD and BSD-inited Linux flavors share many common GNU and BSD applications make them one and the same?  Slackware sure tries to walk, talk, and squawk like FreeBSD to the pragmatist, but I don't think that you'd be taking the same stance that you're taking with Darwin and FreeBSD.



It has been more than 10 years since I last installed Slackware but I though it was much more in the Sys V style than the BSD mold.  Also the use of Sys V init or BSD style init scripts really has little or nothing to do with the BSD style.  Both have been ported back and forth so long ago it is really just a preference at this point.

Just one example consider the *cat* command.  In the Linux world you have the version that is part of GNU's textutils while in the BSD case you have a totally different code base.  As a matter of policy GNU targeted Sys V for compatibility so for more interesting commands you will find the same options and conventions between GNU and say Solaris. This is where I see the BSDisms come in, the flags I expect to work don't or the output is formatted differently and so on.



nixgeek said:


> If you were to tell me that Darwin is a BSD, I accept it.  Even those BSDers in the articles and thread I linked pretty much said that (except for one or two that just said it's a NeXT derivative which is foolish since even NeXT had its history from BSD).  But to say that because Darwin "feels" like FreeBSD it in essence is is quite the contrary.  Even in the link you gave from Apple which you quoted "With its open-source core *based on FreeBSD 5.0* and the Mach 3.0 microkernel..." you've proved that it's only BASED on FreeBSD, but not ONCE does Apple call Darwin "FreeBSD".  IF what you were saying was true, then Apple would have just called it "FreeBSD" or even saved time and just used FreeBSD as its underpinning.



This is where the vague nature of language causes problems, what does "based" mean.  Is mklinux Linux or just based on Linux?  What about if I am running Gnu Hurd with a linux user land?  A BSD user land?

This is where religion cones in, if one insists on Gnu/Linux for instance.  It really is just counting angels on pinheads after this point.



nixgeek said:


> Remember that even Linux was created with influences from MINIX, only because that's what Linus Torvalds used as his base operating environment when he was writing the kernel.  That most certainly does NOT make Linux "MINIX" (Just ask Andrew Tanenbaum or Linus if Linux is actually a MINIX).



See above, it may have been Minix based ;-)



nixgeek said:


> Even more simply, if you look like someone I know named Fred and have similar mannerisms, I can't say that you're Fred when your name might be Tom, can I?



This is a bad example because you are describing a look alike, in this case there is identical code in both cases.  So a bette question is what if Fred and Tom are is a terrible car crash and the doctors sew together one person out the various parts they can find.  Is this Frankenstein Tom, Fred or maybe we could call him Todd as a compromise?



nixgeek said:


> You don't want to get into a quibble of semantics, but the fact that you're being very broad with your descriptions is calling for just that and is in fact far from the facts, regardless of whether it's pragmatic or not.



Yes and no.  My basic point is in the analogy that 

mklinux : linux :: Darwin : FreeBSD 

Those sort of semantics I am more than happy to argue.  I just don't want to argue GNU/Linux vs. GNULinux vs. Lignux vs. Linux or any of the BSD parallels.  That is just not very interesting since there is no there there, it is really just a sort of geeky tribal identification.

Sorry if this all has sounded too snarky, I wrote it with a good natured grin on my face a wink in my eye.


----------



## nixgeek (Oct 20, 2007)

But this is where your analogy is flawed.

RedHat/Ubuntu/MkLinux/SuSE/Debian/blahblahblahlinux : Linux

FreeBSD/Darwin/NeXTSTEP/OpenBSD/NetBSD/DragonflyBSD/PC-BSD/blahblahBSD : BSD

Even though Darwin and MkLinux use a Mach kernel, they still fall under their respective categories because of the nature of these systems being similar to their respective origins.

FreeBSD is one of many derivatives of the original BSD.  It is not THE original.

Straight from the FreeBSD website:


> FreeBSD® is an advanced operating system for x86 compatible (including Pentium® and Athlon), amd64 compatible (including Opteron, Athlon64, and EM64T), UltraSPARC®, IA-64, PC-98 and ARM architectures. *It is derived from BSD*, the version of UNIX® developed at the University of California, Berkeley. It is developed and maintained by a large team of individuals. Additional platforms are in various stages of development.



Here's what this website defines "base" or "based" as:
http://www.thefreedictionary.com/based

As for the whole GNU/Linux thing, I've made a personal decision to call it that now when referring to the entire system, but I'm no RMS.  I respect what he does and what he's pushing for, but in that same respect his advocacy has also been detrimental to his cause because of how he comes off to people.  I just heard a bsdtalk interview with RMS and while it was one of the best I've heard so far, he still has a tendency to be coarse with his interviewers.  He never lets them finish their questions and then wonders why the questions sound "vague".  If he would just shut up and listen then he might understand the ENTIRE question and answer accordingly.  RMS needs a HUGE slice of humble pie IMO.  I don't go shooting people down because they just say "Linux"...it's pretty much understood IMO that when you say "Linux", you're talking about the whole package: Linux kernel and GNU/BSD/whatever application userspace.

But I'm not about to say that Slackware = Yggdrasil or that Linux = MINIX because they were "derived" from them.  The same should apply when it comes to BSD-derived flavors IMO.

Anyways, I'm guessing by now that supanatral has completely given up on this thread and has said "screw all you nixheads, I'm going back to Windows where its nice and safe".  I think we've covered both sides of the coin enough for supanatral to make a decision.  That's enough from me.


----------



## lurk (Oct 22, 2007)

nixgeek said:


> But this is where your analogy is flawed.
> 
> RedHat/Ubuntu/MkLinux/SuSE/Debian/blahblahblahlinux : Linux
> 
> ...



Your analysis of my analogy is flawed because you are looking at distributions and then Linux.  MkLinux does not fit that mold, you can take a random Linux distro like Redhat and install MkLinux on it.  So is a Debian install with the MkLinux kernel no longer Debian?



nixgeek said:


> FreeBSD is one of many derivatives of the original BSD.  It is not THE original.



I never said that it was the original, what I said is that Darwin and thereby Mac OSX actively track and merge in FreeBSD.  In the vast majority of cases things work the same because they are running the exact same code as FreeBSD.  Not because of some shared BSD heritage, but because Apple did and explicit merge of FreeBSD version foo into Darwin.  In the case of Tiger it was version 5.0 and most likely for Leopard it will be 6.x, again because of an active merge on that part of Apple with the FreeBSD code base.

That is why I said the operate in a very similar manner, it is the same code!

I am sure that the OP is totally lost in this, but I do think that it is an important distinction.  Although I really have done a poor job of explaining it, as evidenced by the confusion of mkLinux and distros.  It really can be hard when you do not know what base knowledge people have in common.

Finally, I also invested more into this because it was you I was discussing this with.  I figured that I could pull in enough other examples of similar structures form the history of Unix that you would get the point.  I am more than happy to keep flogging this dead horse if you are interested.  Just go back to my analogy and think about how it is correct, were the parallels are, because for the most part it is right.


----------



## nixgeek (Oct 22, 2007)

Goodness!  You really like beating a dead horse, don't you? 

I understand what you're saying now.  But I personally still believe there is some distinction between something that is merged with FreeBSD code as opposed to the actual vanilla FreeBSD flavor (crap....now I'm in the mood for Baskin Robbins ).  I'm understanding it as "he will get the 'feel' of FreeBSD in Darwin because of the merge".  Is this correct?

Also about my analogy, I am aware that MkLinux doesn't use a Linux kernel.  But structurally as a whole I'm guessing that it fits into the Linux mold, just as Darwin would fit into the BSD mold even though the kernel isn't really the same.  It is a very loose association, but from what I've seen so far on teh tubez it's one that still sort of holds water aesthetically even though technically it doesn't.

Maybe I am a purist, then.  Maybe we can just agree to disagree?  I see where you're coming from but I'm still not completely convinced.  Or I'll just concede to you.


----------

