Jump to content

Differences between Mac OS X and Unix/Linux


fishyeah
 Share

26 posts in this topic

Recommended Posts

Could somebody shed some light on the key differences (apart from GUI) between Leopard and mainstream Unix/Linux (e.g. FreeBSD, Ubuntu)? e.g. under ubuntu, almost all configuration files are under /etc and you can manually edit them, I can't find many such configuration files under Leopard/Tiger (yeah there is GUI "System Preferences" - are the settings stored in a file that is editable?). Also NetInfo DB is dropped from Leopard. How such information (e.g. user accounts, shares) is managed now?

 

Thanks!

Link to comment
Share on other sites

Mac OS X is, in actuality, based on OpenStep, which was based on NextStep, which was the OS used in Next Computers, which was bought out by Apple (or the other way round). The Mach operating system, which Nextep is based on (yeah, LOTS of genealogy here) is independent of Unix, BSD or otherwise, but contains many elements of BSD4.4, mainly for Unix compatibility. BSD4.4's closest decendent are the 3 main BSDs, of which FreeBSD is most prominent, hence Apple import any changes from that project. Mac OS X isn't Linux, isn't 'based on' FreeBSD and wasn't even Unix (legally speaking) until Leopard got its certification 2 weeks ago.

 

I think most of that is right, dont quote me!

Link to comment
Share on other sites

Mac OS X is, in actuality, based on OpenStep, which was based on NextStep, which was the OS used in Next Computers, which was bought out by Apple (or the other way round). The Mach operating system, which Nextep is based on (yeah, LOTS of genealogy here) is independent of Unix, BSD or otherwise, but contains many elements of BSD4.4, mainly for Unix compatibility. BSD4.4's closest decendent are the 3 main BSDs, of which FreeBSD is most prominent, hence Apple import any changes from that project. Mac OS X isn't Linux, isn't 'based on' FreeBSD and wasn't even Unix (legally speaking) until Leopard got its certification 2 weeks ago.

 

I think most of that is right, dont quote me!

 

Mach isn't a OS. Mach is a kernel. It is a core of OS, but not yet OS itself.

And it it is incorrect to say that OSX is 'based' on BSD. It uses libc and basic system layout from BSD, yes, but it hard to say that it is BSD 'based".

 

What would you say about system, which uses linux kernel and BSD based libc? :D

It isn't something impossible. If you really want, you can build such system.

Would you say that it is BSD 'based'? Would you say that it is 'Linux' based?

Link to comment
Share on other sites

Linux is a rip off of the unix kernal. no there not the same.. Linux suck... UNIX rocks...

 

now that 10.5.0 lepard is 100% certifed Unix OS .....

 

linux kernal sucks comapired to the unix kernal

 

and osx 10.4.0 and bleaove are only part unix ... with darwin unix under the hood

Link to comment
Share on other sites

Could somebody shed some light on the key differences (apart from GUI) between Leopard and mainstream Unix/Linux (e.g. FreeBSD, Ubuntu)? e.g. under ubuntu, almost all configuration files are under /etc and you can manually edit them, I can't find many such configuration files under Leopard/Tiger (yeah there is GUI "System Preferences" - are the settings stored in a file that is editable?). Also NetInfo DB is dropped from Leopard. How such information (e.g. user accounts, shares) is managed now?

Thanks!

 

In fact many directories are identical in Linux and OS X, but in OS X they are hidden by default.

 

Here is what my OS X looks like from Linux:

 

Screenshot.png

 

Sorry, there are some files which don't belong there (in / ) :)

Link to comment
Share on other sites

Linux is a rip off of the unix kernal. no there not the same.. Linux suck... UNIX rocks...

a. Linux is not a rip off

b. Have you tried to use linux for real?

c. Which UNIX are you using or have used, again for real?

d. How many years of REAL computing experience with both systems you have to support your claim?

 

