*BSD News Article 31645


Return to BSD News archive

Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!msuinfo!agate!toe.CS.Berkeley.EDU!mckusick
From: mckusick@toe.CS.Berkeley.EDU (Kirk McKusick)
Newsgroups: comp.unix.bsd
Subject: BSD-based UNIX Internals Class
Date: 14 Jun 1994 18:19:19 GMT
Organization: University of California, Berkeley
Lines: 70
Message-ID: <2tksb7$h1a@agate.berkeley.edu>
NNTP-Posting-Host: toe.cs.berkeley.edu


This is your opportunity to get a BSD-based UNIX internals class
taught by those of us that were in charge of developing it. The
description of the course is given below followed by contact
information to get a more detailed course description and/or to
sign up.



                       UNIX Kernel Internals:
               Implementation, Tuning, and Networking

                   Dr. Marshall Kirk McKusick
               University of California at Berkeley

                       Michael J. Karels
                 Berkeley Software Design, Inc.

Description
-----------
This course will provide a firm background in the UNIX kernel.
The course includes coverage of most BSD-derived kernels including
Novell's System V Release 4, Sun's Solaris, and DEC's OSF/1. The
POSIX kernel interfaces will be used as examples where they are
defined. Where they are not defined, the BSD interfaces will be
described and then related to other vendors interfaces. The course
will cover basic kernel services, process structure, virtual and
physical memory management, scheduling, paging and swapping. The
kernel I/O structure will be described showing how I/O is multiplexed,
special devices are handled, character processing is done, and the
buffer pool is managed. The implementation of the filesystem and
its capabilities will be described. The filesystem interface will
then be generalized to show how to support multiple filesystem
types such as Sun Microsystem's Network File System (NFS). Other
related topics include performance measurement, system tuning, and
security issues. The networking half of the course will start with
an overview of networking terminology and an introduction to the
interprocess communication interface (sockets). The course will
then describe the 4.4BSD kernel network architecture, layering and
implementation. This architecture, available in both 4.4BSD and
the unencumbered 4.4BSD-Lite, serve as the basis for the networking
code in most versions of UNIX, and in several other systems as
well. Routing issues will be covered (including use of the Berkeley
routing protocol, routed or "RIP"). The tutorial will also include
a detailed overview of the support for multiple networking protocol
families and address formats and the generalized layering scheme,
including changes made to support the OSI protocols. The system
communications primitives and internal layering will be discussed,
with emphasis on the interfaces between the layers; the TCP/IP
implementation will be used as an example. A detailed discussion
of TCP algorithms will includes slow start and congestion avoidance.
The course concludes with a critique of the current architecture
and a look at other alternatives. The presentations will emphasize
code organization, data structure navigation, and algorithms. It
will not cover the machine specific parts of the system such as
device drivers.

"UNIX Kernel Internals: Implementation, Tuning, and Networking",
July 18-22, 1994, price $1495, includes course notes and textbook.
Registration #E0135H

For further information contact:

Marcus Hennessy
UCLA Extension
10995 Le Conte Ave  Room 542
Los Angeles, CA 90024
(310) 825-1047
(310) 206-2815 fax
mhenness@unex.ucla.edu