forked from pifty/tutes-dump
250 lines
8.1 KiB
HTML
250 lines
8.1 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
|
|
<!--Converted with LaTeX2HTML 2K.1beta (1.50)
|
|
original version by: Nikos Drakos, CBLU, University of Leeds
|
|
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
|
|
* with significant contributions from:
|
|
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
|
|
<HTML>
|
|
<HEAD>
|
|
<TITLE>3. What is Unix?</TITLE>
|
|
<META NAME="description" CONTENT="3. What is Unix?">
|
|
<META NAME="keywords" CONTENT="unx">
|
|
<META NAME="resource-type" CONTENT="document">
|
|
<META NAME="distribution" CONTENT="global">
|
|
|
|
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
|
|
<META NAME="Generator" CONTENT="LaTeX2HTML v2K.1beta">
|
|
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
|
|
|
|
<LINK REL="STYLESHEET" HREF="unx.css">
|
|
|
|
<LINK REL="next" HREF="node5.html">
|
|
<LINK REL="previous" HREF="node3.html">
|
|
<LINK REL="up" HREF="unx.html">
|
|
<LINK REL="next" HREF="node5.html">
|
|
</HEAD>
|
|
|
|
<BODY >
|
|
<!--Navigation Panel-->
|
|
<A NAME="tex2html175"
|
|
HREF="node5.html">
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
|
|
SRC="../img/latex2html/next.png"></A>
|
|
<A NAME="tex2html171"
|
|
HREF="unx.html">
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
|
|
SRC="../img/latex2html/up.png"></A>
|
|
<A NAME="tex2html165"
|
|
HREF="node3.html">
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
|
|
SRC="../img/latex2html/prev.png"></A>
|
|
<A NAME="tex2html173"
|
|
HREF="node1.html">
|
|
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
|
|
SRC="../img/latex2html/contents.png"></A>
|
|
<A NAME="tex2html1"
|
|
HREF="../"><IMG
|
|
ALIGN="BOTTOM" SRC="../img/latex2html/root.png"
|
|
ALT="root">
|
|
</A>
|
|
|
|
<BR>
|
|
<B> Next:</B> <A NAME="tex2html176"
|
|
HREF="node5.html">4. Some Basic Commands</A>
|
|
<B> Up:</B> <A NAME="tex2html172"
|
|
HREF="unx.html">Introduction to Unix &</A>
|
|
<B> Previous:</B> <A NAME="tex2html166"
|
|
HREF="node3.html">2. Introduction</A>
|
|
  <B> <A NAME="tex2html174"
