207 lines
4.3 KiB
HTML
207 lines
4.3 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
<HTML
|
|
><HEAD
|
|
><TITLE
|
|
>Various parts of an operating system</TITLE
|
|
><META
|
|
NAME="GENERATOR"
|
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
|
|
REL="HOME"
|
|
TITLE="Linux System Administrators Guide"
|
|
HREF="index.html"><LINK
|
|
REL="UP"
|
|
TITLE="Overview of a Linux System"
|
|
HREF="overview.html"><LINK
|
|
REL="PREVIOUS"
|
|
TITLE="Overview of a Linux System"
|
|
HREF="overview.html"><LINK
|
|
REL="NEXT"
|
|
TITLE="Important parts of the kernel"
|
|
HREF="kernel-parts.html"></HEAD
|
|
><BODY
|
|
CLASS="SECT1"
|
|
BGCOLOR="#FFFFFF"
|
|
TEXT="#000000"
|
|
LINK="#0000FF"
|
|
VLINK="#840084"
|
|
ALINK="#0000FF"
|
|
><DIV
|
|
CLASS="NAVHEADER"
|
|
><TABLE
|
|
SUMMARY="Header navigation table"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TH
|
|
COLSPAN="3"
|
|
ALIGN="center"
|
|
>Linux System Administrators Guide: </TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="left"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="overview.html"
|
|
ACCESSKEY="P"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="80%"
|
|
ALIGN="center"
|
|
VALIGN="bottom"
|
|
>Chapter 2. Overview of a Linux System</TD
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="right"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="kernel-parts.html"
|
|
ACCESSKEY="N"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="VARIOUS-PARTS"
|
|
></A
|
|
>2.1. Various parts of an operating system</H1
|
|
><P
|
|
>UNIX and 'UNIX-like' operating systems (such as Linux) consist
|
|
of a <I
|
|
CLASS="GLOSSTERM"
|
|
>kernel</I
|
|
> and some
|
|
<I
|
|
CLASS="GLOSSTERM"
|
|
>system programs</I
|
|
>. There are also some
|
|
<I
|
|
CLASS="GLOSSTERM"
|
|
>application programs</I
|
|
> for doing work.
|
|
The kernel is the heart of the operating
|
|
system. In fact, it is often mistakenly considered to be the
|
|
operating system itself, but it is not. An operating system provides
|
|
provides many more services than a plain kernel.</P
|
|
><P
|
|
>It keeps track of files on the disk, starts programs and runs
|
|
them concurrently, assigns memory and other resources to various
|
|
processes, receives packets from and sends packets to the network,
|
|
and so on. The kernel does very little by itself, but it provides
|
|
tools with which all services can be built. It also prevents anyone
|
|
from accessing the hardware directly, forcing everyone to use the
|
|
tools it provides.
|
|
This way the kernel provides some protection for users from each
|
|
other. The tools provided by the kernel are used via
|
|
<I
|
|
CLASS="GLOSSTERM"
|
|
>system calls</I
|
|
><I
|
|
CLASS="GLOSSTERM"
|
|
>. See manual page section 2 for more
|
|
information on these. </I
|
|
></P
|
|
><P
|
|
>The system programs use the tools provided by the kernel to
|
|
implement the various services required from an operating system.
|
|
System programs, and all other programs, run `on top of the
|
|
kernel', in what is called the <I
|
|
CLASS="GLOSSTERM"
|
|
>user mode</I
|
|
>.
|
|
The difference between system and application programs is
|
|
one of intent: applications are intended for getting useful
|
|
things done (or for playing, if it happens to be a game),
|
|
whereas system programs are needed to get the system working.
|
|
A word processor is an application; <B
|
|
CLASS="COMMAND"
|
|
>mount</B
|
|
>
|
|
is a system program. The difference is often somewhat blurry,
|
|
however, and is important only to compulsive categorizers.</P
|
|
><P
|
|
>An operating system can also contain compilers and their
|
|
corresponding libraries (GCC and the C library in particular under
|
|
Linux), although not all programming languages need be part of
|
|
the operating system. Documentation, and sometimes even games,
|
|
can also be part of it. Traditionally, the operating system has
|
|
been defined by the contents of the installation tape or disks;
|
|
with Linux it is not as clear since it is spread all over the
|
|
FTP sites of the world.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="NAVFOOTER"
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"><TABLE
|
|
SUMMARY="Footer navigation table"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="overview.html"
|
|
ACCESSKEY="P"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="index.html"
|
|
ACCESSKEY="H"
|
|
>Home</A
|
|
></TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="kernel-parts.html"
|
|
ACCESSKEY="N"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
>Overview of a Linux System</TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="overview.html"
|
|
ACCESSKEY="U"
|
|
>Up</A
|
|
></TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
>Important parts of the kernel</TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></BODY
|
|
></HTML
|
|
> |