linux/UNIX concepts

Started by
26 comments, last by metal leper 19 years, 3 months ago
Hi all - Are Linux and UNIX operating systems, and how do they interrelate? What are systems such as SCO UNIX or Solaris, and how do they differ from just regular UNIX? And why do programmers tend to prefer Unix-based systems over Windows?
Advertisement
Quote:Are Linux and UNIX operating systems

Yes they are both OSs

Quote:and how do they interrelate

Linux is based on Unix

Quote:why do programmers tend to prefer Unix-based systems over Windows

More powerful functionality, you know what the os can do, windows has a lot of "eye candy" that slows it down, but I cannot say that programmers perfer unix over windows, its quite the opposite since Windows is kind of the standard today. But Unix/Linux is cheaper than windows.

Quote:What are systems such as SCO UNIX or Solaris, and how do they differ from just regular UNIX

Different versions and features, like Windows 3.1 compared to 95 and then XP.

You can also use [google] to find a lot more specific information on the two. I was just brief but can elaborte more if you need me to.
Quote:Original post by helmslar
Are Linux and UNIX operating systems, and how do they interrelate?
Yes. They're somewhat compatible with each other. There are standards they both conform to, you see.
Quote:What are systems such as SCO UNIX or Solaris, and how do they differ from just regular UNIX?
There is no regular unix, at least not any more. There are OSes that are called unix and there are OSes that are unix-like. The difference between them is just the name. (trademarks and such)
Quote:And why do programmers tend to prefer Unix-based systems over Windows?
A handy man prefers a toolshed full of every tool he could want. A normal person prefers a phone and the yellow pages.
UNIX was an operating system developed by AT&T Laboratories. It is now an operating system "standard," specifying a common set of core operating system APIs and programs. The idea is that source code written for one UNIX operating system can be compiled on any UNIX operating system. Details on what makes up the standard can be found here.

The first open source UNIX was BSD, and most commercial UNIXes nowadays are based on BSD, including Solaris and MacOS X. Linux was an attempt to write a UNIX compatible operating system completely from scratch.

Here are several common reasons why people prefer UNIX over Windows:

  • UNIX does more. Out of the box. Particularly when it comes to networking. The first networks were built with UNIX-like operating systems, whereas networking was an afterthought in DOS and Windows.

  • Reliability. Again, Windows was aimed for individual users and was totally inappropriate for use as a mainframe OS. UNIX had been around much longer and was designed to handle critical operations.

  • Reliability. The reason for the appeal of UNIX/Linux as a desktop operating system nowadays is that, by design, the operating system always assumes that the user is smarter than the computer. Microsoft has historically believed that "user friendly" means the operating system assumes it knows better than the user. This was true to an extent with MacOS prior to MacOS X, but then earlier versions of MacOS were also a lot simpler (i.e. it wasn't hiding functionality from the user).

  • Cost. The recent open source UNIXes are catching up to their commercial counterparts in terms of quality, but obviously cost a lot less. Even commercial UNIXes such as Solaris and MacOS X have simpler licensing schemes than Windows, and have much lower TCO.
Free Mac Mini (I know, I'm a tool)
If you want more specific questions, you'll probably get better answers from the UNIX forum down the page a bit.
Note that "unix" and "UNIX" are two different things. "unix" means unix-as-a-concept and "UNIX" means the original unix operating system, developed at AT&T and now owned by SCO. Obviously, the first unix-as-a-concept OS was AT&T UNIX.

unix-as-a-concept means any OS in the style of the original unix. It's difficult to categorize, but here are several key traits of a unix-as-a-concept OS:

1. Tends to be written(mostly) in c. Also applies to many non-unix OSs
2. Characteristic directory strucure, with / as root and everything under it
3. everything-is-a-file, where typically many i/o targets represented as a file
4. (for newer unix-as-a-concept OSs) POSIX compliance, which ensures that programs written on one POSIX unix will compile/run on other POSIX unixes with no trouble

Quote:Original post by Drew_Benton
Quote:and how do they interrelate

Linux is based on Unix


This is ambiguous; do you mean linux is based on unix-as-a-concept or the UNIX operating system?

If you mean Linux is unix-as-a-concept, then nearly all people will agree with you, especially since the creators of linux intended it to be.

If you mean Linux is based off of AT&T's old UNIX, as SCO is claiming, most linux people will disagree with you. The majority of them believe that linux was constructed entirely independent from SCO/AT&T UNIX.
The above is mostly correct. Linux resembles Unix in a lot of ways, and is POSIX compliant, which is a standard that both Unixes and Linux conform to.

Unix systems have grown from the Original Bell Labs UNIX into many forms, some of which are Solaris, HP/UX, AIX, and the BSD's. AFIAK they are all either a direct lineage of the original UNIX code, or at one time were rewrites based on that code. Linux, on the other hand, has been completly written from scratch and is not based on any Unix code. It is based on the same standards, which is why they are so similar.

I can't speak for anyone else, but I prefer the Nix's beacuse they are a lot more robust, secure, flexible, and feature rich. I prefer to program on Linux for the same reasons. Linux was originally written by programmers for programmers, so it contains a lot of tools that are helpful to programmers. The fact that Linux is also an excellent desktop and server platform is a secondary (but no means a minor one) consequence.

To quote Marcel Gagne: The command line is power, and I like it.
I prefer gui over commandline but I understand that for stability reasons cli is a better choice for system programs. I actually like all the linux distro packages you can download for free and play with them. Some software is unavailable under windows. Windows is pretty much "set it and forget it" type affair while one can tinker in linux, create his system the way he wants to. You have lot of choices that allow you to target slow and fast machines, lots of range there. Linux also doesn't force you to go where someone else ie. MS wants you to go. You don't need to upgrade your hardware for new os to get kernel bug fixes. On the other hand, the stability in windows kernels from versioning perspective allows for simpler or easier maintenance. But in the end I believe in a choice and linux has an ok system put in to support this. You're not forced to go with one desktop environment, etc. I've been windows user and now I'm tinkering with linux a bit after checking it out like I do once in a while. I think Linux on the desktop is becoming a reality, it just needs little bit more polish in terms of hw support. Xandros is almost there, Ubutnu and others follow. Lots of innovations brought forth like that automount/hotplug system, better installers, package maintenance tools, etc. Not to mention, the move to 64bit is happening on linux while MS only now goes into beta. It feels to be on the cutting edge with Linux in one way and a bit behind with some drivers on the other hand. Laptops and wireless is still bit iffy.
At least when I went to school most CS courses were done on Unixes of various types so newly-minted programmers were more familiar with programming on Unix than on Windows. Windows was the OS you used to write your term papers and play video games. Thus a bias towards Unix for programming.

Unix doesn't really have more tools than Windows but people rely on them more and thus it's more likely they'll be there. e.g. you can walk up to a random Unix/Linux box, type vi, and it's very likely to work. You can do the same thing on my Windows box and it'll still work but do it on most others and it won't.

As another thread pointed out there's a general philosophy attached to OS's for whatever reasons and it's hard to break out of that inertia. Unix/Linux is historically used for research, programming, servers, etc. Windows is used for business and "productivity" software (i.e. Office).
-Mike
Quote:Original post by Anon Mike
Windows is used for business and "productivity" software (i.e. Office).
I'd argue that it's only used for legacy business and "productivity" software. And games.

Most of the business software I've seen is just database stuff, and has moved to web-based services already (let's see... Access takes a million years to start. Choice: Upgrade all computer jsut so access can run? or upgrade one beefy server and have everyone use it over the network?), thus anything still running on the client's machine is pretty much just legacy stuff.

This topic is closed to new replies.

Advertisement