|
|
HREF="node1.html">Contents</A></B>
|
|
<BR>
|
|
<BR>
|
|
<!--End of Navigation Panel-->
|
|
<!--Table of Child-Links-->
|
|
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
|
|
|
|
<UL>
|
|
<LI><A NAME="tex2html177"
|
|
HREF="#SECTION00410000000000000000">3.1 Short Answer</A>
|
|
<LI><A NAME="tex2html178"
|
|
HREF="#SECTION00420000000000000000">3.2 Long Answer</A>
|
|
<UL>
|
|
<LI><A NAME="tex2html179"
|
|
HREF="#SECTION00421000000000000000">3.2.1 My Opinion</A>
|
|
<LI><A NAME="tex2html180"
|
|
HREF="#SECTION00422000000000000000">3.2.2 Another Opinion</A>
|
|
</UL></UL>
|
|
<!--End of Table of Child-Links-->
|
|
<HR>
|
|
|
|
<H1><A NAME="SECTION00400000000000000000"></A>
|
|
<A NAME="unx-what-is-unix"></A>
|
|
<BR>
|
|
3. What is Unix?
|
|
</H1>
|
|
|
|
<P>
|
|
What is unix? That's a loaded question.
|
|
|
|
<P>
|
|
|
|
<H1><A NAME="SECTION00410000000000000000">
|
|
3.1 Short Answer</A>
|
|
</H1>
|
|
|
|
<P>
|
|
The short answer is ``Unix is an operating system''. So is
|
|
Gnu/Linux, which is often just called Linux. So are HP/UX,
|
|
AIX, NeXT STEP (now called Apple Macintosh OS 10), &
|
|
Microthought Winders (often called many uncomplimentary
|
|
things).
|
|
|
|
<P>
|
|
If this short answer is enough for you, congratulations on
|
|
knowing the value of keeping things simple. Now skip ahead
|
|
to Chapter <A HREF="node5.html#basics">4</A> ``Some Basic Commands''.
|
|
|
|
<P>
|
|
|
|
<H1><A NAME="SECTION00420000000000000000">
|
|
3.2 Long Answer</A>
|
|
</H1>
|
|
|
|
<P>
|
|
The long answer is ``It depends on who you ask''.
|
|
|
|
<P>
|
|
|
|
<H2><A NAME="SECTION00421000000000000000">
|
|
3.2.1 My Opinion</A>
|
|
</H2>
|
|
|
|
<P>
|
|
In my opinion, unix is a description of the function of an
|
|
operating system. I even say that unix is an Application
|
|
Programmer's Interface (API). Any operating system which
|
|
implements the unix API is a unix; it's an implementation of
|
|
unix. Gnu/Linux is a unix.<A NAME="tex2html4"
|
|
HREF="footnode.html#foot51"><SUP>3.1</SUP></A> Gnu/Linux is often called
|
|
Linux, but strictly speaking, Linux is a unix kernel, but
|
|
not a whole unix operating system. There are many other
|
|
implementations of unix. I can name original BSD, OpenBSD,
|
|
FreeBSD, NetBSD, HP/UX, AIX, Minix, Apple Macintosh OS 10,
|
|
NeXT STEP, QNX, & Lynx. There are probably others.
|
|
|
|
<P>
|
|
Now for some legal bullshit. ``UNIX'' is a trademark of
|
|
<A NAME="tex2html5"
|
|
HREF="http://www.opengroup.org/">The Open
|
|
Group</A>. From what I can infer
|
|
from their web site about their opinions of what unix is,
|
|
they would agree with me that it's a description of the
|
|
function of a family of operating systems, but they would
|
|
also add ``that we have certified to be UNIX''. So legally,
|
|
it's not a UNIX unless The Open Group certifies it as a
|
|
UNIX. So a lot of those operating systems I listed as
|
|
unices are not UNIXes. It's a thoroughly sad case of
|
|
legalities getting in the way of simplicity & sanity.
|
|
|
|
<P>
|
|
Anyway, I say that if an operating system behaves like unix,
|
|
then it's a unix, though not necessarily a UNIX<IMG
|
|
WIDTH="31" HEIGHT="18" ALIGN="BOTTOM" BORDER="0"
|
|
SRC="img1.png"
|
|
ALT="$^{(tm)}$">.
|
|
|
|
<P>
|
|
|
|
<H2><A NAME="SECTION00422000000000000000">
|
|
3.2.2 Another Opinion</A>
|
|
</H2>
|
|
|
|
<P>
|
|
Another opinion, which I don't share, is that Unix is a
|
|
particular product. HP/UX is another. AIX is another.
|
|
Gnu/Linux is another. You get the idea.
|
|
|
|
<P>
|
|
Fine, except that there is no product simply called
|
|
``Unix'' for sale today. You can't even point at a product
|
|
that is the direct descendant of the original Unix that
|
|
Ritchie & Thompson wrote at AT&T. Their Unix was <EM>the</EM> definitive Unix, the original, the one named Unix. You
|
|
can't buy it today, methinks. And many of those that you
|
|
can obtain today shared code with the original Unix. BSD is
|
|
Unix as modified by students at the University of California
|
|
in Berkeley. That's where sockets were invented. BSD
|
|
branched into many implementations, several of which are
|
|
alive & well today. Theoretically, each of those
|
|
implementations has at least some of the original Unix code
|
|
in them. Yet somehow BSD isn't a unix? Get real. I'm sure
|
|
there are similar examples of cross-pollination between the
|
|
other unix operating systems available today.
|
|
|
|
<P>
|
|
Another problem with the claim that BSD, Gnu/Linux, & the
|
|
others are not unix is that it takes little effort to write
|
|
a program that runs on all of them. There are enough
|
|
differences that a non-trivial program requires a little
|
|
care to be portable, but it's not like portability concerns
|
|
affect the architecture of your program. All in all, it is
|
|
easy to port code between HP/UX, AIX, Gnu/Linux, & the
|
|
BSDs. This isn't an accident. Those products are
|
|
implementations of a single idea of what an operating system
|
|
should be. That idea needs a name so that when you ask me
|
|
what kind of operating system I program for a living, I
|
|
don't have to reply with ``I'm an HP/UX, Gnu/Linux, AIX,
|
|
FreeBSD, NetBSD, OpenBSD, QNX, & others programmer''. I
|
|
say the name for that concept is ``unix''. If not, then
|
|
it's POSIX, but POSIX is also a trademarked term with a
|
|
certification schedule from The Open Group (together with
|
|
IEEE).
|
|
|
|
<P>
|
|
So somewhat out of contempt for our legal system's petty
|
|
concerns for terminology, I say it's all ``unix''. There
|
|
you have it, in more detail & controversy than anyone with
|
|
a sense of perspective would ever want.
|
|
|
|
<P>
|
|
<HR>
|
|
<!--Navigation Panel-->
|
|
<A NAME="tex2html175"
|
|
HREF="node5.html">
|
|
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
|
|
SRC="../img/latex2html/next.png"></A>
|
|
<A NAME="tex2html171"
|
|
HREF="unx.html">
|
|
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
|
|
SRC="../img/latex2html/up.png"></A>
|
|
<A NAME="tex2html165"
|
|
HREF="node3.html">
|
|
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
|
|
SRC="../img/latex2html/prev.png"></A>
|
|
<A NAME="tex2html173"
|
|
HREF="node1.html">
|
|
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents"
|
|
SRC="../img/latex2html/contents.png"></A>
|
|
<A NAME="tex2html1"
|
|
HREF="../"><IMG
|
|
ALIGN="BOTTOM" SRC="../img/latex2html/root.png"
|
|
ALT="root">
|
|
</A>
|
|
|
|
<BR>
|
|
<B> Next:</B> <A NAME="tex2html176"
|
|
HREF="node5.html">4. Some Basic Commands</A>
|
|
<B> Up:</B> <A NAME="tex2html172"
|
|
HREF="unx.html">Introduction to Unix &</A>
|
|
<B> Previous:</B> <A NAME="tex2html166"
|
|
HREF="node3.html">2. Introduction</A>
|
|
  <B> <A NAME="tex2html174"
|
|
HREF="node1.html">Contents</A></B>
|
|
<!--End of Navigation Panel-->
|
|
<ADDRESS>
|
|
Gene Michael Stover
|
|
2005-07-07
|
|
</ADDRESS>
|
|
</BODY>
|
|
</HTML>
|