Is UNIX An OS?
gwernol writes: "David Every has an interesting article over at MacWeek that asks the question: is UNIX an OS? Before you jump off the deep end, read the article. It's actually a pretty good discussion of what components a modern OS needs beyond a kernel and a shell. It also discusses Mac OS X, the forthcoming 'UNIX++' from Apple." At the very least, it should inspire some decent conversation.
-
I would guess that the number of applications which require access to disk storage (or benefit from a file abstraction, a la sockets, FIFOs, unix "special files", etc) outnumber those which require a pixel addressable display by several orders of magnitude.
For the minute, accept the definition that an OS should provide an abstraction of the machine's hardware. Imagine I write an OS which is lacking a file system, and other groups pick up my (GPL) OS and start releasing their own OSes, all incompatible with each other. Arguably, what I have written is not a complete OS, but the foundations to write a OS on top of - as it does not provide an abstraction of the hardware.-
However, just for the sake of argument, let's pretend a GUI is a necessary component of an OS. Does a window manager, four xterms, and netscape count?
Yes.Okay, calm down, I just said that to freak you out. But seriously, uh... maybe. Is bash part of UNIX? Virtual terminals? What ls, cd, and rm? If we accept for a minute that the GUI is the appropriate abstraction of modern graphics hardware.... well I'm sure you can see where I'm going with window managers / virtual terminals. In a GUI based OS, the browser is increasingly taking over the jobs that ls/cd/rm performed.
-
I don't really want to have to waste precious disk space, memory and CPU time on useless stuff like file managers, desktop icons, and 50 different confusingly named "control panel" doohickies none of which provide any more than the most basic of configuration options, but I don't know what I'll do if I find out that my computer isn't running an OS anymore.
Sorry. It's a shame, isn't it-
[...and I'm already pulling my hair out over that previously very useful machine sitting in the corner with no keyboard or monitor attached. On the other hand, that it does all it does without the benefit of an OS is an absolute technological wonder.]
Bejesus, it's a miracle!Mmmmm, I did think about this one, and you can take it further, saying does a headless server need a gui, does a linux dedicate router, firewall, or X-terminal need a filesystem? So is a filesystem part of an OS?
But this is where I feel you get to the crux of the question {... and here it's going to get even more subjective, and I'll piss you off even more :-) ...} If you accept that an OS should provide an abstraction of the hardware, then you cannot simply a list of features an say 'an OS must contain these'. What constitutes an OS depends what hardware it is running on. That is why you can argue that UNIX once was a workstation/PC OS, but no longer is.
cheers,
G
You might as well argue that an Indy race car isn't an automobile because it doesn't have a cup holder.
"Operating System" is a technical term in computer science. It has a precise definition. Like most technical terms, you can't arbitrarily decide to change the definition (if you plan to communicate effectively). It's especially ridiculous to try to do so as part of an argument that depends on drawing definitional lines.
It seems that the author doesn't fully understand a few terms. For instance, a GUI is usually implemented by the shell, or some other userspace program. Also, UNIX was not used as the base of most operating systems. Unix-like operating systems were. The author seems to forget that the original UNIX OS was not a free or Free OS. It also contained more than a kernel and a shell. It also included "... the software ... that programmers and users need to make themselves productive."
I'm sorry, but this just seems too Macish for me.
gates' so-called "charity" was exposed as nothing more than another patheticly blatant PR scam LONG ago.
Leaked email exposes MS charity as PR exercise
(It's archived and the paragraph breaks are gone, but it's all there in black and white)
Not only were his true intentions exposed, it turns out that his so-called "charitable donations" are GROSSLY OVERVALUED!!!
If anyone actually BELEIVES this official propaganda that gates is just this warm, fuzzy, all around nice guy who would never harm a soul and wants nothing more than goodwill towards all men....
Well, I happen to own a couple of bridges in New York, some oceanfront kansas real estate, and a ton of Florida swampland.... er... vacation property that I'm sure you'd LOVE to buy!
john
Resistance is NOT futile!!!
Haiku:
I am not a drone.
Remove the collective if
Imagine all the people...
Typical fud. Ignorant knee jerk reaction. You sound like microsoft junkies and trolls when you talk like that, replace the words mac os x with "linux" and see if that sounds familiar.
Become your enemy.
a man, a plan, a canal, panama
The author states that "An operating system is the software that comes with a computer (or OS distribution) that programmers and users need to make themselves productive." So then where does that leave the definition of an Application? Although the line between what is an Application and what is a part of the OS is not always clear; the author's definition pushes the line to an extreme, and completely obliterates the concept of an application. The foolishness of his definition can be illustrated as follows: If I'm a graphic designer, and I purchase OS X from Apple, then by his definition of an OS, I can reasonably expect to find Adobe Photoshop bundled on the distributionn CD. Or any other high-priced piece of software that I need to be "productive. I think that this is pretty shaky ground for Apple to be treading on.
There is a mandatory lockout period after any IPO, during which no one closely associated with the company can sell a single share.
And given that VA's stock price took a powerdive into the toilet since their IPO, I doubt that ESR will have much money to give away when he can sell anyway.
john
Resistance is NOT futile!!!
Haiku:
I am not a drone.
Remove the collective if
Imagine all the people...
I can get FreeBSD, Solaris and Linux.
But, at least in the marketing perpective, there is no UNIX OS.
Are all of the above different operating systems? Or would you consider them different versions of UNIX
I know this is nitpicking but I am very interested in seeing your answers.
*Note: I had my own three-year love affair with the Mac until I realized the simple fact that PCs are simply better. And cheaper. So don't think this is because I'm a Mac basher or anything. I simply have always hated MacKiDo and its rabid brand of mac advocacy.
__________________________________________________ ___
rooooar
I used to be a Mac user, and when I was a Mac user I felt the same way about what is part of the OS. I don't blame the author of this articls at all for his feelings, because that is entirely part of the Mac way of viewing the world. However, I would call what the author calls an OS an OS distribution or OS package. Unix is definitely not an OS distribution.
Long live the Unix Way!
Some advertisers must agree with you that computers without monitors are computers.
CHEAP PC! ONLY $200*+!
*Monitor not included
+After $400 mail-in rebate with purchase of 3 years of internet service
The shareholder is always right.
While Miguel probably has a more sophisticated understanding of the difference between an os and an operating environment, he did recommend dictating "policy" in the core of the os, its kernel and system libs. This might include such things as a component model (bonobo) and even integration of a graphics layer and gui system, something unix has deliberately avoided to date but which Mac OsX seems not to be avoding.
I am not familiar with OsX like I am with linux, but it will probably have a more highly abstracted graphics and gui layer that is considered part of the os and there will be no choice. You either use it or write your own from scratch, in which case you may as well use Linux, which allows choice of a number of higher level gui and graphics libraries. In exchange for giving up choice, there will be connsistency and "standards" everywhere.
Let Apple have its bland homogenization but do not mess with the freedom we now enjoy with linux and most other unices as well. With a commercial OS, of course there will be standards, so in this way OsX is fundamentally different from Linux even if both are based on unix.
As another post pointed out, the author missed the fundamental distinction between an OS and an operating environment. Unix in an embedded device and unix in a desktop computer use the same OS but offer very different operating environments. So, let us allow a number of fundamentally different operating environments for unix (which is really being absorbed almost totally by linux) while leaving the operating system itself free of any of them. In that way Linux is fundamentally different from a commercial spinoff like OsX, which is limited in its capacity to grow by standards for a (single) operating environment which stifle innovation and the ability for the entire system to adapt. Therefore in the long run, OsX cannot really compete with linux, though it will offer a "consistent" desktop experience like any other commercial os which may be attractive to some commercial developers for those reasons.
Miguel knows this, as do others calling for standardization of interfaces and component models. But he may think we don't know it. By reminding those who would deprive us of freedom of choice that we do know, perhaps they will be willing to consider that if there way becomes the only way, linux will die, or at the least will be no different from any commercial os. Well, you can look at the source code. Big deal if you do not have a whole team of developers and the money to fund what is needed to fork linux when that happens.
This is pretty much a marketing article with little real meaning to anybody but your average consumeroid because it feeds him some "facts" to debate platform superiority with his friends.
The author is trying to be a Webster redefining CS terminology, and also to make an emotional appeal that OS-X is much more than Unix.
So what? Some people in the early '90's used to loudly argue that DOS was an OS and Win3.1 was an "operating environment". Who cares now? Last I heard an OS was all about providing/controlling access to hardware in some simplified fashion, but there are so many freakin' layers between applications and the basest kernel or libc routines that this comes down to which layers do you personally draw the line at between OS and app library.
Give a precise definition of operating system to your taste, and someone can tell you if a given piece of code falls under your definition or not. Is it all free software or not: that's a more interesting question.
He has basicly no idea what an OS is. Even how he starts to talk about shell being part of OS. You can clearly see that this is Mac zealot trying to propagate some new Mac product using few buzzwords.
If programs would be read like poetry, most programmers would be Vogons.
It seems, by this article's definition of an OS, that He would not consider Linux an OS, but Debian, RedHat, or any OTHER linux Distribution is an Operating system. Continuing along the lines of this thinking, RedHat/OS and Debian/OS and Slack/OS are all DIFFERENT operating systems that happen to be binary-compatible if the right parts are installed, Right?
Yeah. Suuuure. In reality, All of linux is linux, And therefore one OS. The only differences in the linux world are the init, packaging, and installation.
But how does this relate to Unix WITHOUT Linux factored in? After all, linux is only a Linux Clone, even if it IS a good one. The many Unices Become, via the article's definition of what an operating system is (ignoring the claim that unix ISN'T an OS), Different Operating Systems. When you get Unix now, you DO get more than just the kernel and a shell and some utilities. Unix wasn't designed for desktop use, so it doesn't necessarily NEED a GUI, no matter what Apple wants us to believe.
This Article DOES seem biased in a 'Gui, Gui Uber Alles' kind of Way, doesn't it?
get 0wned. irc.w30wnzj00.com
Many of us on slashdot are probably leery of including the shell, the utilities, the libraries, and much of the stuff appearing in the POSIX standard (and on our hard drives) in what we define as an "operating system". Instead, most of those pieces constitute what we recognize as an "environment", and we're very careful to separate the "environment" from the "operating system" in our minds.
But notice what the author does -- he included the shell and the libraries in the operating system, with the same breath he uses to include the drivers. (Since you can't have an operating system without drivers, and since the author mentions the drivers, the shell, and the libraries all in the same sentence, it simply follows that you can't have an operating system without a shell!)
Now the author has the perfect slippery straw man. Since he's included part of the environment in the operating system, he can include it all! Now, the entire environment can be part of the operating system -- the GUI, the text editor, the pretty little clicky-clicky thing you swear at when you're trying to set up a new printer -- everything you get on that installation CD! After all, Microsoft representatives have claimed, under oath, that the web browser is part of the operating system, so obviously the operating system is quite a bit more than just the kernel!
But it's a false argument. Apple is in the business of developing excellent user environments -- environments that many people argue are worth the money. Since the word "user environment" isn't marketable, most companies (Microsoft, Sun, Redhat, and Apple included) have developed the marketeer's new definition of "operating systems," which simply means "environment plus operating system" to most engineers. Hence, the confusion of terms that makes tripe like this article possible.
There are many ways the author could have made the distinction between the environment and the operating system clear, and there are many ways the author could have worked to convince us that the environment Apple is developing is going to be superior and worth paying for. But he chose not to, either out of ignorance, or marketing hype, or both. Instead, he confused the marketeers defintion of operation system with the engineers definition, and he hoped to slip difference by us in this awful article.
In any case, the author should do nothing in your mind to detract from what Apple is doing -- remember that what they're building is separate from what any wonk at Ziff-Davis might say.
Slashdot is jumping the shark. I'm just driving the boat.
At least that's what the article says, to bring it to a point.
...
Ok, then perhaps, I simply don't need an operating system
First, UNIX isn't an operating system. Today, UNIX is a branding for a variety of OSes that meet the UNIX specification. And the UNIX 98 workstation specification includes X, CDE, and Motif. So all OSes that meet the UNIX specification simultaneously meet Mr. Every's standards.
But furthermore, MacOS X is NOT UNIX, since it does not include X, CDE, or Motif.
So sorry, David! Thanks for playing the Game of Semantics. Next time check the definitons of your terms before playing!
Steven E. Ehrbar
A G4 Cube is a vegetable????
Sorry, couldn't resist...
# debian/rules
If it weren't for the Unix operation systems, we probably wouldn't be reading this right now.
Whatever turns you on I guess.
Excuse the Unicode crap in my posts. That's an apostrophe, and slashdot is busted.
The UNIX admins at my office do everything from the console or telnet. A couple use the popular Win32 X client "Exceed", but only for the xterms. :) The NT admins use a GUI, but they don't have a choice in the matter. A GUI has never been necessary to properly admin a UNIX box, and that is a "plus". An NT server wastes countless megs on GUI crap which increases the hardware requirements and I've been told by NT admins that the integration of display code into the kernel in NT4 has reduced stability.
*Ahem*... IMHO usability does not define power; would you argue that MacOS is the most powerful OS in the world because it's supposedly so easy to use? Notepad does not even come close to the power of vi... it doesn't even have regexp search and replace. I'll stop there because we're venturing dangerously close to provoking an editor flamewar. :)
As for "checking my facts", that shouldn't be too difficult, seeing as how I'm posting this from NT5. (I may be a UNIX goon, but I proudly dual-boot. GNU/Linux is great for development, but not for games. :) Yep, Notepad is here. Yep, it still sucks. Anything you'd like verified? Such as the "My Computer" icon or color of the taskbar? :-)
I mean, no offense, but have you ever really used vi? I've never met anyone who knows how to use it that would ever even dare to compare it to frikkin' Notepad. I even have vi installed in NT, on the off-chance that I have to edit anything.
UNIX runs some of the most powerful computers in the world. The market for mainframes and supercomputers predates the PC market, and will still exist even if McNeally's wet dream comes true and we're all using JavaStation NCs in ten years. I feel that the high-end will gradually regain its position of "where the money really is". And no one who has ever priced a fully loaded E10k or RS/6000 machine will tell you that there's no money in that market.Regardless, I can't think of when UNIX has ever even been strongly marketed as a PC desktop OS before the current GNU/Linux buzz. And there's the upcoming MacOS X. Unix (after a fashion) is slowly becoming a viable desktop OS for "average" users.
It doesn't always get the money, and almost never the chicks---------///----------
All generalizations are false.
--
I like to watch.
Or the question should be -- Why should the (l)User care what's the "application" and what's the "OS"?
Of course, they end up having to care when they can't open someone's new Word format, or a website is unviewable in their browser, but this imposition seems arbitrary and annoying to them.
The point of the interface, at least from a Mac user's standpoint, is to enable the user and the software and get the hell out of the way. On Unix "enabling the user" has some odd requirements that sometimes require it to be in the way. They might swollow upgrading their word processor or changing their browser, but it's totally unfathomable and irrelevant to them why they would or should need to change their "window manager" or "shell", even though there might be some very good technical reasons.
When I hear the word 'innovation', I reach for my pistol.
UNIX isn't an operating system! It's a way of life! (:
It seems that the main reason that the article states for Unix not being an OS is that they believe that the "User Experience" is part of the OS.
I personally wonder when the user experience becomes so much of a factor that the operating systems ceases to be an operating system and is only a user interface. If we had linus and the open source community working on the operating system, jobs and woz working on the interface, and gates on the marketing... wouldnt that be interesting...
--Ks9
GNU/Unix sure is an operating system.
Yep! ;)
--
rickf@transpect.SPAM-B-GONE.net (remove the SPAM-B-GONE bit)
"People will pay big bucks for the luxury of ignorance."
I disagree with the author's definition of what an operating system is. Well, he is a Mac person, so his brain is probably atrophied from lack of use.
Still, even if you accept his definition of what an operating system is, don't most *nix distributions come with a GUI and a browser etc? All commercial Unices come with some form of CDE or something like it. All major prepackaged Linux distributions come with X and enough software to choke a horse. Just because they are not nailed to the kernel doesn't make *nix any less of an operating system by his definition.
The modularity found in *nices is a superior design. Who wants everything integrated. When one part fails it all fails. Any audiophile will tell you that a separate tuner/preamp/amp setup is better than a reciever. And don't get me started on integrated video chipsets on motherboards. Puh-leeeeze!
A dyslexic man walks into a bra.
YESSSS!!! Someone finally answered the question "Is UNIX an OS?" Everyone else on this board seems to think the question was "what is an OS?" or "who hates Apple?" or "who thinks people that use GUIs are lame?".
Himi is right... UNIX is a concept, not a product. You can't hop down to Frys and buy a box of "UNIX". You can go to Frys and buy Debian Linux, Solaris, HP/UX, Red Hat Linux, etc. (okay, so I know you can't buy Solaris and HP/UX at Frys, but I'm making a point here!) You can't get/buy/steal "UNIX". You can only get/buy/steal a flavor of UNIX.
That fact is what makes "UNIX" not an OS.
That definition might be correct, but doesn't address the real problem of what X to give people to let them run the programs they want to run.
Like it or not, that X is usually only found on the OS CD, so in layman's terms "it's in the OS". A little packaging and marketing go along way towards how a user feels about an environment.
When I hear the word 'innovation', I reach for my pistol.
Oh, Christ, more of the anti-Mac bias (or is it just anti-!Linux bias?) evident so often on Slashdot... As someone who's programmed for the Mac OS, yes, there are a lot of stupid things about it, but it also has the best UI around.
/etc. XML-formatted property lists... Drool...
What's really important in an OS depends on what you're using it for. Using the current Mac OS for a server would be just plain stupid (which is probably why my company is doing it), just like making an average user use Linux+fvwm would also be stupid. (Dodging rocks thrown by Gnome fanatics) Linux and Unix simply don't have a good GUI yet. The Mac OS does, and has for a very long time. Just as Unix has been refined and polished with time, so has the Mac UI. Understand and accept that, and you'll make the step from zealot to rational human being.
That being said, you missed the point of the article completely. The author is using the changes in the computer world's landscape (move towards personal computers from mainframes) to make what may appear to be a purely symmantic distinction. His real point is that there's now more to an OS than just a good kernel and some utilities.
GUI will make or break you for the average user. They don't care if their apps don't crash if they can't launch them in the first place. Apple understands this, and has filled Mac OS X with Ooey GUI Goodness (tm). For the rest of us (no, not them, us with the clue), OS X just happens to have a very solid foundation. They've also started an effort to clean up the mess of dissimilar config files that is
I'm not sure these worries apply. The reason Windows crashes so much is that it puts everything into _kernel_ space (e.g. GUI), where any flaw can crash the whole system. Linux and BSD and the rest only have minimal kernels (even though, for example, KDE Linux is a fairly heavyweight OS), so failures rarely can take down the system. Since Apple is basing their OS on the same little kernel as BSD, unless they hack the kernel their system should be fairly buttelproof. After all, they've done it before (A/UX, a decade ago, which gave you a microkernel but layered MacOS on top of it in a very stable fashion). My guess is by the first or second upgrade to MacOS X it will be an incredible environment for development (OpenStep and such rocks!), and as stable as anyone could ever want.
somehow calling it "Unix++" doesn't make me think that it'll be good or worthwhile.
Oops! Not "buttelproof". I meant "bulletproof"
I would guess that the number of applications which require access to disk storage (or benefit from a file abstraction, a la sockets, FIFOs, unix "special files", etc) outnumber those which require a pixel addressable display by several orders of magnitude.
However, just for the sake of argument, let's pretend a GUI is a necessary component of an OS. Does a window manager, four xterms, and netscape count? I don't really want to have to waste precious disk space, memory and CPU time on useless stuff like file managers, desktop icons, and 50 different confusingly named "control panel" doohickies none of which provide any more than the most basic of configuration options, but I don't know what I'll do if I find out that my computer isn't running an OS anymore.
[...and I'm already pulling my hair out over that previously very useful machine sitting in the corner with no keyboard or monitor attached. On the other hand, that it does all it does without the benefit of an OS is an absolute technological wonder.]
Don't you just love it when authors make up new definitions to support their article :) not!
An operating system is the software that manages the resources (hardware?) of the computer. These resources include but are not limited to: RAM, CPU, Disk storage, Network access, and other peripheral devices.
That's all. It is that simple. Users may want more to be bundled with their purchased hardware, but just be cause Dell puts Microsoft Office on my computer when I buy it doesn't make it part of the operating system. Just because Microsoft puts Notepad in the Windows box, doesn't make it part of the operating system.
David Corbin Promote Freedom - American Liberty Foundation
I think he clouds the terms of operating system with that of an operating environment. Is a CLI part of the OS? My opinion is no. Its an application layer program that interacts with system services to make doing stuff a lot easier. The same thing takes place with a GUI.
As for his comments of, look at all the programs a modern user needs that a kernel and CLI don't provide. Well DUH!!! Why do you think Linux distro's like RedHat come with all sorts of additional software. Is that the OS though? No.
And I don't care what Brother Bill says, there is no point that I can see with merging the browser in the operating system. Merging it with the GUI is another aspect.
The only thing that makes some UNIX's obsolete is the fact that they are not at the microkernel stage. Then again, I don't know that anybody has successfully pulled the microkernel thing off yet. NT had a chance, but then they started breaking their own rules...
Then again, maybe I'm too much of a purist....
-- A computer without COBOL and Fortran is like a piece of chocolate cake without ketchup and mustard
--
--
We have fought the AC's, and they have won.
All of my servers run linux without X and without a monitor... am i running os less servers?
This is what's called arguing from the particular to the general. It's not logically valid. By your argument, it there is some part of the kernel that's not used on someone's system, then it's not part of the OS. Is telnet part of the OS? You don't need to have it or networking at all for that matter. Just because you don't use it on your system doesn't mean it's not part of the OS.
I don't know about you, but I don't run anything called 'Unix' on my computer and call it an 'OS.' So I guess it makes some sense...I think of Unix as a standard, really, which gets implemented--and thus Linux is a Unix implementation, as is BSD, although BSD has 'original Unix code.' We all know there are a lot of Unices, but there aren't a lot of full-featured OS's that brand themselves 'Unix.'
On the other hand, Unix still does have the guts to be an 'OS,' in the same way that DOS 2.1 does. If that's all that's on your machine, then it will get you there. Most Unices have complete tools for text editing and printing even without the GUI, for example. If all I had was a Unix on my machine(like my zipslacked laptop for example)I could still get the job done, the way I did on DOS 2.1. It's not that the minimum requirements of an OS have changed. It's that a lot of other things have become 'necessary' to end-users. Most windroids and Mac abusers wouldn't even think of using a GUI-Less computer--that doesn't mean my X-less install of FreeBSD is any less an 'OS.' It's still packed with killer apps, that give at least as much functionality as winblows or Mac. Built-in Unix multitasking, IRC, screen...VI. But it's something that people want...and I want it too, sometimes, like on my workstation.
The definition of 'OS' is flexible these days, is what I'm getting at. I prefer to look at it as the user's method of operation, instead of the computer's. My 'OS' includes NT, and it also includes a cli-only unix machine that I use remotely. It seemed to me the best way to get what I wanted--windows as my 'window manager,' with a great Unix constantly available. If I did hardware installs, even if they included a bunch of computers, I might as well be calling it an 'OS.' So, basically, what I'm trying to say is 'whatever.' The whole article is just elucidating how Mac OS X looks at Unix...which is very accurate in their case. And let's face it--Unix alone won't be getting Mac abusers where they need to go.
No, any modern OS does not have to provide such an environment. Computers without monitors running internet services have no such need. A hand held will have entirely different needs. A desktop has it's own set. That does not change that they all have operating systems which do nothing but provide an environment for running programs in and interfacing with the hardware.
Believing that the term 'OS' should include things like 3d api's and desktop environments comes from a desktop-user-centric view of computers. Those things are needed for a desktop environment, but it has nothing to do with the OS.
Attempting to confuse and obfuscate terms like operating system doesnt really do any good. Use something else like desktop environment to describe what you mean.
What I meant to say was:
Here's the difference between an OS and its apps: /bin; ls -lR /sbin) <(ls -lR /usr)
~$ diff <(ls -lR
--
--
We have fought the AC's, and they have won.
You forgot a ^H.
witty sig goes here
Sure, in the old days, there were cars without power windows and locks, cruise control, and automatic transmissions...but nowadays drivers assume those as part of the driving experience, so a "car" that doesn't have those isn't really a car.
To Mac zealots, if it isn't Macintosh, it isn't an OS. I think this article amounts to a bone thrown out to the Mac bigots who fear the encroachment of Unix geekdom on their pristine little environment.
N4st0r, trixx0r h0bb1tz0rz! Th3y st0l3 0ur pr3c10uzz!
... we'll see that David Every is writing towards people that are most likely scared of the complexity of UNIX. These people also are Mac users (as am I), which think in terms of the user, not the computer.
So Mr. Every looks at the term "operating system" with these two facts in mind.
1. An operating system is something that allows the user to operate a computer.
2. For most users, a kernal and shell is not enough to allow the user to operate the computer.
Therefore, from a consumer standpoint, UNIX alone is not an operating system. From a server standpoint, UNIX is an operating system, but he is not writing toward hard core Administrators.
He then goes on to say that Apple is taking the foundations of UNIX, and placing the parts needed on top, so that the intended user can operate the computer, which is an article trying to calm the nerves of the mac users that are afraid of this change.
In closing, if we look at the computer science definition of "Operating System", David Every's article is flawed. But if we look at the writer's perspective, and his intended audience, the logic is actually very good.
Looks good, how about.....
:)
atomic statements -> functions -> subroutines -> programs -> applications -> operating systems -> hardware
--fatboy
AFAIK, not really, but it isn't all that much of a stretch for a Mac advocate. See the entries for multics and unix in the Jargon File:
Multics: MULTiplexed Information and Computing Service
Unix: In the authors' words, "A weak pun on Multics"; very early on it was `UNICS'
The usual CS explanation of what an OS is involves notions of a central core of functionality that mediates interaction between applications and the hardware, and between each other. It provides the services that the applications require.
Now, if the only applications that you're interested in are (for want of another example) GNOME applications, you could argue that the services that they require include the gtk widget set, the bonobo system, whatever the new, super-duper printer handling system will be. These applications all expect to be able to follow links and open help files with some sort of system browser.
It's still Unix, though. Unix is much more than just the kernel. Unix is the whole shooting match.
-- Andrew
>And guess what? Nobody outside you Mac uses really cares about OS X? Why should they? It doesn't offer anything that Unix users really care about.
err, what about www.gnome.org ?
Y'all expected what exactly from a platform advocacy magazine? C'mon, the average Mac advocate, whether they're a clueless fsck like this author or one of the more technically proficient Mac fans, is going to proclaim whatever Apple shovels out as the greatest thing since sliced bread even if it's one of Steve Jobs' turds encased in translucent green plastic.
Apple people love their Macs. Granted, it's in the way that a parent can be fiercely devoted to their severely retarded firstborn, but that's how it is. And a magazine that makes money by helping Apple sell more Macs isn't likely to print an article titled Doh! I Wish I Had a Commandline!
What's annoying here is that another clueless luser is appropriating a term with a long tradition and misusing it because, well, he's a boorish luser. If you got him alone, you'd have to start by explaining that the PC case is not a "CPU" or a "hard drive" long before you got around to defining an operating system. Ignore this crap.
--
Proud member of the Weirdo-American community.
What's more, UNIX (especially Linux and other open-source UNIXes and UNIXlikes) is built so that the user (or sysadmin) can add exactly what is necessary for the task at hand without being forced to have a dozen layers of eye candy that don't add anything for them . . . or run *any* of several graphical interfaces to get exactly the "user experience" they'd like, instead of the particular one that the OS designers decided they'd get.
Like someone else said, virtually anything I can do with MacOS or Windows, I can do with Linux. And I've got a lot more flexibility in how I do it and what it looks like. You're telling me this is a bad thing? I trust myself to determine what I "need to make myself productive" a lot more that I trust an interface designer at Apple or Microsoft...
Ah, I see. But the "DOS prompt" (or, for exmaple, the linux kernel and command line shell of choice) would count as an OS under his theory?
-J
Karma: T-rexcellent.
Then I posted this message without an operating system to a server not running one. And the server the article is hosted on? Also not running an operating system.
I would say that the "Operating System" (i.e. the system that operates) consists of the code that, when removed, the device it is controlling ceases to function.
:-)
Everything else is an application. Many applications affect the state and configuration of the OS, but that doesn't make them PART of the OS.
That's a pretty literal reading of the phrase, I suppose.
The print button in Word "operates" the printer more effectively than the printer setup in control panel (which only prints a test page) - does that make it a part of the OS? Not by the definition I presented - you can remove everything down to the printer driver and still have a technically functional printer. I can't wait for someone to sue MS for not including this essential component with Windows as a freebie.
This is not to say that notepad, emacs, Explorer, Netscape, etc. are not important, nor that they should not be bundled with the OS, but they are not fundamental. I think MS demonstrated that with their pathetic attempt to make Explorer an "inseparable component of the OS."
sig fault
To break out of Anti-Microsoft dimension, it's important to note that Apple has always had a unique view of the "operating system", and those views are still harbored by the userbase today.
In the early days, Macs didn't even have an operating system from the marketing perspective. It was just the Macintosh Hardware/Software System that happened to have System file 4.12 installed. The term "MacOS" wasn't official until the cloning era.
Apple takes great pride that they were the first people to see that "policy" in a mainstream OS is a value add for most users, and furthermore, they did it right. The users now have this expectation from other OSes.
The pre-monopoly Microsoft view was probably just a sheepish copy of Apple's attitude, and the current monopoly Microsoft is tied up with economic tying and legal reasoning, as you say.
When I hear the word 'innovation', I reach for my pistol.
>Will there be a prompt?
>Will cpio work?
Is that relevant tho? If the OS just loads up a webserver and there is no user interaction in any way but over the net, does it not run an OS? Even if it just boots up, and starts a program with no input or output, it's still running an OS.
I think his point is invalid. The concept of an OS has nothing to do with desktop user environments.
I didn't mean to suggest that Microsoft is the only party that is guilty of stretching the definition of "operating system" to meet whatever criteria that is convenient to them. All that I'm saying is that if you use the definition of "operating system" that you find in a typical Computer Science textbook, you're going to find that it differs wildly from what Microsoft, Apple, and (to address the other reply) GNU say.
--
--
The New World Order is upon us, and it's about damned time.
Remember that when you say "most people" you mean "most OS researchers".
Anyone else (and maybe they're just idiots who have been mindfucked by the ParcMacWin conspiracy) would agree with Every. To them Windows, MacOS, and the RedHat distro are OS's.
It's funny that we just had a discussion about computer historians, where many people took the attitude that they're either unnecessary or just store obsolete equipment (that's an archivist, not a historian!), when this thread is a perfect example of why we need computer historians.
Sadly, words and language is not a simple formal system, as the usage of it falls into the category of communal consensual reality.
Definitions evolve and competing definitions can coexist. It's fuzzy logic; there are no absolute truth values here. But I'm no semantician; there have been many people who have spent a lot more time and intelligence dealing with the issue than I.
It really does frustrate me how juvenile so much of the discussion is here; and I don't simply mean the "Mac Suxors" comments. I'm also referring to the sloppy rhetoric that people use, employing nearly every logical fallacy under the sun, and there are a lot of them.
The most frustrating thing is that everyone on Slashdot isn't a juvenile; if they were, the juvenile behavior would be not unreasonable.
--
Make mine methylphenidate.
It certainly is. And since my old P166 came with Descent and Panzer General, I suppose that those are parts of the OS as well - according to Everly Quality Research(tm). Not to mention my mousepad.
By that comment, I meant that the Internet probably wouldn't exist as it is. Secondly, Windows probably wouldn't exist as it currently does. I've read that Windows is actually compiled on Unix systems. Can anyone verify this?
The definition of an OS used here is rather foolish and extremely fuzzy. An operating system really is just the lower level kernal which allows for file, memory, and graphics (perhaps) management. You could make an arguement that Unix isn't too great for modern PC's because it doesn't include any graphics/gui support (considering X separately).
The OS plus everything a user needs is something separate entirely. You could, perhaps, call it a "user environment." It is specific to each and every user. I need a file manager, web browser, word processor, telnet client, IDE/compiler, and some graphics apps. But the woman nextdoor needs a file manager, web browser, word processor, spreadsheet, and database. Should all of the above be called an operating system since we're both users and we both use all those apps. If so then MacOS X probably won't be an OS either because it likely won't come with all that.
Besides, how do you deal with other things like internet appliances? Is the entire Palm the OS because it contain's everything the user needs to use for that matter is my hardware, monitor, keyboard, & mouse part of the OS because I need them too? With their nice pretty transparent stuff Apple might like to say so, but I would disagree.
credo quia absurdum
That definition is old and incorrect. Trust me, I have three degrees in Computer Science. Some old OS textbooks still quote that antiquated old definition. The modern definition of OS is a system that provides all commonly required services. Notice that this is a moving target.
To quote John Ousterhoot (of Tcl fame) back when he was teaching the OS course at Berkeley (1980s): The essence of an operating system lies in the services it provides to user programs
Are hard drives common? Yes, and therefore the drivers are part of the OS. Are hand-held wireless scanners common? No, and thus their drivers do not come with the OS.
Saying that an OS is a program loader + file manager is tantamount to saying that a computer is a collection of vacuum tubes hardwired together to perform a computation. At some point in the past these definitions were correct. Today they are outdated and have been updated by lead researchers in the field (such as Ousterhoot). Problem is they haven't made it into some texts. But it has into others. Silberschatz writes in Operating Systems Concepts:
This definition is closer to the McWeek one that to the one "from anybody who has a degree in CS".By the way, I think the author of the article reads slashdot. Viz. from the McWeek article: It would be like calling a motor, transmission and a suspension a car; there's a lot more to making a car (or an operating system) nowadays. About a week before that yours truly wrote in slashdot: Defining an operating system is similar to defining a car. Strictly speaking four wheels and an engine make a car. In practice, you wouldn't even consider purchasing something without air bags, seat belts, cup holders, padded seats, cargo space, windshield wipers... you get the point.
Linux took a giant step when Linus finally clued into this a while ago. He wrote in Communications of the ACM in April 1999: The most esciting developments for Linuz will happen in user space, not kernel space. He sees the OS as a program environment encompasing from kernel all the way to user guis.
at least the graphic subsystem is not correctly supported by Unix... if an OS is what makes the software able to control the hardware in a unified, somewhat abstract way, then Unix isn't an OS. Try to control the 2D or 3D engine on your graphic cards with JUST Unix - no X-Windows or OpenGL allowed ! So Unix+X-Windows+OpenGL could be called an OS (I'd rather call that "a bunch of API thrown on top of what was an OS decades ago"), but Unix alone certainly lacks some stuff to make it a fully featured stand-alone OS.
An operating system has two main tasks, namely memory management and task switching. After being loaded into the computers' memory by a bootloader, the operating system controls the memory of the computer, and provides several API's for the applications. In the case of a multitasking operating system, it determines which applications should run, and in which order. Also, it handles input and output to and from attached devices (e.g. harddisk, printer, screen, ...)
Everything else is an application, controlled by the OS.
All cars accept maybe fleet vehicles or something come with a radio, ALL of them, enough to be standard. Some people would argue for the necessity of a radio in their car, I know I would. What are you trying to say, maybe would should really limit ourselves and walk everywhere, because we don't NEED a car. Give me a break, give up the definition, peoples needs have changed, so the OS needs to change. Everything happens this way, I don't understand why so many people on here are so stuck on this old world view of an OS.
We have a winner! Give the man an award: he has just hit the nail on the head. Nobody but nobody wants naught but an OS. An OS by itself is utterly useless to a user. User programs (applications) are what make a machine useful. The fact that most OS's come with several of these bundled is, therefore, not surprising. However, calling this bundled application set an OS is simply not true to the definition of OS.
So, what it really comes down to is that most people don't know what 'OS' really means. The fact that this happens to include Mr. Every and most GUI users doesn't surprise me. MacOS and Windows are designed to be black boxes where you point and grunt and it just works - no understanding involved.
So, should we just dismiss this as more lusers^H^H^H^H^H^Hconsumers blithering about stuff they don't understand? NO! We, the educated, must educate them! Education is the key to the 'information age'. Without it, people will be bumbling about in the dark when they sit at their computers.
To that end I would implore everyone who knows better: don't let misuse of terms slide. A lot of people simply don't know the vocabulary to discuss computers intelegently, so they grope and muddle and spread partial or bogus information, such as the misconception that an OS includes all these user apps.
Let's whip this misinformation beast!
EOT
I love both UNIX and the MacOS, and I can see the point that this article is trying to make. Where does one draw the lines on what is in fact a modern operating system.
For example, in the early 1980's Atari came out with an Operating System for their PC's that they called DOS1. It was simply a menu with about six commands on it, and yet then it was called an operating system.
A few years later, Atari also came out with STOS (later on used for the AmigaOS) and Commodore came out with GEOS (Now owned by Newdeal), which are now not usually regarded as operating systems. But they were then.
As technology changes, people seem to continually redefine what an operating system is. If you had asked the programmers on those origional product teams, they would probably have said that those products were valid OS's. If the modern flavours of UNIX were not around today, everyone would probably say that UNIX is not really an OS either. People have their own definitions of what an operating system should do.
The clash of honour calls, to stand when others fall.
I think it's obvious that a journalist who covers the Macintosh would feel the definition of an OS includes the applications he mentions. Since the demise of the Apple II, Apple has included applications such as a GUI interface, control panel, etc, in all their models. Innovative computers such as the Lisa and Macintosh should be applauded for breakthoughs they made in the desktop 'user experience'. It is quite possible the author has used a computer without a shell since 1984. We should thank Apple for this option, because it has created benefits for all of us in many ways.
Categorizing UNIX as a non-OS is false. However, I still find his argument fascinating, not on it's merits, but in the fact that it indicates that many users don't really understand the fundamental software components of their computer. I am not upset by this as much as impressed at the rapid advances that have been made which allow my Mom to check her e-mail.
I agree with you here. I think the way it'll work out is like this: OS X is not UNIX, and it will not be UNIX, because UNIX is not an operating system, it is a way of doing things. (In the same way that King Crimson is not a band, but a way of doing things) Instead, we'll call OS X BSD. OS X will be an adaptation of one of the instances that we usually associate with the UNIX way.
This article is not informative, and patently useless. This guy is simply trying to argue semantics over the meaning of 'Operating System'. If 'Operating System' equates (it doesn't) to 'All code which is responsible for providing the end user experience while using the computer', then, for joe average, linux (and unix), Sucks. Gee. No kidding. If 'broke' equated to 'Having lots of money' then broke people would be very successfull in life. If 'war' meant people running around hugging each other, the world would be a better place. But neither is true...
--
$x='S24;r)>63/* h@<5+oZ)32"5cz';$me='phroggy'x$];
$x=~y+ -xz+\0-Tx+;print$_^chop$me for split'',$x;
I'm now frightened and confused.
James
It's right - there is no UNIX anymore. UNIX is now just a "standard" promulgated by the X/Open Consortium. When you buy a Sun workstation, you don't get UNIX for an operating system - you get Solaris. When you buy an IBM workstation, it's not running UNIX, it's running AIX. In the past, the word "Unix" was an operating system - now it's just a name for a list of features that an OS has to implement to be UNIX-compliant. It's like CDE - CDE is software, it a set of features a desktop has to implement to be compliant with the CDE standard; hell, Windows 3.1 was based on CDE.
Just my two cents...
...but it's being eaten...by some...Linux or something...
what a strange position for mac advocates to take - that the defining thing an os has is the set of services it offers to a keyboard and monitor interface. so we need a gui and streaming audio on our mail servers now? has anybody warned the government that our defence system is depending on supercomputers that do not even have operating systems? the glory of unix is its flexibility. the author missed that, which is why he overlooked that unix is not used just because it is 'cheaper and easier' than rolling your own kernel (that's why apple didnt stay with the kernel they made).
The authos is confusing the issue.
He seems incapable of making the distinction between OS and _applications_ running on that
OS. This is not surprising given his Mac background where everything is integrated into one monolythic bloc.
I am a software engineer also and have never liked
the way the MacOS+Applications have me, as a user, removed a couple of steps from the underlying machine.
I have never owned a Mac and probably never will. Not becasue they're bad machines, they're excellent for what they're intended, but they don't give me what I need/want from a computer.
/Andrei
Personnally I like how SUN distinguish SUNOS and Solaris.
SUNOS is the core operation system (in the tradition sense).
Solaris adds value to SUNOS by providing X11/CDE/NIS+ etc to give an "Operating Environment", but still needs SUNOS as the core to provide services.
Nowhere do I see "browser", "graphical user interface". "media player", "control panel", "extension", etc in that definition.
The author enjoys making an analogy between cars and operating systems. So be it, lets run with that one shall we?
No, it'd be more like calling a plank of wood with wheels and a motor a car, and it would be. It may not be the nicest car, but it is still a car.
Listen you can buy an old used beat up chevette or a brand new jaguar. Right, the jaguar has a cd player, air conditioning, power locks/windows, electronic adjustable heating/massaging seats which bring you to orgasm on the interstate, the whole deal, but the chevette is still a car, and you can't say that just because the chevette doesn't have cruise control that it isn't.
Unix, with its kernel and shell, is still an operating system.
-- iCEBaLM
What you say is right, considering the fact that
an old linux box that's been lying under a metre of dust for the past 2 years, with an uptime of 2 years, doesn't have to have a screen and keyboard to be interfaced. an interface can be telnet, or something like webmin, where you are physically far away from the machine, because faceit, you only have to be near the machine to switch it off and on, most of the sentiment coming from windows and mac users that are continously turning their machines on and off.I can have a machine in north siberia, and still have an inetface to it here,
THEREFORE, UNIX has MANY more interfaces than windows or mac EVER will
OK, you win. I used to think the kernel by itself was the OS, but then I realized a shell was so useful that it HAD to be part of the OS. But hey, what's an OS without an ls or a grep or a ps?? So I decided that those were definitely part of the OS. etc., etc., etc... now I'm convinced, all 1 GB of software that comes with Red Hat is really all just one OS, right?
You make a good point about the changing perspectives from CS to consumer and the accompanying changes in definitions. But are "purists" really going to care about the widely accepted definition of the term "operating system"? If anybody cares they should write an RFC or make a proposal to the IEEE with a precise definition of the phrase for all people and all times, amen. I think the real point here is that the lines are blurred, and also that it doesn't really matter where the line is, except maybe where it helps marketing your "OS" product. In the end, it doesn't affect any code, right? It's hot air.
By that twisted reasoning, a LOT of computers out there do not have an OS.
Let's twist this ourselves:
- the Internet has a lot of computers without software to make us productive;
- the banks' main computers do not have software
to make them productive;
- etc, etc.
What a load of crock.Even without a windowing system (GUIs are irrelevant to majority of business computing tasks), UNIX is the most full-featured, flexible, and powerful OS available today.
Are you defending UNIX as a programming environment or as a business computing system? As a programming environment, your arguments are valid, but define business computing. If it's the use of computers in businesses... go ask your friendly neighbourhood administrative assistant whether the graphical interface is irrelevant to his/her work - because that's where the business gets done, after all.
pay extra for powerful text editors (a la vi)
Check your facts. Notepad / Wordpad come free with Windows and are a long sight more powerful than vi if not due to features then due to their sheer usability. (T.I.D. braces himself for the "-1 flamebaits")
I may come off as a zealot, but no other OS has succeeded so totally in almost every market it has ventured into. [...] UNIX is still relatively unchallenged where the money really is.
Actually, UNIX has not even ventured where the money really is. As far as I know, Microsoft made its money by OEM'ing Windows into the great majority of all PC desktops out there, and they're not exactly poor.
The point of this is - UNIX is good for what it does, but one needs to take a step back and look at The Big Picture(tm). After all, failing to recognize the end-user market, snobbing its members as mere "lusers", is not exactly the kind of mentality that will help the *nix/bsd/whatevers become the OS of choice for everyone.
So yes, it's great for programming, but that doesn't make UNIX the Godly Kewl System of Everything That Gets The Chicks And The Money.
--
Under linux, I can pare it down to fit on a floppy. And that still has more than just the OS. I have a floppy that boots the OS and then init spawns bash. This is the OS and two apps. Init is debatably part of the OS. Bash is an app. I can turn it off -- I don't have to spawn anything -- init could just sit there and the OS would be happy.
But to make a better point...
Many people did and do find a kernel and a shell productive witout the bundled utilities that make the OS more user friendly. That is what the various GUI's do, they abstract the OS to make the OS appealing to those who do not understand the underpinnings of the technology.
Perhaps OS could be defined as the "bare minimum" requirements for making a computer usable. This would support the author's ideology of OS, and still makes Unix an OS. To say that an OS isn't an OS without (God, now I'm laughing...) "Control Panels and Extensions" (tee hee, silly Mac boy) is simply lunacy. These abstractions simplify the user experience, but do not add a thing to the usability of a computer. (the OS, but not the computer itself) Indeed, monkeying around with the various "Control Panels" in the various OSes is an abstraction that can be quite dicey. These abstractions spare us the pain of handwriting Xconfigs, manually editing registrys to add hardware, etc..., but in no way do they benefit the computer itself. They are really nothing more that glorified text processors with very narrow usage abilities. The "Add New Hardware Wizard" is nothing more than an abstraction to regedit.
The purpose of an OS lies in storage and retrieval, input and output. Libraries add in math functions on a human readable level etc..., but the kernel is well capable of math before the libraries are included. The user is simply not capable of expressing that in computer terms.
The entire Idea of OS X is a Mac look and feel abstraction to *nix. As is XF86Setup, as is any installation program. The OS does not truly benefit from these abstractions, only the user does. Much as a web browser is a glorified "rcp" and a www.netscape.com is an abstraction of 207.200.83.93. (even that is an abstraction of a bunch of "0"'s and "1"'s.) (wich is an abstraction of... you get the point...) From a strictly OS point of view, all these abstractions do is waste precious (and copious) memory and clock cycles.
These abstractions can be layered on top of an OS much like voice recognition is an abstraction of keyboard input. Get voice input, translate to text, feed to shell. Our poor author cannot see the OS for the abstractions.
If he truly wanted to market OS X, he could simply say "The power of Unix with the ease of use of a Mac."
make xconfig ; #Now there's an OS! (Why won't it compile??)
~Hammy
No, the complaint was that they tacked a GUI on top of DOS and called it a new operating system.
--- Submission is feudal.
> has the best UI around
That's a fundamentally pointless statement. You can have the best networking stack, for example... but interface is so subjective as to make your sentence meaningless.
For me, and many people, a decent shell is the best interface for almost any task. For people who don't know what they're doing, pretty pictures help (apparently).
while I fully agree with your argument regarding using the right OS for the job. I must say that I don't agree that the defionition of an OS has changed.
An OS is underlying foundation for the rest of the apps running on top of it. it provides services, handles resources, filesystem, scheduling, etc, etc.
An app is still just an app, even if marketing says it's a major part of the OS. it uses the OS to operate. Of course, all OSes comes with quite a few extra apps with the OS and after a while people starts to see them as 'part of the os', which isn't really true, it's just bundled apps and utilities. Hell, not even ls is part of the Unix OS, it's just a simple executable!
if (!signature) { throw std::runtime_error("No sig!"); }
Just anotherone who thinks that unix is just a kernel and a shell, wha! did he took a look at the possibilities of the linux 2.4 kernel? The superior X-windows system, has he ever seen the network load of a network with 100 X consoles? Don't know from which planet/time this dude comes, but he's talking ancient nonsense.
Would someone please explain why it matters what the fsck some writer thinks defines an OS? If you think he's a moron spouting Macintosh BS, Ignore Him! If you think his article is the word of god then go, buy MacOSX.
For example, in a web-server, apache could be considered a part of the OS. See the Planet Tux Interview to see quite how close this can get these days...
If the system requires it to operate, it's part of the OS. For a Mac, the GUI is part of the OS. In UNIX it aint.
UNIX doesn't even need to have a login prompt, so login isn't part of the OS (For some applications)
The thing with modern computing is that different applications require different OS's. UNIX just happens to provide enough features that it satisfies the requirements of a LOT of different niche OS's.
It's kinda like the salad bar of OS's. Pick what you like and (IF you like security) ditch the rest... Build your own OS.
Gav
"There's no such thing as data that can't be manipulated"
> > An operating system is the software that comes with a computer (or OS distribution) that programmers and users need to make themselves productive.
So, is Solitaire part of the OS or not?
--
Sheesh, evil *and* a jerk. -- Jade
Oh well, if you'd like to nitpick, then Linux+Bash is an OS. GNU/Linux is an OS(although, I wouldn't say that Emacs was part of the OS). The things you mentioned are what I'd call a "distribution". More than an OS - an OS, plus a selection of applications.
You are quite correct, of course, saying that "Linux" is just the kernel. However, I suggest you change your definition, because the word "Linux" no longer means the kernel that Linus Torvalds wrote(at least, it doesn't mean that to the vast majority of people who've ever heard of "Linux").
I've had to change my definition of the word(altough, quite frankly, I use GNU/Linux when talking to people)..
Dave
Barclay family motto:
Aut agere aut mori.
(Either action or death.)
No, just as Emacs is an operating system! :)
--
Ner lbh sebz gur HFN? Gura lbh'ir whfg ivbyngrq gur QZPN!
However, despite this, a browser is not and can not be an essential part of an operating system?
The article is fine and dandy, but the definition of what an Operating System is has been up for debate for years... even members of the boards who came up with the POSIX standards don't and won't agree on what an OS is, so saying Unix isn't an OS is really somewhat meaningless.. :)
"The best laid plans of mice and men gang oft agley..." - ROBERT BURNS
But with time the meaning of term "OS" has changed a lot and a good OS needs a lot more than it needed years ago.... you mean like preemptive multitasking, decent virtual memory management and stability? Heh.. don't tell all the Mac users until OSX hits the desktops, they might get a little upset :)
Thats exactly what im trying to say. To me, an OS is a kernel. A kernel alone isnt very useful to most people, but that's okay. It's all just semantics anyway :)
An operating system is the software that interacts between the applications and the machine to help bridge the symantic gap that exists between users and the machine. Now, where we draw the line as to what is included in the OS and how far the gap is bridged by the OS and how far it is bridged by applications is open to debate. Therefore, to some Unix is an OS, and to others, it is only part of the OS.
"The best laid plans of mice and men gang oft agley..." - ROBERT BURNS
Several people have identified Every's ``the software that comes with a computer'' as telling, but a couple of others really caught my attention:
``it's a kernel with a shell''
Frankly I don't even accept the assertions by some that system libraries are part of the operating system and I certainly don't think of the shell (which one???) as part of the OS.
Every may pooh pooh ``the more extreme Unix geeks'', but libraries and applications are entities in their own rights , independent of any operating system. Internet Explorer is still Internet Explorer whether its running on Windows 98 or Solaris. Same goes for bash or XEmacs. In fact, the X Window System is still X whether it's running on Windows, Linux, OS/2, VMS, or Lisp Machines.
``Unix . . . was free.''
Ummm, no. It wasn't. Now there are free unices, in 1982 there were not.
``Apple is being smart, and marketing the layers as separate elements.''
Dude! Wake up! They are seperate elements. If they were fundamental parts of what constitutes the operating system ``OS X'', then taking them away would leave you with something less than the operating system.
The author may not be technically correct, however, I'll say he's on the money about one thing. Many if not most programmers expect the system services provided to an application to include a large number of elements lacking in UNIX.
For example, expected system services provided to an application in most commercially successful OS's include media playing capability and access to the some form of HTML interpreter. (To say nothing about things like playing music of a CD a 3D API, etc.)
Most programmers I've talked to about the subject wouldn't dream of programming any non-text oriented application for UNIX because they'd either have to reinvent the wheel or rely on the user having installed a bunch of stuff that may or may not be there.
Argue the definition all one likes... Many application programmers won't consider UNIX a useable OS for writing applications until the "OS provided" system services include most of the items mentioned in the article.
simply because there's nothing that I can't do in unix that I can't get done in windows. (in general terms, not running specific apps)
-moose
This seems to be largely a semantic distinction (and that would be ok by me, I like precise terms), but I think there is an actual reason to make it. I do not think that it is possible to make an accurate comparative judgement of an OS using the criteria presented by the author. The factors he seems to be assesing have as much to do with OS popularity as "completeness" Applications get produced for Operating Systems that people use (without a *nix with the pop culture appeal and popularity of Linux the state of consumer level *nix software would be, I think, significantly different. Before Linux there was simply not the public demand for a Word work alike, for instance. This has little or nothing to do with the quality of Linux as a kernel or OS, and everything to do with popularity, I believe).
As far as I can tell the author is attempting to make (useful) points regarding usability, productivity, and application availability - I just think his methodology is clumsy, misdirected, and somewhat manipulative. Even so, his points are still valid, and interesting.
--
Behold the Power of Cheese!
In the end it doesn't matter at all. Same functionality, different name. Of course, we can't sit idly by and let people say that unix isn't an OS, as labels unfortunately do have power in the minds of those who don't know any better. Someone earlier commented offhandedly that 'nothing but windows will be considered an OS'... that might be a bit extreme, but if there's a common conception that unix isn't "really an OS" by the masses, it'd be a difficult meme to overcome.
--
rickf@transpect.SPAM-B-GONE.net (remove the SPAM-B-GONE bit)
"People will pay big bucks for the luxury of ignorance."
First, the definition of Operating System (OS) has been altered to accomodate the running definition in the Mac article. An Operating System is the core set of processes and code that allows the rest of the programs to operate. The purist "geek" is probably very accurate in stating that Unix, in purity, is still an OS.
--It's not paranoia when it's real--
OK, A T-Ford used to be a car, but nowadays it isn't anymore. It is just a blueprint for a car. But is does not have an airconditioning, or a CD-changer, or a minibar, or a GPS system.
Right?
--frank[at]unternet.org
1. I have two cars. On the first, the windows don't move; they can not be raised or lowered. Since raising and lowering (or at least being able to raise and lower) the windows is an integral part of the experience associated with modern cars, this car is not a car. The second car has power windows, but the electrical systems aren't working properly, so the windows do not raise or lower. I'm not sure if this one is a car.
On my computer I have two operating systems. The first, Linux, doesn't have a GUI. Since that is an integral part of the experience associated with modern OS's, this is not an OS. The second is Windows 3.1. It has a GUI, but it is very broken. I'm not sure if it is an OS.
2. My web browser is an integral part of my modern user experience. I use it all the time, and many of the programs I run on my computer use its components or rely on it being there. Anything that does not come with a web browser built in is not an OS.
My word processor and my spreadsheet program are an integral parts of my modern user experience. I use them all the time, and many of the programs I run on my computer use their components or rely on them being there. Anything that does not come with a word processor and a spreadsheet program built in is not an OS.
My mouse is an integral part of my modern user experience. I use it all the time, and many of the programs I run on my computer use its components or rely on it being there. Anything that does not come with a mouse built in is not an OS.
Ok, so the mouse one was a low blow, since it's really easy to define around. But the point stands: a technical definition only when further information modifies the premises of the original definition. What was an OS is still an OS will be an OS. The set of software required to make a viable consumer computing platform will change, and if you want to define a word or phrase that refers to that set, or a snapshot of that set at a particular time, fine. But "operating sytem" is not that; OS is already taken.
If you are modding me down because you disagree with me, use the "Flamebait" category, not the "Troll" one.
I would say that Unix used to be an OS. But with time the meaning of term "OS" has changed a lot and a good OS needs a lot more than it needed years ago. But I guess if it enables a computer to operate it should still be called OS.
My definition of an os is a system which lets you Operate your computer.
True Applications let idiots operate things.. but it is not what actually operates the hardware of the machine. The kernel is the operating system and yes ever OS today has a kernel.
The author probably used a html editor to write that, and most likely classed that as part of the operating system.
The Sad thing is this is what most people beleive, so there is not much point in discussing why he is wrong here as everyone here must know what an operating system is.
when everything is working perfectly.. BREAK SOMETHING before something else FUCKS up!
Yes, because the command promp provides a means of interacting with the computer.
What are you guys smoking? UNIX isn't an OS, it's a religion. Kinda like that Windows cult.
Karma: Terrifying (mostly affected by atrocities you've committed)
This bit of his .sig has bugged me for a while; what ESR actually said in the /. interview was:
"I'm not going to minimize my attachments by giving it all away, though, so you evangelists for a zillion worthy causes can just calm down out there and forget about hitting me up for megabucks. I am *not* going to be a soft touch, and will rudely refuse all importunities.
I'm not copping this harsh attitude to protect my money, but rather to protect the far more precious asset of my time. Because I don't want to have to become a full-time specialist in deciding whose urgent pitch to buy, I'm going to turn everybody down flat in advance. Anyone who bugs me for a handout, no matter how noble the cause and how much I agree with it, will go on my permanent shit list. If I want to give or lend or invest money, *I'll* call *you*. (Sigh...)And yes, there are causes I'll give money to. Worthy hacker projects. Free-speech activism. Firearms-rights campaigns. Tibet, maybe. I might buy a hunk of rainforest for conservation somewhere. Megabucks are power, and with power comes an obligation to use it wisely. I'll give carefully, and in my own time, and only after doing my homework -- too much charity often kills what it means to nurture. And enough about that."
Doesn't sound much like 'saying no' to me. In any case, he's locked into the 6-month after IPO thing and can't sell till its up anyway.
Savant
Ok, this is probably flamebait...but this just smacks a little too much of an OS purist (Mac that is) not wanting to admit their OS is a facade over dirty little Unix, so they rationalize it by saying "oh, but Unix is not an OS". I see MacOS X being a whole lot more Unix/BSD/Mach than being traditional MacOS. And I don't really think productivity or internet applications comprise an OS. Windows is still windows even if you don't have a browser.
It's 10 PM. Do you know if you're un-American?
Ahh, because you, in your infinite wisdom, don't see it, it's not there. Forgive me, I stand corrected.
... programming languages.
It is not well defined, what an operating system is or has to be. The most common definition could be an interface between the user(s) and the hardware. While we don't have to argue about the low level funktions provided by the kernel, there is much room to discuss wether the user level applications, packaged together with the kernel, are part of the os, too.
If you do this (and the original author does it), I don't see why you should differ between the "classic" Unix utilities and the graphical ones running under X11.
No OS is just the same as some years ago. Neither MacOS nor Windows had a browser included five years ago. Now they have. Browsers are included in almost any Unix software box, you can buy today. Why count with differend measures?
Unix is, in costrast to Windows or MacOS, much more modular and versatile. The core parts got some additional layers. X11 for example is such a layer and the foundation for graphical applications. Adding window management and an email client is the purpose of destop environments like Gnome.
Unix has also been a multiuser/multitasking OS for a very, very long time. So it has a strong position in the server market. There you don't need (primary) an web client, but a web server. (Linux, as a flavor of the Unix idea, is so versatile, it run's almost everywhere from a IBM mainframe to a wrist watch)
Unix has, and this is the main point, in which I could agree with the original author, a weak history on the desktop. The desktop environments and the applications are not as mature as they are for Windows or MacOS. But the topic was not about the quality of the Unix desktops, but about Unix not being a OS at all.
And I think, you need a pretty weird definition of an OS to declare Unix as being not being one.
An operating system is the software that comes with a computer (or OS distribution) that programmers and users need to make themselves productive.
This is not a valid definition -- it's just some arbitrary opinion shaped as one, and the whole article is written around this. I, and probably a lot of other people, disagree with it and consider it to be just as ridiculous as a definition of lunch as a meal packed in a brown bag that one gets from relatives.
Contrary to the popular belief, there indeed is no God.
1. Many of them pride themselves as being the most fanatical followers of their OS of choice. This is not true. Amiga(classic and SDK) has the most fanatical followers of any OS. Free/Open BSD and Slackware also have some very fanatical followers.
2. MacOS users often imply that their OS is the easiest to use. This is arguably false. BeOS has a reasonable claim to being the easiest OS to use. Amiga(classic and SDK) also has a reasonable claim to that title. Windows is easier to use as an OS to use than Mac is, and a configured X-windows WM/desktop system such as Black Box + XFce or SCWM + XFce is easier to use than MacOS.
3. MacOS is not the most powerful OS. The *nix family of OS' is. They have more power than any other OS'. Particularly, the powerful *nix' I cite are: AIX, IRIX, FreeBSD, OpenBSD, QNX, Slackware, and Debian. Please do not be offended if your *nix is not on this list. These are simply the one's that stick out in my mind.
4. MacOS is not the most customizable OS...again, the *nix's, as a family of OS', are the most customizable. BeOS is also very customizable in terms of hardware options(it allows a lot of tweakings).
5. MacOS is not the most stable or secure OS...again, this title falls to the *nix's as a family, particularly AIX, IRIX, OpenBSD, and QNX. Again, do not be offended if your *nix is not listed. Also, BeOS is very stable.
6. MacOS certainly does not boast the largest software base...Windows undeniably boasts that title, though the *nix's may rival it in terms of all the open software available for them on the net.
7. MacOS is not the best OS for graphics. IRIX is the undesputed champion in that area. Anyone who would deny that is blind. BeOS and AmigaSDK are also both very capable and worthy OS' in terms of graphics, both of them better than MacOS. Also, *nix's are very good for graphics(duh, IRIX is a *nix)...to prove my point, I would like to say that the special effects from Jurassic Park were done in IRIX, and that many of the computer special effects of Titanic were done using Linux.
Now, I felt it was my duty to the rest of you to mention all of this, which most of you probably already knew. I would also like to say that it is obvious that his author is abusing the definition of an OS as suits his needs. An OS is not a GUI, nor is it a set of applications that come in a package. An OS manages the hardware and acts as an "overboss" to all of the software applications installed on it. It need not necessarily have a Graphical User Interface, or any User Interface(i.e., tcsh) at all. A User Interface is simply a tool -- supplemental to the OS -- which allows the user to act as the "overboss" to the OS to some extend. It should be noted, however, that many OS' come with interfaces, both textual and graphical. This is not, however, a requirement.
Now, we can debate about if it is best that the OS ship with a UI or not, but that is a matter of preference. Personally, I prefer a market such that BOTH options are available -- i.e., you can get an OS that has a UI that comes with it, or one that has several to choose from with it, or one that has none. This is part of living in a free nation -- choices! I love *nix(particularly FreeBSD, my system) for the choices it gives me...I can change my GUI's and have more than one, and I can change my text shells and have more than one. I also like BeOS and AmigaSDK for the setup they offer with little effort. I also like QNX, which comes with UI's and offers the user choice; mostly, however, I like QNX b/c it is the most efficient OS, an example I believe everyone should follow. As for Windows, well, I can play Descent3 and TombRaider4 on it -- which, to me, are THE ONLY GAMES.
In closing, I'd like to offer some praise to each of the operating systems that I've talked about...
*nix: As a family of OS', they are stable and secure, as well as very powerful and customizable. Thus, if you know how to use them, you can make them do anything(literally, YOUR *nix can do anything b/c you can alter the source code to make it do such, though most ppl haven't that know-how, myself included).
Amiga, classic and SDK: Amiga basically started the multimedia revolution...as the amiga.com site says, Amiga was what Multimedia used to be before Windows screwed it up. Amiga was also, in my opinion, the first OS to provide an adequate GUI, and what they did in their time was amazing...even the classic is still a good OS, and the new AmigaSDK is really cool.
BeOS: They did something revolutionary -- started from the ground up! An OS designed for speed and performance, designed to respond to the user even under high-stress circumstances. It is a very capable graphics/multimedia OS, and is certainly FAST...I'd LOVE to see it join the Open-sourced community. However, if they're going to go Open-source, help out the Open-Source community, they better do it before the jesture becomes meaningless...AmigaSDK(though now Open Source) is making moves to contribute to the Open Sourced community through RedHat.
Windows(9x and above): Like I said, I can play TombRaider 4 and Descent3 on it. It's a standard, it comes with most PC's, and it has HUGE software support...pretty boring OS, but for the moment one that is needed(hopefully, as more games are available for *nix, BeOS, and AmigaSDK, esp the Descent/TombRaider games, it won't be needed).
OS/2: Did you really think I'd forgotten OS/2? Come on! No way! OS/2, what the average user's GUI experience SHOULD have been, had not M$ stabbed IBM in the back...as it stands, OS/2 is a reliable OS, with lots of power and an easy-to-use system...it is still highly regarded in the business community(anything by IBM is)...as it stands, it's an IBM product(THERE IS A DIFFERENCE. IBM.) and that says a lot in and of itself...IBM -- the good company. I will be honest, I am very biased towards IBM(also to SGI)...I'd love to see IBM make OS/2 open-sourced -- it would greatly benefit the Open-Source community.
Plan9, Multics, etc: Ok, so these aren't around that much any more...but they were some of the "Original OS's" along with UNIX way back when...in fact, the original UNIX projects shared much common origen with these products...I would say that these OS', along with UNIX, are the forefather's of our present day operating systems, and as such they deserve respect.
MacOS: And finally, I arrive at MacOS. Like that 10-year old Chevy that's outside in my stone driveway(my Benz is sheltered in the garage) it will get you where you want to go...maybe. There is nothing much to say about MacOS except that it is mediocre.
Being a UNIX enthusiast myself, I'd like to close my response with a comment on UNIX(ok, so I'm also a BeOS, AmigaSDK, and OS/2 enthusiast). Anyways, I'd like to say that way back when, when the concept of the OS first became needed, many OS' stepped into the ring, but only one is still standing: UNIX(today, it is a family of OS', but back then it wasn't).
"And for all those naysayers out there, remember that many fighters stepped into the Ring, but only ONE is STILL KING: Don King." -- Don King, *Only In America*
social sciences can never use experience to verify their statemen
UNIX is a type of OS. FreeBSD is an OS. RedHat Linux is an OS. Debian GNU Linux is an OS. Linux is a kernel. I think an OS needs more than drivers and hardware support to be considered an operating system. If it boots and sits there it's not an operating system. You need file managers, securities, software that can manipulate a kernel for it to be an OS. An OS is also a gateway to the machine.
"It's here, but no one wants it." - The Sugar Speaker
You have to consider all of the other "stuff" that come on the CD, because that's what the user will need, and that's what sells computers. You have to shift your orientation from "computer guy," to a "user guy." Do you really believe people buy computers because of its kernel?
If I can't go online "my computer doesn't work." If I can't print, "my computer doesn't work." If I can't type "my computer doesn't work." Following this logic, who cares if it boots up fine and services are working. The bottom line for most users is that they can do what they bought the computer for in the first place.
Do you think tech support even bothers saying "well, the kernal is fine?" No, they realize that it all has to work, for the computer to "work." They probably know the specifics, but they realize that's not an issue with consumers, and that's who matters.
i'm pretty sure the author doesn't understand what an Operating System, versus a User Enviroment, is.
/ )
his statement of 'So calling the kernel plus the shell an "operating system" made sense' was never valid. the kernel, drivers, and libraries are the OS. those are what allows other programs to run, and that is all an OS does. the arguement in this article is more of what you expect in the box of an OS that a person would buy. a minimal Operating/User Enviroment is "the kernel plus the shell", but its still the OS plus more. "A kernel provides three primary capabilities: Messaging, a set of routines to help applications (processes) or parts of applications (threads) talk to each other; Scheduler, to give the many applications (or parts of applications) some processing time to get work done; Memory management, so that applications have an area in memory in which to run, protected from other applications' bugs that might affect them. " these are all abilities of modern kernels, but no way do these things define something as a kernel.
messaging is only an option in a kernel if there are ever going to be more than 1 process (optionally with more than 1 thread) 'running' at a time, DOS didn't support this, so therefore, DOS did not contain a kernel, and thus was not a OS, by the authors logic.
a scheduler is required for something to be a kernel? so again that means DOS didn't have a kernel, since it could not schedule processes? scheduling only becomes possible/viable on a platform that has interrupts and dualmode operation, thus allowing pre-emption. cooperative multitasking is not true scheduling.
memory management (unfortunately) is not required either for something to be considered a kernel, and individual application can manage its own memory, and a kernel does not have to (but it is very NICE when it does) manage the memory given to applications. again, going back to DOS, it did not manage memory, but it still had a kernel. memory management purely in the kernel is possible, but only viable when the platform has a MMU available.
it almost seems that you wanted to say 'a pre-emptive, multitasking, protected memory capable kernel can do these things:', but for that statement to be possible, the hardware would need interrupts, dual mode operation, and a MMU.
anyone interested in what an actual OS (along with some modern features expected in them) is, should really pick up a copy of Operating System Concepts, by Abraham Silberschatz and Peter Baer Galvin (available at amazon, http://www.amazon.com/exec/obidos/ASIN/0471364142
not if hemos got married recently.... and I doubt he's a windows fan...
I guess what I'm trying to say is that an "Operating System" by your (correct) definition is not a saleable product (it won't even boot to a useful state without init), where an "Operating Environment" is.
I guess I prefer the "can't we all get along approach" -- the computer scientists can have their hard definition, the marketers and the rest of armchair schmucks can confuse the "Operating System"/"Operating Environment" distinction and still be generally understood by the public as a whole. I don't think that confusion benefits Microsoft anymore than it benefits RedHat or Apple.
When I hear the word 'innovation', I reach for my pistol.
I think it was John Locke who once said that most arguments were actually arguments about the meanings of words.
Over time many people have tried to control meaning, usually conservative or authoritarian groups who see changes in or slippage of meaning as undermining their powerbase or traditional values.
OS ultimately means what people need it to mean. Because people need a term that encompasses not only the kernel, but applications that allow users tointeract with the kernel such as the shell its meaning will change. OIS is in the public domain.
Eventually the word will become too generalised to be of use to experts. We will just havet o get used to using terms like kernel, shell and stop using OS unless we want a term that is generalised.
Language does not belong to you, it belongs to all its speakers.
I've never had much respect for David K. Every and this article doesn't make me inclined to change my mind.
The article completely skips over embedded systems. Are those not Operating Systems because they don't have a Window Manager? Perhaps, not even a GUI? That's ridiculous.
An Operating System is the software that manages the resources of the underlying hardware and nothing more.
Everything else is a service written atop the OS.
The MacOS Keychain is not part of the operating system, a web browser is not part of the operating system. They *are* a standard bundled service provided by the vendor.
Just because something is bundled does not mean it is part of the OS.
_ michael
A user interface is a requirement for an operating system. A GUI is not. The author is wrong. It's evident from his analogy to a car which leaves out some essential bits of car-ness; most notably a user interface, i.e. some method of controlling the car. With the addition of a controlling mechanism, what he's described is a car. Everything else is just bells and whistles.
The value of bells and whistles is a completely subjective thing. What you like, and what makes you productive may not work for me. So it seems to me that any OS that's forced to use a certain UI is inherently not well designed.
So considering all of the above I would have to say the BEST OS would be one that let's you install any UI you want from a customized shell to a full blown GUI...hmmm sounds a lot like linux. So that's it linux is a better operating system based on the UI criteria set forth by the author.
BTW semantics,....spell it with me s-e-m-a-n-t-i-c-s.
I'm the big fish in the big pond bitch.
Lets take servers. If I wanted a simple webserver that does cgi and maybe javaservelets, I can do this with a UNIX OS like Sun or AIX and then install a webserver and its componenets. There is no GUI there as none is needed, once it is installed.
I think he is pitching this so as to sell up there OS X. I think OS X is a great idea. I mentioned doing that over 2 years ago here on slashdot. (Combining the stability of UNIX with the ease of use of Mac). I was then told that had been done look at the Next OS. While Next was to expensive, as well it is not as easy as a Mac.
If Mac release a computer for under 1000 next year with OS X I may get one to play with. IF they release Mac OS X on a computer that retails for less than 500 I will get one. But lets see how it performs. Anything has got to be better than windows 95. ;-)
~~~~~~~~~~~~~~~~~~~~
I don't want a lot, I just want it all
Flame away, I have a hose!
Only 'flamers' flame!
It seems that the main reason that the article states for Unix not being an OS is that they believe that the "User Experience" is part of the OS. Personally, I disagree.
An OS is what lies closest to the hardware, and allows the programs themselves to deal with the "User Experience". However, this article being written by a Mac person (and I not saying this is bad), they assume that the interface and such must be part of the OS. I don't think it needs to be, and in fact, I don't think it SHOULD be. But that is just me.
Anyways: just because Unix doesn't assume everybody should be forced into the same "User Experience" doesn't make it somehow less of an OS.
But that is just my opinion.
-[Blaine]- "'Oh dear,' says God, 'I hadn't thought of that,' and promptly vanishes in a puff of logic."
Plug in your monitor and start up X...hey presto...it's now an OS
apple uses proprietary graphics libraries. maybe linux + X + java is a good standards based base for an operating system.
Be Free: Free Software Tuition
The article is good and bad. In general it's true. The standard posix utilites by themselves don't provide for much of a user experience. As the article states, however, Unix is an excellent operating system foundation. Unix with X and KDE or the GNOME is looking to be a good desktop. Unix with Apache/Samba/Bind/whatever make for great servers. Apple is hoping Unix+Aqua will be a replacement for MacOS.
The only real problem I have with the article is that he should be speaking of an operating environment. I use a web browser for at least an hour a day. But it shouldn't be in the OS. I use a GUI 90% of the day, but it shouldn't be in the OS. These are applications that have nothing to do with devices, memory, or i/o. Adding these applications results in buggy crash-prone operating systems like windows.
One way or another, Unix is a great OS, and a great foundation for building new tools for the developer, end user and network admin.
Java wouldn't be an OS, but with a little JNI for hardware support, you could build a Java based OS.
a text based interface or access via telnet is not enough of an interface
a computer is NOT a computer without a monitor (i think servers are computers
basically just because people are used to flashier and more complex interfaces doesn't mean that a system which fundamentally works off of text interfaces (considering that CDE/KDE/Gnome/X11 are not part of the os) is not an os.
All of my servers run linux without X and without a monitor... am i running os less servers?
the term operating system must be redifined to deal with the context with which it is used, ie. are we discussing a desktop or server environment? will it be used for development or multimedia purposes...
Actually, he does use Solaris as an example to make his point - he claims that Solaris isn't unix, it is a distribution of software around Sun OS, which is built on Unix... or whatever. Weird, non-the-less. I kind of agree - an OS is more the distribution of software than the kernel.
-- boredwithmysig
An OS is just something that allows a basic interface to a device. It does the basic ground work. That's all. An useful OS does not need things like programming libraries, web browsers, and more. Would you feel any different to the fact that your microwave runs IE or Netscape? OS's are much more that just for the desktop and workstation, they are for the microprocessors too. I can live without Quicktime on my graphing calculator.
I remember being taught in school that the role of an operating system consists of managing system resources (which is, perhaps, why they call it an "operating system" and not an "operating environment"). Providing a GUI to the user does not consist of managing system resources. Managing memory, persistent storage, I/O, and the like--that is what an operating system does.
A GUI, like the Windows GUI, the Mac GUI, KDE, Gnome, or whatever, is simply an interface to the operating system. As a result, I can have a POSIX-complient interface to the OS in Windows--and bypass the Windows GUI altogether (ok, not completely--the posix "window" resides inside the Windows GUI).
Any other definition seems to me to be remaking history. To my knowledge, this has been the definition of an operating system since the creation of the term operating system. Of course, I'm relying upon second hand information here--I wasn't around back in the 50s and 60s to personally observe the entymology of "operating system" develop.
--Be human.
At the very least, it should inspire some decent conversation.
When was the last time there was discussion on slashdot? Any time the idea that Unix wasn't written by God himself and blessed with the lines "This is my OS," said from above while a doce descends onto Linus' head is raised, the Trolls come out in force and throw enough flaimbait around to frighten a Dragon.
Posting AC with the grim knowledge that this will be my first post in months that reaches +5...
About the only solid opinion you'll find about what an OS is comes from the unix purists he comments on. They feel that the OS is the kernel, drivers, libraries, and that's it. Ask anyone else with some competancy and they'll draw the line anywhere from the kernel all the way out to whatever comes on a CD from the distributor.
Hey, if he feels that all the 'traditional' stuff, plus whatever new goodies people have come to expect, should be lumped together and considered an OS, then ducky for him. It's a totally relative distinction.
--
rickf@transpect.SPAM-B-GONE.net (remove the SPAM-B-GONE bit)
"People will pay big bucks for the luxury of ignorance."
gordon_schumway wrote:
"Does the fact that MacOS X or WinNT don't come with sed, awk, grep, bind, apache, sendmail, etc. out of the box make them not operating systems to me?"
Speaking of no idea what one's talking about, MacOS X (DP4) DOES come with many of those out of the box, and as far as apache and sendmail are concerned, they come defaulted to "off".
Actually, I think this definition of OS (which I like) does point out some tricky issues with talking about the OS. The problem is that once you go with the kind of definition that states the OS is the necessary environment needed for a program to execute, then you set up the distinct possibility that we could look at program A executing on OS Y, and then program B that executes on OS Y but also requires a service provided by A and decide that the "OS" for A is Y, but the "OS" for B is Y+A. That, of course, bothers some people a lot.
Another way to go, which is implied by what some have called the "purist" definition, is that the OS would be software that satisfies the greatest common requirements for all of the programs that are running; that would probably end up being the traditional kernel plus shell.
But the problem there is that you can (and Linux certainly has) stick a lot of stuff directly into the kernel that is not (strictly speaking) needed by all other programs. So in the Y+A situation above, if Linux kernel version 2.71828 now includes the service provided by A, we might argue that B now only depends on Y (the kernel), but then A has disappeared completely, so you might decide to carve up the kernel into "truly OS" and "not truly OS" parts and then...
I think you see the problem. Myself, I'm not that interested in arriving at "the" answer to this question, but this is Slashdot, so...
Babar
Perhaps it would make more sense to change it to:
In other words, the OS could be definied as the common demoninator to any and all uses of the computer (doorstop excepted). The question is whether we would limit that to real uses or all theoretical uses. Some examples:
So it seems as if almost no software is required to use a computer, except that required by the definition of von Neumann architecture: an OS must be able to read and write to primary memory (even if that's only cache) and direct the CPU to execute particular sections of that memory. In addition, to be of interest, the OS must allow for user input and output but we cannot specify by what means.
A more liberal alternative:
really no need to ask.....*s*
if (!signature) { throw std::runtime_error("No sig!"); }
There has been some talk here about GNU tools *not* bneing installed in the standard install of MacOS X. Due to the fact that it hasn't been released no one really knows, but maybe it will come with those tools out of the box. But you still got my point didn't you?
Ha! I kill me!
"Sun's commercial motivations helped make Unix a much more stable OS--for example, it created the Network Filing System (NFS)--and Unix's growing popularity meant more apps could be easily moved to Sun platforms."
Sadly, this author has the balls to ask the question "Is Unix an OS?", but he obviously lacks the brains to answer it. I don't think he quite understands the difference between a file cabinet and a computer.
Good point. I actually meant just Win 9x.
This is a very interesting way to define operating system. I have always thought of an operating system as the fundamental set of software componants which mediate, support and enable the applications running on a system. I suppose one could make the football (soccer, for Americans) analogy: I would call the Field, Rules, and Officials the OS of football. By the definition used in the article, Windows would not be an operating system (for me, at least) without rendering software installed... otherwise I cannot be productive with it. That doesn't feel quite right, as definitions go.
Of course, reading through the rest of the article makes it clear why the whole question of what precisely constitutes an operating system becomes clear: Marketing OSX. (Yes, I know I should have guessed that just from the link, but hey, I'm an optimist).
The message there is about as clear as they come. Now, I'm not saying that the sentiment is actually wrong -- it may very well be that OS X is the greatest thing since gcc -- but I'm not really sure that I appreciate the way the point is being made. It almost seems to prey on the ignorance of consumers. There is bound to be a long and involved argument here on /. regarding what exactly an OS is, and I'm willing to bet that the average Mac & PC users in the world wouldn't even be able to follow most of it. So, essectialy, the author is using buzzwords (UNIX is becoming one even in the mainstream) and creative premises to make an almost unrelated point.
Journalism at it's finest.
--
Behold the Power of Cheese!
I still wish LiteStep could get rid of the crufty Microsoft Windows widgets - and replece them with something a bit more sensible and clean.
if it ain't broke, then fix it 'till it is!
These are my friends, See how they glisten. See this one shine, how he smiles in the light.
This was written by a Mac user, and he goes on to claim that "Apple is creating an entire operating system." (Based on Unix, too.)
The author's point is that the OS is whatever makes the computer usable and useful to the user.
David Mitchell
...you don't NEED a radio to drive a car. What you DO need though is blinkers, headlights, steering wheel, brakes, etc, etc. THAT'S what makes up an OS (well not headlights really, blinken lights perhaps). An OS is what is NEEDED to be able to run the system, IMHO!
if (!signature) { throw std::runtime_error("No sig!"); }
I just read the article and most of it can be summed up in this quote from it
Unix is no longer an operating system. An operating system is the software that comes with a computer (or OS distribution) that programmers and users need to make themselves productive.
Anybody with a degree in CS (or anyone who's ever taken a college level intro to computing class) knows that this is not the definition of an OS. To put it simply an operating system is that is initially loaded when the computer is booted and manages the system resources as well as the other programs running on the computer.
The operating system's tasks include determining which applications should run, in what order and how much time should be allowed for each application before giving another application a turn, it also manages the sharing of internal memory among multiple applications, it handles input and output to and from attached hardware devices, such as hard disks, printers, and dial-up ports, it sends messages to the applications or the user about the status of operation and any errors that may have occurred.
Since Unix performs all these tasks it is an OS. Case closed
PS: Simply because Operating Systems now come with lots of applications bundled does not mean that the lack of a popularly bundled application (e.g. text editor) suddenly makes an operating system any less of an OS.
Hanlon's Razor
I think the folks from Adobe would take exception to our definition. So would a large number of other folks that sell any kind of Application.
What is an operating system? The definition depends on your needs.
KidSock
But for the most part, Adobe sells software that not only can view, but can create content. Anything involved in the simple viewing of documents is available for free download (case in point: Adobe Acrobat)
Already the line has been pushed to shell and basic sys utilities like fdisk, etc. Now the line is being pushed to include other things gui systems, window managers, etc? When will an OS consist of EVERYTHING? Since when do you need a shell to run programs? or even init? You can hard code an application program to be run right out of the kernel if that's all that a box needs to do.
To me, this guy is playing with words, and not actually comming to any useful conclusions. Sure, by his standards, unix is not an OS... but what's the problem with an OS just being a kernel? What's the problem with calling an application an application, and the entire collection of apps and OS a computer system, or workstation? or something else?
Why shouldnt an engine, transmission, etc, on a chassis be called a car if it can drive somewhere? What if I dont want a body on my car? What if I dont need one (maybe for an indoor example of how a car's internals look?). If a car doesnt come with a CD player, it's still a car isnt it? To refute the author's point that a web browser will become part of the OS because other apps will depend on it - if I want to listen to CDs and the car doesnt come with a CD player, does that make it not a car? Come on.
Stop trying to redefine language when it already works. Besides, how long does someone run a unix box with absolutly nothing installed past the kernel and shell anyway? This article is a trolling waste of time.
I think that the author gets one big point but misses another. He is correct that today an operating system is generally considered to contain more than just a kernel and a shell. What he misses is that Unix has grown more expansive in exactly the way that he suggests. For instance, he comments that a real OS needs to have "hundreds of utilities". That's exactly what Unix provides; most people think of grep, sed, awk, find, ps, etc. as being essential parts of Unix even though they obviously aren't part of the shell or kernel. Similarly, X11R6 is a key part of Unix as it is now perceived.
This is, IMO, a big part of the reason that Mac OSX won't be Unix even though it's based on underlying Unix technology. It doesn't incorporate all of the other stuff that's really part of Unix as it is understood to be, so the use of a Unix kernel doesn't make it Unix.
There's no point in questioning authority if you aren't going to listen to the answers.
Nobdody seems to remember this, but Unix was a widely used operating system, not just some CS guys abstract concept of what an OS could do. AT&T released quite a few versions of the Unix operating system. All these other guys just got themselves a licence to make their own version of the system.
my sig's at the bottom of the page.
That is not what happens. Think of RT-Linux as replacing the schedualing system, so that the kernel itself is only ran in certain time slices. Therefore, the RT OS runs for a set amount, then the Linux OS runs for a set amount.
Each manages its own set of resources seperate from the other. It is like two OS'es running at the same time on a box. But the only resource that is managed for Linux is the time and some FIFO's. Linux still manages the rest of the systems resources.
-- Never make a general statement.
I agree with you when you are talking about an individual workstation.
However i often find myself at other peoples workstations helping them or getting help from them. When their UI is not the same an my own, I don't have much choice in that.
Granted this does not entail the bulk of my UI interaction and i find myself now playing the role of "hair splitter". In any case, i think this topic doesn't warrant a lengthy discussion. Thanks for clarifying your comments, i slightly misinterpreted your original post.
After a quick parse of the article, I get the feeling the author's definition of an OS springs from what a consumer might consider to be a "real" operating system, forgetting that people at home aren't the only ones with uses for a computer.
A server doesn't necessarily need a web browser, media player or word processor. The admin might want these installed, but the lack of such doesn't mean there isn't an OS installed. In fact, programs that seem indispensable to home users might be detrimental to the smooth operation of a mission-critical server.
By the writer's definition, each Linux distro is an OS, but someone putting together a kernel, filesystem, shell, and a few specific tools from scratch isn't - even though the latter could easily make a far superior server-type environment than any prepackaged distribution.
I think the author forgot that computers have more uses than playing MP3s, browsing the web and typing articles for online tech mags. Just because an OS doesn't include tools and a GUI that a home user would find useful, doesn't mean it isn't a real OS.
Someday, you're going to die. Get over it.
Wait, you want to use Objective C? I could never figure out how to keep from lapsing into seizure.
Most modern OS's would be, in my definition, a very compact kernel surrounded by a system of very optimised server processes. Not unlike BeOS, AtheOS, or any other moder ground-up operating system.
Most OS's dont' seem to take full advantage of all the very nice programming techniques like object oriented core environments, amongst others. However, Unix is my current best friend. I can't deny Unix its long heritige, and proven powers. But, and just but, its very old. And a new breath of freash air awaits when people get their heads out their arse, and make some ground-up new OS. --Blah end rant
It isn't a lie if you belive it.
Please understand, I didn't read the article. I do, however, hold the common belief of
Just my $0.02.
-----Don't Take life seriously, you'll never make it out alive.
You'd say it to his face, but you post it anonymously. Cute. And I'd hope it'd be self evident to almost anyone that a gui hides complexity. By showing you what items are important and providing specific help for each section of options. The drawback is that the gui is limiting. Windows and MAC lack for me at least because they force the GUI on you.
Dead-on response! While computers and UI's have gotten more and more sophisticated, if you are really a purist in computing tech you must distinguish between the OS which provides some of the basic services and the applications that utilize those services and simplify the experience for the end user, making them more productive (unless you're like me and spend 4 hrs a day playing Hearts :-) This is the fundamental problem that geeks have with Windows, because it throws all of the OS and GUI plus pieces of (or sometimes the entire thing) apps into inscrutable DLL's, and thus it's very difficult to analyze where problems are when they arise. Combine this fact with buggy software that you feel the need to try to tinker with... At least Apple got the OS & utilities stable. But I still believe that the ability to break back to a command-line and kill off aberrant processes is extremely valuable. And as noted, many things can be done faster (particularly for fast typists with a low typo rate) via CLI than a GUI, especially when one becomes familiar with the various switches etc. that provide extreme flexibility and speed which require multi-level config popup panels in Windows. That said, when I'm unfamiliar with all of the options of a command I'll still sometimes use smit (an AIX character-cell based UI) to do configuration of various things. So for an end user of their own PC who needs/wants to do minimal system administration, it's a good thing (GUI), but for setting up multiple machines or when one becomes proficient with one's OS, it can be a hindrance to not have a CLI and be able to script some actions.
But back to the original point --- Repeat ten times: Apps are NOT part of the OS!
----
----
Slán leat agus go n'eirí an bóthar leat
How is being "forced" into the same user experience any better or worse than being "forced" into differing or fragmented user experiences? I don't see any substance to that statement.
The whole discussion is splitting hairs IMO. It all depends on your definition of an "OS".
By the logic in this article, companies such as Dell and Gateway could come under a lot of lawsuits. They claim to sell an operating system installed on all their systems, but I know the Gateway that I bought a few years back didn't have a C compiler pre-installed, and I need that for it to be functional. Fortunately for Gateway, I know the real definition of an operating system, and don't feel that a compiler is part of it (besides, I installed Linux/gcc/many other things I needed immediately after verifying that it all worked).
Addlepated - punk & metal
Will OS/X have a CLI? I seem to recall somewhere someone saying that it would either be built-in or an option installable from the install CD.
Email me.
Don't trust anyone over 90000.
+++ATH0
..what is an application?
"..don't you eat that yellow snow."
WorkStation != Desktop != UI != OS
Any questions?
Basically this was a puff-piece to blur the lines between what a computer needs and what you need your computer to have.
Kernel Klink: Kapitalist Pig! My source is beingk open!
Stallman: No it isn't it's name doesn't include GNU!
Kernel Klink: I am not caringk about vat you be doingk with yer animals!
"Survival of the fittest Max, and we've got the fucking gun!" - Pi
Easy to use is *NOT* a requirement for something to be an OS. Admittedly, "today's OSes" tend to have GUIs and other amenities. That doesn't change the definition of an OS.
The line that really annoys me is "The OS is all the stuff that companies like Sun or Apple add to make a computer usable." when referring to things like web browsers and media players. He implies that, due to a lack of integrated GUI, media players, and web browser, Unix is unusable.
FUD?
Who says Windows is an OS?? According to half the definitions of an OS given so far, Windows is simply an graphical interface add-on for DOS.
Did they? I don't know. I started using computers in the mid to late 80s, as a child, back in those glorious days of incompatabilities. I had an old Xerox 8086 with DOS 3.0, and was happy with that for many years. I liked playing around in DOS, and quickly learned WordPerfect. I never once thought, "Man, this sucks, what I really need is a visual metaphor."
I know, I know. Kids learn well, and pick things up quickly. But I think that there's more to it than that: I learned computers with no preconceived notions of how computers should be. I was not told, "You should have a graphical interface; command lines are for cretins". I was not told, "The command line is the One True Way." I just learned things. I think that part of the problem with these "modern" OSs (Windows and Macintosh to be specific, I've used BeOS once and actually really liked it) is that they try to dictate style. That's why I'm really partial to Unix and X: I can have a powerful command line and GUI, and I can customize both to my heart's content.
This is how "a modern OS" should be, in my opinion. Choice. Visual metaphors are fine for most people most of the time, but sometimes I just want a shell prompt.
My Mother(bless her simple heart) needs contextual menus, pointy clicky rolly-over stuff & a big help file.
I will suffice on a command line and vi.
I see what I use as adaquate to my needs and my mother sees what she uses as adaquate.
/paraphraze
paraphraze(from article)
An OS is a tool for controlling microprocessors
I control my microprocessor using a POSIX compliant CLUI. My mother controlls her processor (the same processor in our case) via a GUI.
Thus both my Linux kernel and her M$ gui are OS'es. That is unless tha author argues that an editor like vi or emacs is needed to define and OS.
--
I see things from my perspective & in my opinion UNIX is an OS.
its like calling a model T, not a car because it doesnt have a cd player. Unix is a overloaded term, sometimes meaning a group of simular os. (your perception alters that group).
Instead of just blurting out an opinion on what's in an OS, let me explain *why* I think what I do.
The reason an OS is needed in the first place is to let several programs all use common resources that are in limited supply.
This has always included RAM, CPU time, and disk space, and managing those resources are what the classic Unix OS does.
A modern computer has several more common resources that need to be managed. Screen area is one good example. All programs can't be allowed to write directly to the screen at will. So some kind of GUI manager *is* needed to fulfill the purpose of an OS on a modern computer. Other modern shared resources are network connections and bandwidth, audio output/input, and even the clipboard.
I'm sure you can come up with other examples. Note how it really has nothing to do with how "low level" the code is.
That part is very obvious to me. More borderline are things like interprocess communication, basic toolboxes etc.
But I'll quit here. Nobody is reading comments to a 2 days old topic anyway...
(wonder how many -1, Redundant's this will get :)
Operating System...
Quite literally:
In the context of computers, it is a System for Operation of the machine. Operating System.
Unix meets these requirements quite easily, and in many more ways than meets the eye [sic], elegantly.
Don't sweat the petty things. But do pet the sweaty things.
ANother BSOD Bitch
Does the fact that MacOS X or WinNT don't come with sed, awk, grep, bind, apache, sendmail, etc. out of the box make them not operating systems to me? Hell no. This guy has no idea what he's talking about.
Ha! I kill me!
When K&R, Thompson, and Pike were originally hacking on Unix at Bell Labs they had actually been assigned to write a word processor for the legal department. The PHBs didn't want them to be working on an OS.
Now the Unix way was to push as much out of the kernel into application space as possible. So the command interpreter (shell) was a user program, as were a number of other things that up until then were typically built into the OS.
And whenever the PHBs would grump at them for spending time on an OS instead of doing their assigned work they could point at this stuff and say "Look! It's not an OS. It doesn't do X, Y, and Z!"
B-)
(Of course now it does do X. But that's another era. B-) )
Bantam Dominique roosters crow a four-note song. Once you've heard it as "Happy BIRTHday" you can't NOT hear it that way
Even if the yardstick were an MS/Apple-style GUI-oriented desktop, Linux with KDE or Gnome hardly has to fear comparison. Linux distributions are still more complete and have a much larger and much better integrated toolset than MacOS X is likely to have.
What Every is really saying is that he likes MacOS. To each their own. But to hide Macintosh advocacy behind "what is an operating system?" is silly. And given how stripped down MacOS is and continues to be, he's on the losing end of that argument anyway.
what about BeOS? dont try to tell me thats not an OS... hehe
Buying a Dell computer is equivalent to dropping the soap in a prison shower.
On the one hand, I have to say I'm sympathetic to professor Alan Perlis's statement that when a professor says that computer science is X and not Y, have pity on his graduate students. On the other hand, the fact is that human cognition works by dividing the world up into chunks, and that some things obviously belong in a chunk, and some things equally obviously do not.
So, what goes into the chunk we call "operating systems"?
Well, I doubt I would have passed my OS class if I'd used the definition the writer of this article chose. And, further, that definition seems very desktop-PC-centric. I mean, embedded systems have OSes, too, and they are just as much OSes as Mac OS X, even if they lack graphical interfaces, or even grep, for that matter.
People built OSes because they needed to regulate use of system resources and to give each program an environment that was richer than that provided by the hardware. A collection of software that does this, and that programs running on a machine have to use, is an Operating System. And Unix certainly qualifies.
...that the author essentially thinks that Unix isn't an OS because it isn't like the Windows9x package.
Er. OK. I use DOS 6.2 on a daily basis, and I'm pretty darn sure that it's an OS. It doesn't have a GUI (well, there's DOSSHELL, but that's not the standard UI) besides Win 3.1, and it doesn't have quicktime, a web browser, or a development environment (no, QBasic1.x doens't have a compiler), but I think most people would agree that DOS is an OS. especially considering what DOS stands for...
-J
Karma: T-rexcellent.
I think there is a big confusion between an operating system(OS) and an operating environment(OE). Since the article chooses to use Sun as an example, Sun ever since they released Solaris has always called it an OE and the OS layer was always and even now is SunOS 5.X. Solaris is SunOS+ X windows+CDE+DT apps+Services.
OSes by fundamental definition is the software that manages resources (hardware and software). All the GUI layer abstactions are not required to manage hardware and software there fore UNIX was and always will be an OS.
MacOS X is an enivronment for programs to run,share data and code. MacOS X is a graphical shell with a set of APIs(carbon,cocoa, quicktime. OpenGL...) for user level programs to use and be developed on. This shell runs on the unix kernel/OS.
OSes have applications on many places other than the desktop for example RTOSes,embedded OS's, Server OSes, none of this fit the paradigm of MacOS X or Windows. To think that the desktop is the only place for an OS is very narrow minded. Thus the author doesn't really understand OSes.
C'mon, everyone knows the best quote from that movie is "We must not allow a mine-shaft gap!!" :)
WWJD? JWRTFM!!!
If the person who wrote the article thinks an Operating System is a GUI desktop enviroment, he should have mentioned Gnome, KDE or CDE because that's what it seems he's talking about. Unix to him is kind-of like DOS to Windows. Windows is an "Operating System", and DOS is not because it runs on a command line?
Additionally Aqua is an Desktop Enviroment, Carbon's like WINE, Cocoa's like QT/GTK+ and so forth. Hence Mac OS X is no different from an Unix (Linux/*BSD/Solaris) distribution.
...what components a modern OS needs beyond a kernel and a shell
I don't know, personally I always believed that smaller, more compact OS's, that aren't jumbled with useless crap are better. Hence *nix operating systems in general. And isn't the definition of an operating system, what just allows your system to operate? Unix does all that without alot of crap. Why add stuff you don't need?
Aw damn I forgot, I might not see the pretty aqua shade of blue on my GUI...and I was so looking forward to it.
"Imagination is the only weapon in the war against reality." -Jules de Gautier
Sun's commercial motivations helped make Unix a much more stable OS--for example, it created the Network Filing System (NFS)
:-)
More stable? He clearly doesn't remember the bad old days of Sun's first attempts at NFS
The author does make a good argument for a change in semantics for the term OS. He derides the purist computer sci people who still claim the OS is nothing more than the kernel and a shell. He is taking a luser^H^H^H^Hconsumer oriented view of computers.
He is trying to change the semantics of a term with a long history. When refering to the unix world, the OS is just the kernel and a handful of required utilities. But did you ever stop and think what is the OS part of windoze NT or MacOS? On the Mac, it is the system file, the finder application (a shell), and the extensions which load at boot time (modules and drivers). Similarly, NT could be trimmed down to just a bare core of applications and drivers, but nobody ever does it.
When was the last time you put just a kernel and a shell on a machine? Didn't you also add dozens or hundreds of useful applications and utilities? With NT, tons of stuff gets loaded, you don't have a choice. The same with the Mac.
In the linux world, we use the term distribution to indicate our preference for a particular flavor of OS. We run redhat, debian, or slack, not just the 2.3 kernel with bash and a serial driver.
So maybe the author has a good point, the OS is now more than just the kernel. But changing the purists is a battle of similar proportions to changing the mass media's usage of hacker to include all infocriminals. A good fight, but in the end a futile one.
the AC
Hemos is like...sci-fi fans;he thinks technology is cool, but he hasn't bothered to understand the science it's based on
If the OS is comparable to a car, what is the machine the OS runs on analogous to? The article ought to come with a disclaimer for users not to waste time on a whole load of crap and the author may do well to write articles other than about Computer Science.
Since RT-Linux runs linux as a process, does that mean linux isn't really an OS?
- Unix is no longer an operating system. An operating system is the software that comes with a computer (or OS distribution) that programmers and users need to make themselves productive.
A vegetable is a small blue cube. Therefore a carrot is not a vegetable.My point is that if you redefine word as you wish, you can cheerfully prove that anything is, or is not, an OS.
Okay, so my books on OSes are a few thousand miles away at the minute, but as i recall, Andy Tannenbaum's definition of an operating system had 2 requirements:
- Resource Management: an OS should allow multiple user processes to share the processor(s), memory, network connection, etc.
- Extended machine: an OS should provide an richer abstraction of the underlying hardware, providing user programs with useful functionality & abstraction, eg. the ability to handle files, rather than blocks on the hard disk.
UNIX, and specificly POSIX OSes certainly still provide the first of these, but perharps not the second. A useful abstraction of the graphics card must today offer more than POSIX does (ie text mode only). To some extent, the fact that UNIX does not have a standard, built in, GUI means that it is no longer an OS.cheers,
G
Anyone who sees UNIX as just a kernel and shell probably hasn't used it. Even without a windowing system (GUIs are irrelevant to majority of business computing tasks), UNIX is the most full-featured, flexible, and powerful OS available today.
Yes, UNIX is an operating system.
It's also been marketed as a "programming environment", which I think is another accurate way of looking at it. People often shoot me strange looks when I scream "IDE? UNIX is my IDE!" with glee (possibly because I was in a bus station), but it is. UNIX and Unix-workalikes are the only operating systems today that where you don't have to pay extra for powerful text editors (a la vi), powerful search-and-replace tools (a la grep, awk, and sed), and a suite of compilers. (Okay, to be fair, you usually will pay extra for a C compiler on a commercial UNIX system, but it's assumed to be a standard tool. If you don't want to pay, get EGCS.) These are all traditional programmer's tools. Add to this a reference manual of system calls, and the fact that the interface in itself is a programming language (sh/ksh), and it's no doubt that UNIX and Unix-workalikes are favored by hackers everywhere.
As a WWW applications developer, being a UNIX goon has an added benefit: 90% of what I develop is deployed in UNIX environments. Design and implementation are both accelerated by the fact that I'm developing on a machine practically identical to the RS/6000 (AIX 4.3) production boxen. What other OS is possibly suitable as both a programmer's toolkit and Enterprise deployment platform?
I may come off as a zealot, but no other OS has succeeded so totally in almost every market it has ventured into: file server, web server, mail server, timesharing system, router/firewall, database server, high-end graphics, systems and application development - the list goes on and on. The high-end of almost every existing computing market is dominated by UNIX in different flavors. In recent years Microsoft and Apple have taken a chunk of the UNIX workstation market, but UNIX is still relatively unchallenged where the money really is.
UNIX will not outperform operating systems designed for very specific tasks or around specific hardware systems, but this shortcoming is more than made up for in versatility and (with the advent of POSIX) portability.
---------///----------
All generalizations are false.
--
I like to watch.
GNU talks about a compiler and a window manager being part of the OS.
But not for any of the rather dumb reasons suggested in the article . . .
Unix isn't a single piece of software, or single set of software components - it's a culture, and an ideology. That's why there are so many different versions of Unix - because it _isn't_ a single chunk of code, anyone who wants to can reimpliment their own version, and do things a little differently, or whatever.
Linux is part of the Unix culture. FreeBSD is part of the Unix culture. Solaris is part of the Unix culture. Irix, HP-UX, AIX, even A/UX, they're all part of this culture.
So yes, Unix isn't an Operating System. Any particular instantiaion of the Unix Ideal _is_ an operating system, even in the rather pointless sense that's used by this article, but that instantiation _is not Unix_ - it's merely one possible version.
And I'd hate to say it, but I suspect that Apple will become part of the Unix culture, too - Unix seems to be rather . . . contagious . . . Once you know it, once you become acculturated(sp?), it tends to subsume just about everything else . . .
himi
--
My very own DeCSS mirror.
And I wondered in another comment about that definition - looks dodgy to me.
Well put - and I'm sure that you are right about the motivation behind this article. But just pointing out that this is biased marketing fluff does not address the question - it just avoids it.
I'm not flaming here. And if you are not interested in entering the debate one way or the other - fair enough.
But anyone reading this - don't just think: oh, he's right - the article is fluff, I can ignore it. Whatever the motivation, the article raises a serious question.
Ask yourself, does the POSIX spec really offer a useful abstraction of my Voodoo3? Is X really a part of the UNIX OS?
Jus' saying - don't just dismiss this article.
cheers,
G
For the sake of argument, let's say that he's right, and Unix (and my association, Linux) isn't really an OS anymore. Who cares? Download/buy an ISO image, or buy a shrinkwrapped Linux distro, and you get everything he mentioned, and more. If Linux was available as just a kernel, and we all had to go raid LinuxApps and other places to populate our system with enough software to make it usable, he'd have made a valuable point. But we don't, he didn't, so it's all academic.
While we're stating the obvious for attention, let me join in.
/somedir/somefile' to see where the file in question came from.
Programs and files in your unix-style computer do not grow on trees. There is a purpose to each and every file in your filesystem, and they all have sources.
The kernel, and all the files that make up the kernel are packaged by the kernel authors.
The shell, of which you can choose from dozens, are packaged by the creators.
The little dipshit programs like cat, du, whatever generally come from some major FSF-written program bundles. Textutils, shutils, binutils, diffutils, fileutils, and findutils come to mind.
make, m4, and other packages provide tools for compiling things.
GCC is a collection of tools and compilers and programs that enable software of many different languages to be compiled, analyzed, and changed.
This is a rudimentary list, There are many more things I have neglected to mention that your computer comes with.
X11 brings dozens of programs and resource files and libraries with it.
Your desktop environment(s) bring multiple thousands of libraries, binaries, and configuration files to the scene.
Applications bring thousands of files of their own.
Just because binaries tend to be thrown into a common location (/usr/local/bin) doesn't mean they're an amorphous blob called UNIX.
Don't forget servers, scripting languages, games, all the other crap that makes things fun.
It is a testament to the Unix project that with merely a functioning kernel, a terminal driver, a shell, and a few dozen one-trick-pony 'applets', profoundly neat things can be accomplished.
If you are bored, play with these commands.
'type somecommandhere'
Likely, you will be shown what binary is actually run when you type in that command.
'alias' might tell you "secret" aliases that have been set up to make the command line more useful.
If you have an RPM-based system, you can try 'rpm -qf
'rpm -qa' will tell you all the packages installed on your system.
My penis hurts.
Then the whores come in, shaking their rumps for the menfolk.
Have you taken a look at Aqua? Linux has nothing even close to this. Sure, people are working extensions to X involving alpha channeling, etc. But it just isn't there yet.
----
Celebrate the finer things in life
Whoa, an early post!!!
Unix an OS? No.. Unix is the OS. </joke>
---
-
ping -f 255.255.255.255 # if only
The definition means nothing, and it is not the point. There has never been one defining OS, its just a collection of standard resources that programmers can rely on to do some of the work. This applies from fopen all the way to an embedded html renderer. Try to think a little outside the box. Os's have been moving to a higher level of abstration with every release. You can either program a feature yourself or let the OS provide it for you. If its a standard feature shared by many programs then maybe it should be standardized and inlcluded with the OS. What do you think gnome/bonobo(sp?) ect is trying to do. He is right on, because unix by itself does not provide a standard set of software for many of the new web resources, integration/component software ect. Just look at embeded IE, media player ect that he was talking about. emebeded IE is starting to show up everywhere and its turning out to be extremly useful. Imagine that, after all the work MS has put in to component software, a standard set of resources and components and the registry. It was a real messy start but its starting to solidify. I personally think w2k kicks ass in many ways besided memory usage and the current UI. There were/are bugs for sure but many many things have been centralized and standardized. People can complain about the registry ect, but what does linux have? /etc, each file with its own syntax to memorize, no consistency. Unix is more powerful, sure, but power, usability and abstraction must all be taken in to account. I have the most power with no OS at all and accessing the hardware directly, but I wouldn't consider that to be the best method.
SO basically this guy thinks he is being insightful and all he is really doing is arguing sematnics. He is trying to change the definition of a term (operating system), rather than use an established term for the concept he was trying to get across, namely operating environment. This has been the defacto term for the concept of "set of software that provides the base user experince of a computer system" for at least a decade.
As for the insightful part, everybody already knows that computers need more software than just a kernel and shell to be usable/useful to the vast majority of users.
For instance, if you get really technical, Solaris 7 is an operating environment consisting of X/Motif/CDE implemented over the SunOS 5.7 operating system (kernel + base libraries).
Just because windows doesn't draw the same distinction (though it is possible to use a differnet shell) doesn't mean UNIX can't. This is especially important when considering that Linux, as an OS, can run a KDE, GNOME, or CDE (among others) environment. While varying greatly, they all still use the same OS underneath. Likewise, Those enviromnents may be implemented on other UNIX or possibly non-UNIX operating systems.
And where then does that leave the leigons of computers that have no need or use for a browser, a GUI, or even a shell? Just because joe-user can't type term papers on a cisco router doesn't mean that it isn't extremely important to him when he tries to email that paper to his professor.
Yes, just like the article, I am mincing words. It just annoys the hell out of me to see people redefining things just because they don't know the term they actually want to use. Especially when they (and they always do) then chastize people for using the correct and well established terms.
"QuickTime for streaming media, which is really an operating system service"
Wow. Now I know what I've been missing all of these years. What planet is this guy from?
You can take two views:
1: An OS and user applications are somehow seperate and distinct, and there is a dividing line, where, say, fsck is an OS feature, while rm -rf / is a user application. This sort of distinction makes a lot of sense for Server-centric computers (ie: Unix, VMS, MVS, etc. etc.)
2: The entire system (Dos, Windows, MS-Word, Excel) are the 'user experience' and thus are essentially indistinguishable from the OS. In this case the only people who care about what is OS vs. what is in userland is the developer. This seems to be what Microsoft and Apple are moving towards. In a broader sense, this is where open-source/Free software seems to be at; "Linux" is technically 'just' the Kernel, but virtually all Linux distributions include the equivalent of a fully-loaded Windows PC with office suite and all other user programs.
"But actually trying to use m4 as a general-purpose langage would be deeply perverse" --ESR
With the TITLE. I agree that Unix isn't an "OS". Linux is an OS. AIX is an OS. But what is Unix? Unix is a way of doing thing, and of getting things done(not *quite* the same). It's a way of thinking about the computer you're interfacing with. It's a paradigm. "Everything is a file" sort of thing. I'd say Windows was an OS. It is an implementation of a paradigm(that paradigm is, "ease of use, and form over function"). Linux is an implementation of the Unix paradigm. So is AIX :) Etc., etc..
Dave
Barclay family motto:
Aut agere aut mori.
(Either action or death.)
DKE has a habit of saying outlandish things -- I like that part of him.
He does make a good point. A box with a kernel, ls, mv, cp, vi, and gcc may be a usable computer, but I sure wouldn't use it. I think it's safe to say that 99% of people wouldn't use it either.
To define an OS these days is pretty tricky. At what point does it stop being an OS and becomes an "environment" or a "platform"?
I think it stops being an OS and becomes a platform as soon as you can use it to view porn.
Potato chips are a by-yourself food.
Most of the words in the article are devoted to arguing the definition of the term Operating System. However, I see thie question as purely academic, and its answer (if an answer really exists) really doesn't matter much. His argument seems to have little point, except to say that most people expect more than a CLI when they sit down at their computers, which nobody really disputes.
The real meat of the article is in the end where the author describes the features Apple will be adding that will distinguish MacOS X from the average joe UNIX-ish system.
His distinction is interesting, because OS reasearch is moving in the opposite direction of his definition.
There has been some serious work done on stripping out most of the components in a modern OS, and having each application 'bringing their own' This concept is called the XO microkernel
What this means is that OS'es of the future may have even less functionality and the applications will contain libraries that implement more and more of the OS themselves - for the obvious efficency payoffs. Standard libraries that can be added into applications easily will have to be written of course, but the speedup gains are several orders of magnitude (like x40, using Apache as the benchmark)
This of course completely negates his point, but then again, it's mostly semantics anyway. He just chose to define it in a way that most people don't.
heh
.... Apple users remind me of masochists. I for one believe most people who go to dungeons to get themselves whipped are probably Mac users. After all they support Apple vigorously even after Apple screws its own fans time after time.
C'mon
I work at a place where there are 3 Mac users and one especially rabid one. He keeps harping about features that I have had in my Linux box since before kernel 2.0.
The only thing Mac OS X will have that my Linux box wont is Quicktime 4
That does not make the OS any less important.
For years the Mac Crowd has talked about how they were superior. And, well, many of them still do. Go look at macinstein as an example of chest thumping.
Mr. Every is writing to that chest thumping Mac audience. And, rather than asking the Mac Community to accept they are just another version of Unix, with the potential of selling more copies of Unix than any SINGLE vendor, he makes the claim that:
An OS is what ships with a machine
Huh?
Notice how when the OS was called NeXTSTEP, no effort was made to seperate it from Unix. And, they even sold it without boxes and called it an OS. Mr. Every can barely mention NeXT, let alone BSD.
Its the same way a group of Linux users believe they are not a Unix, but 'something else'.
If mac users want to believe that they are not Unix, I guess they can. I hope they don't mind the snickering behind their backs. And the loudest snikering will come from the old Unix hacks who believe that portable Unix code is the best way to help ALL the Unixes.
If it was said on slashdot, it MUST be true!
Is this the opening shot of a new battle fought in Unix space instead of Windows space in the ongoing Intel v. Apple war?
I get the impression that by trying to distinguish whatever Apple's doing with Unix ("much more than just Unix") from what everyone else is doing with Unix, he's trying to set the stage for the "conflicts" between Intel and Apple "unix" users.
Maybe I'm wrong, but the whole thing seemed to more about how great OSX's gonna be than anything else.
Winblows isn't an OS, its a pittyful excuse of one.
...does slashdot keep posting moronic articles about x,y, z written by some shmuck whose opinion should not matter to anyone anywhere, and then end the post with a comment like "give the article some thought, the author makes some good points." I'm tired of these goddamn posts. i think you guys should create a sidebar called "useless opinions you can start a flamewar over" and throw this article, the Miguel Unix Sucks article, and the rest into said sidebar. For the love of god, stop trying to force biased opinions onto people, find some content, and drop these useless articles. eh, what am I saying, does anyone actually read slashdot anymore?
---
---
we stand in life at midnight, we are always on the threshold of a new dawn.
But, since Apple is now adopting Unix as a foundation for OS X, we will be hearing the Mac evangelists tell us how all this stuff that Unix has is really great, but it's not REALLY an operating system unless you have all the extra stuff that Apple adds.
Of course, looking at his definition of an operating system, we can easily conclude that until OS X, the Macintosh never actually HAD an operating system... where is the basic stuff like pre-emptive multi-tasking? So what was all those pre-OS X Macs? Toys??? I doubt that any serious Mac user would agree with that.
Instead of putting down Unix as "not an entire operating system," why not just say that just an operating system in and of itself is probably not what the majority of most users want.
Looking at the corporate environment, a computer just isn't useful unless it has some of the things that were mentioned: An operating system (of course), a GUI, networking, a web browser, and APPLICATIONS, including Word Processing, and whatever else is needed in order to get work done.
If all this is provided by one vendor, then you have a "one stop shopping" solution that some corporate mindsets find attractive. This is one of the reasons that Microsoft has been successful in the PC market.
But as long as all of these things are available, then any environment -- Windows, Macintosh, Linux, Solaris, Tru64 Unix, and the others -- should serve the needs of most people.
But, of course, this doesn't say that OS X is the greatest thing since sliced bread, and so wouldn't be printed in such a forum. [shrug]
--
"May I have ten thousand marbles, please?"
But that's Microsoft-speak. And Microsoft-speak aside, the traditionally-accepted definition of "operating system" is a set of software that allows programs to communicate with and use the computer's low-level resources (i.e., memory, disk space and other online storage, network, printers, modems, etc.) By this standard, the traditional UNIX kernel does qualify as an "operating system" by the virtue of the services that it provides to applications through applicable APIs (POSIX, ISO C, etc.)
In the end, I guess it depends on what definition you use. Personally, I've always thought it's a bit silly to suggest that a "media player" should be considered part of the OS proper. As another respondent to this post said, if you think that's part of the OS, then exactly what the hell constitutes an application?
--
--
The New World Order is upon us, and it's about damned time.
This author also seems to have the idea that an OS includes software applications. Most people see the OS as everything included on the OS CD. If Windows comes with Media Player, then it's part of the OS. If Red Hat comes with Mozilla, then that's part of the OS. What if I download just the kernel? Is that all I have for my OS? Where is the line drawn between Operating System and Application?
Of course, not to belittle any fans of other Operating Systems, but it doesn't surprise me that this comes from a Mac user. For Macs, the OS is what comes pre-installed on the computer, including the embedded GUI, tools, and QuickTIme.
There's a difference between technical correctness and laymen's terms. It's like "what makes a computer" in that it's all subjective. The author isn't wrong, but I don't agree. I prefer the more technical definition.
icqqm [ICQ:11952102]
Recall what we are debating, and realize that it's okay to say that an OS is pretty much just the kernel. What was MS-DOS then? It is a PRODUCT which Microsoft calls "MS-DOS", which includes the OS, or kernel, and some utilities.
What is Red Hat Linux? It is an OS/kernel, with LOTS of utilities, applications, a GUI, etc.
What is Windows NT? It's (surprise) an OS/kernel, with some utilities, a GUI, Notepad, etc. A software product, which Microsoft sometimes calls an Operating System, an Operating Environment, or an innovative product, depending on who they are trying to sway at the moment.
But what an operating system is HAS NOT changed after all these years. It's a program or group of programs that manage the execution of and resources required by application programs. The rest is just the extras that are included to sell the actual OS.
Resist the Microsoft definition! :-)
I always equivocate. Well, almost always.
A lot of the confusion over the true definition of an operating system arises mainly because of the consituent words of "operating system" not only have broad definitions, but multiple ones.
First of all, operating.
Operate what? The processor, memory, devices, and peripherals? Would you include filesystems, video buffers, and audio hardware? Where does the term operate end? You could spend an eternity trying to come to terms with what it means to operate something. You could try to include every application that ever manipulates a hardware device as part of the operating system because it "operates" hardware. Does the program "operate" the hardware or does it just "use" the hardware? Which is correct? What about drivers? Do they "operate" hardware? What about libraries? Do they really "operate" anything? Or system calls? Do they "operate"? They might be part of the kernel, but do they really "operate" anything? Well, do you mean "operate on," "operate by," "operate with," or what?
Trying to use the term operate to define what is part of an OS and what is not is completely fruitless.
Secondly, what is a system? Is it only a singular entity, or is it made of constituent parts? Are those parts completely independent, partially dependent, or just simply related? If there are multiple parts of the system, can they be removed, replaced, or more added? The definition of system doesn't come anywhere close to addressing these types of questions.
This is what makes the interpretation of the term so difficult (and often totally arbitrary) because there is not a narrow literal definition of these words.
There isn't any concensus by any means on what the term really means, and there is no accepted definition either. So you must understand that someone else's more broad interpretation of the term may in fact be warranted on basis that you don't particularly agree on, but can't really be qualitatively debated.
the term operating system must be redifined to deal with the context with which it is used, ie. are we discussing a desktop or server environment? will it be used for development or multimedia purposes.
It never really was defined in the first place. You have to keep in mind that a system can be made up parts that aren't mandatory. You may be running a window manager on one machine and on another, no window manager. Calling that window manager part of the operating system doesn't necessarily make the statement that the system without the window manager is not an operating system.
Moreover, this broad interpretation of the word system detracts away from the basis for flip side of the argument, that only a small (and non-replaceable) part, the common denominator, is the system. The term system doesn't make any indications on the size, the number of components, or the relationship between any of the components. It doesn't specify that the only parts are x, y, and z. It's just too broad.
Arguments would be different if we still used antiquated terms like Master Control Program, which might be a more precise term, but as it is, the term operating system encapsulates both arguments and requires arbitrary interpretation, which there is no sense in really trying to come to terms with.
The nature of the term is broad. Quit trying to tell everyone they are wrong because they don't draw the same arbitrary conclusions you have made.
120 characters isn't enough to explain it.
Language is the first casualty. If you market a product class X and call it product class Y for long enough and you are really good at it, you can then claim X as the definitive Y.
Fact is Fiction and TV Reality...
Slashdot: Where nerds gather to pool their ignorance
In reality, however, UNIX is something far better than an OS. UNIX (or more specifically, the Single UNIX Specification) is a set of standard interfaces, APIs, and tools that make up a group of systems characterised as UNIX systems. The standards range from POSIX to vi to CDE. The beauty of this is the Open Systems (not open source) model, which means that anyone can implement a UNIX system and you will know what you are getting, so ISVs, administrators, and users don't have to worry about fragmentation.
So the OS is HP-UX, Solaris, AIX, Tru64, whatever--they are all based on UNIX as a foundation, and if you were to implement _just_ UNIX with no value added, you would have a complete OS, including GUI. UNIX is not an OS; UNIX is an Open Systems spec for OSes to follow.
(Linux, by the way, does not follow it, and nearly all open source projects are non-open systems because Open Systems requires industry consensus and documented, backwards-compatible APIs)
It is happening and there is no stopping integration. Things evolve over time. He should have said unix is not a so called modern OS or a desktop OS because it does not provide things that are standard on other desktops. Take the car example and stretch it a little. Say an embedded html browser is compared to the radio. When radio first came out, you couldnt get one standard in your car but slowly over time they became standard, along with a slew of other things. The fact is, OS's are not static, they are not model-T's stuck in time trying to hold on to their simplicity. Cars evolved as users needs evolved; as everything else in life does. There is no line you can draw, its just a progression driven by new necessities that must be incorporated to move on. If you don't like listening to the radio then don't turn it on. But there is no real reason to rip it out either.
Well, neither Windows nor MacOS came with any utilities that would make me productive as a programmer. I would have to shell out $$$ to get Visual Studio for Windows, or Codewarrior for MacOS.
Now, to their credit, Apple has made MPW a free download. This was not true in the past. In any case, I would still have to shell out $$$ for an ADC membership (for access to teachnical documentation), a copy of Inside Macintosh, and various random things to make me actually useful as a programmer.
This is the biggest philosophical reason that I stick with Linux on my Powerbook. I want an Operating System that can serve any purpose I give it, both for practicality, and so that I still have a good approximation to a "computer" (in the academic sense, something that can do what a Turing Machine can do).
Given a computer, in the practical sense, which is a piece of electronic hardware that can be programmed and interfaced to other pieces of hardware, I define an operating system as that which enables me to easily create applications, or use applications others have created. I define an application as a program which enables me to use my computer to address a problem in the Real World. Thus my preferred definitions of operating systems and applications are more practical (from my standpoint) than academic.
Now from that standpoint it's perfectly aceptable to refer to a kernel+libraries+basic tools+compiler as an operating system, and, depending on your computer using preferences, another acceptable definition is above+graphical libraries+widget sets (as MacOS does.)
However I do not accept a web browser as part of the OS. It's an application, dammit. :P
I have a positive modifier on Troll. When I mod someone Troll their karma should go UP!
Yes, you are right: "the purpose of an operating system is to provide an environment in which a user can execute programs".
In the old days it means reading punch cards and printing out lines of output. Later it grew to embrace terminals. Now GUI's, video, the web, a 3d api, and sound are all part of the popular programs people run. Any modern OS has to provide an environment for this.
The minimum amount of code to run "Quake III" successfully is... well it looks more like Mac OS X than, say, BSD.
The web browser is part of the Operating System.
It's true. Microsoft said so.