linux kernal sucks comapired to the unix kernal

 

e. What is your knowledge about design and architecture of Linux kernel?

f. What is your knowledge about design and architecture of which unix kernel?

 

Guy, asked very easily understandable question to expand his knowledge! People like you stating something that they don't support with facts and/or are talking about something they know nothing about JUST DOESN'T DO ANY GOOD TO THE COMMUNITY AND ALWAYS MISLEAD PEOPLE LIKE fishyeah WHO ACTUALY WANT TO LEARN SOMETHING!

 

fishyeah, for linux I suggest reading articles at LDP and of course google, and for Tiger/Leopard, although with fifteen years of experience with unix like OSes I am mac user only one year and I still find it hard to understand its internals. Maybe titles like "Programming Mac OS X - A guide for UNIX developers" by Kevin O'Malley and "Mac OS X for Unix Geeks" by Brian Jepson and Ernest E. Rothman can shead a little light.

Link to comment
Share on other sites

Thanks a lot everyone!

 

I had been a Linux (Red Hat, Ubuntu) user for a couple of years (on and off). I liked Linux very much and I even tried to use Ubuntu as a working environment for several months and finally decided it's not working. The biggest problem is MS Office (esp. Word) - the company I'm working for use a lot of in-house templates/macros - I found that I had to spend lots of time during the day in vmware.

 

Recently I switched to hackintosh and I used it for working (MS Office 2004 is very much similar to MS Office 2003). I found it's a much better solution for me (I like linux/unix, I can still use MS Office).

 

I had a vague idea about the relationship between Mac OS X and FreeBSD, but many things are not the same in terms of configuration as in Ubunut Linux - and I believe that you can do more advanced configuration in your OS X with better understanding of the underlying Unix-based kernel part of the OSX kernal - that's the reason I started this topic.

Link to comment
Share on other sites

Wikipedia is an excellent resource for the UNIX history.

 

As to the differences between OS X and UNIX/Linux, one of the things which hasn't been mentioned so far is Aqua/Quartz vs X11 and OS X's (purposely?) handicapped implementation of X11.

Link to comment
Share on other sites

  • 1 month later...

I found some interesting benchmarks:

http://bulk.fefe.de/scalability/

(At the moment it compares different BSDs and Linux. So you can see a bit Mac OS X similar to FreeBSD but also not that much because Mac OS X probably performs a bit different with its Mach-Kernel. But perhaps there will be some benchmarks added for MacOSX later. Or you can also do it yourself, you can download there all the tools.)

Link to comment
Share on other sites

  • 4 weeks later...

One thing to be aware of is that "Unix" is more an idea, or a style of OS, then an OS itself. Solaris is officially a Unix. Mac OS X is officially a Unix. Both are completely different operating systems.

 

To those who lament about Linux being "worse" that Unix: Linux pretty much is a Unix. It's not officially certified, but all it's paradigms are implemented the same way. It's SysV style rather than BSD (but so is Solaris), but calling Linux "not a Unix" is semantics. FreeBSD isn't a certified Unix either but it's probably the most "Unixy" OS left around these days.

 

All in all, my most basic opinion is: Linux is a good technical platform. Harder to use, harder to configure, and doesn't feel as nice to use, but it gets the job done, and does it well. It's great if you keep it away from a regular user. Mac OS on the other hand is slicker, more polished, and easier to use. The result, is that at work when configuring servers, or at home when "geeking out" (programming, tinkering, etc), I prefer Linux. When I feel more like just using the computer though (web browsing, IM'ing, listening to music), then I tend to use Mac OS more. Windows is my desktop work OS (kinda stuck with it there), and what I play games on at home. Of course, given that I only play World of Warcraft and EVE Online, and now both have Mac clients, I might just swap video cards between my Windows and Hackintosh and start gaming on the Mac too.

Link to comment
Share on other sites

Linux--developed by one man and then handed out so that now we have thousands of chiefs and not nearly enough Native Americans.
Linux is actually the kernel, and it is basically the same for every distro (with some minor changes).

 

Linux is... Harder to use, harder to configure, and doesn't feel as nice to use, but it gets the job done, and does it well. It's great if you keep it away from a regular user.
That is not necessarily all true. When I started using Linux I had only one year experience with MS. It depends on how motivated you are to learn (and if you have enough of crappy M$, you'll be motivated).Some distros are developed especially with Jo User in mind. As "it doesn't feel as nice to use", that is only an opinion. To me KDE feels great, and plenty more flexible than OS X.
Link to comment
Share on other sites

  • 3 weeks later...
That is not necessarily all true. When I started using Linux I had only one year experience with MS. It depends on how motivated you are to learn (and if you have enough of crappy M$, you'll be motivated).Some distros are developed especially with Jo User in mind. As "it doesn't feel as nice to use", that is only an opinion. To me KDE feels great, and plenty more flexible than OS X.

 

Don't get me wrong. I wasn't railing against Linux (I'm an avid Gentoo user :thumbsup_anim:). I also don't find it difficult to use PERSONALLY (been using Linux almost 8 years now and admin several Linux servers at work). Besides that, open source really is the way to go for long term quality computer software IMHO. I just think that it isn't very friendly to a new computer user.

 

Example: installing new software. On Windows - regardless of which version I'm running, I generally download Setup.exe, run it, and then after a few "Next" buttons I have a program with a link in the start menu. Mac OS - I download a .dmg file that works for most Mac OS's released in the last 7-8 years, double click it, and then drag the program to my Applications folder.

 

On Linux: for guaranteed compatibility I likely need to find it in my distribution's repository, assuming they carry it. If they do, it may not be (probably isn't) the newest version. I then have to install it using their update tools. Debian? apt-get. Gentoo? emerge. CentOS? yum. (sorry I haven't used any others in the last few years to know what they're using :D) Or I can use one of a myriad of GUI tools that will also vary depending on your distribution.

 

Want the latest version? I have two choices: find a binary package not only specifically built for my distro, but also to find one that matches my distro's version. If my distro is more than 2 years old, I'd give up hope on this route. After I get it I still have to use proprietary tools to install it. My other option is to download the source, then extract it. I think run a configure script. If all goes REALLY well, I can then do a make, then sudo make install to install the program. More often than not though, I'll need to install additional libraries/packages. Or I'll need to update them. Or I'll need to symlink them to another location that the configure script is expecting them to be in. Then I get to keep trying to compile until I get it to work.

 

And when I want to uninstall a program? I generally don't. It's a nightmare to track down every trace of a Unix program after they spew their files all over the place. It's usually easier to just leave it and quit using it.

 

Now, I'm a poweruser, as I'm guessing you are too. I have a CS degree, work in IT, and love tinkering with computer systems. None of the above really bothers me, and it pretty much comes second nature to me after using Linux for as long as I have, and it would after a while to many/most people on these boards. In the end though, I could give a Windows or a Mac machine to my mother, and she could handle using it and doing occasional updates just fine. She could probably USE a Linux machine if I set it up for her, but updating anything, or installing any new software, would never happen.

 

What I think would truly solve most of this is a new executable format for Linux. Have it be a container format that can contain a binary and all needed libraries to work on any reasonably new (I'd say a 10 year window is fine) kernel. Just set the execute bit, copy to /usr/bin (which could have a symlink with a more friendly name created somewhere), and you're ready to roll.

Link to comment
Share on other sites

On Linux: for guaranteed compatibility I likely need to find it in my distribution's repository, assuming they carry it. If they do, it may not be (probably isn't) the newest version. I then have to install it using their update tools. Debian? apt-get. Gentoo? emerge. CentOS? yum. (sorry I haven't used any others in the last few years to know what they're using :() Or I can use one of a myriad of GUI tools that will also vary depending on your distribution.

 

That is why I use distributions with loads of software in their repos. For instance a "smart stats" in openSUSE tells me that I have 11238 total packages available now. In Debian it is even more, but as of course you know Debian counts as extra packages what in SUSE are already included as dependencies.

 

Want the latest version? I have two choices: find a binary package not only specifically built for my distro, but also to find one that matches my distro's version. If my distro is more than 2 years old, I'd give up hope on this route. After I get it I still have to use proprietary tools to install it. My other option is to download the source, then extract it. I think run a configure script. If all goes REALLY well, I can then do a make, then sudo make install to install the program. More often than not though, I'll need to install additional libraries/packages. Or I'll need to update them. Or I'll need to symlink them to another location that the configure script is expecting them to be in. Then I get to keep trying to compile until I get it to work.

 

Yes, that is all true, but Jo User doesn't normally care about the latest version. Heck, I have never been able to convince my sister to update the BIOS in any of her computers, while it was obviously buggy and broken :)

 

And when I want to uninstall a program? I generally don't. It's a nightmare to track down every trace of a Unix program after they spew their files all over the place. It's usually easier to just leave it and quit using it.

 

Also true, but in any case it won't be a mess comparable to that left behind by Windows programs when you uninstall :D

 

Now, I'm a poweruser, as I'm guessing you are too. I have a CS degree, work in IT, and love tinkering with computer systems. None of the above really bothers me, and it pretty much comes second nature to me after using Linux for as long as I have, and it would after a while to many/most people on these boards. In the end though, I could give a Windows or a Mac machine to my mother, and she could handle using it and doing occasional updates just fine. She could probably USE a Linux machine if I set it up for her, but updating anything, or installing any new software, would never happen.

 

What I think would truly solve most of this is a new executable format for Linux. Have it be a container format that can contain a binary and all needed libraries to work on any reasonably new (I'd say a 10 year window is fine) kernel. Just set the execute bit, copy to /usr/bin (which could have a symlink with a more friendly name created somewhere), and you're ready to roll.

 

These things are beginning to happen, IMO. OpenSUSE checks for updates every time you log in, and normally it is quite safe to accept them.

 

I have also tried the one-click installs in openSUSE, and I can tell you that they are fantastic :D

 

True, with Linux it is a good idea to upgrade the OS more often than Windows, but that has its pros as well.

Link to comment
Share on other sites

  • 1 month later...
solaris is the closest thing to unix these days

 

 

Solaris has the best kernel out there, however, not for desktop use, I have it on my laptop currently and I am working on enabling wireless through ndiswrapper. After all it was not designed for that, even thoug OpenSolaris looks promising as desktop sys. I recommend getting it and if you have partition to spare go ahead, GRUB will do the magic automatically. As for Linux doitiros, i have ried 30 of them and Suse seems to be the best choice for me. Most people like Ubuntu, but it is not my thing. Also, what's better Linux or OS X, i have to say i was Linux user for a long time (started with UNIX though) but i was somewhat puzzled with OS X, thinking that it was artsy-fartsy OS for Photoshop geeks ant that's all, when in face OS X had many power users that I was not aware of. I swithced off form Linux on my desktop to OS X in 2005, and got a beautiful 17" PBook, all because OS X86 scene. Even some of my linux stuff for college was written in OS X shell, and I had to change paths here and there, anc couple of commands to make it work on Suse.

All in all they are all good, OSX is the most stabele and polished one.

Link to comment
Share on other sites

i was somewhat puzzled with OS X, thinking that it was artsy-fartsy OS for Photoshop geeks ant that's all

 

I am still a bit of that opinion, OS X hasn't won me over completely. Now I am using it more because of Leopard.

 

And BTW, this is the experience of a (pretty well known) developer:

 

http://blog.danieldk.org/

Link to comment
Share on other sites

 Share

×
×
  • Create New...