02.14.89
We are pleased to introduce the SunOS Internals course as described
below. We anticipate that this will be a popular offering. 

Course:       UP-450
              SunOS Internals: Data Structures and Algorithms

Duration:     3 days

Dates:        03/20/89 - 03/22/89
              05/15/89 - 15/17/89

Tuition:      $750
        
Location:     Sun Microsystems Education Center
              1494 California Circle
              Milpitas, CA 95058


Registration:
	Call our registrar at 800-422-8020.

	When registering, please have this information ready:

	name of student(s)
	company name, invoicing address, phone
	course title (SunOS Internals)
	course number (UP-450)
	date you wish to attend
	terms of payment



Description:
	This course provides a broad overview of how the SunOS kernel
	provides its basic services. It will be most useful to those who
	need to learn how these services are provided.  Individuals
	involved in technical and sales support can learn the capabilities
	and limitations of the system; applications developers can learn
	how to effectively and efficiently interface to the system;
	systems programmers without direct experience with the SunOS 
	UNIX kernel can learn how to maintain, tune, and interface to that
	system.

	This course is directed to users who have had at least a year of
	experience using the UNIX system. They should have an understanding
	of fundamental algorithms (searching, sorting, and hashing) and
	data structures (lists, queues, and arrays). Students will not need
	to prove relationship with a source license holder, as actual source
	code will not be presented.


	This course will provide a firm background in the SunOS kernel.
	The SunOS kernel supports both the BSD (Berkeley) and AT&T System
	V user interfaces. (In this course, only the BSD user interface
	and services will be covered.) The first half of the course will
	cover basic kernel services, process structure, memory management,
	scheduling, paging and swapping.  The kernel I/O structure will be
	described showing how I/O is multiplexed, special devices are
	handled, and the buffer pool is managed.  The implementation of
	the file system and its capabilities will be described. The
	introduction to the interprocess and networking capabilities of
	the system will provide an overview of networking terminology and
	an example use of the socket interface.  Other related topics
	include performance measurement, system tuning, and security issues.
	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.


Agenda:       Monday morning - Kernel Overview
              Kernel terminology
              Basic kernel services
              Process structure

              Monday afternoon - Kernel Resource Management
              Memory management
              Paging and swapping
              Scheduling
              Signals
 
              Tuesday morning - Kernel I/O structure
              Special files
              Line disciplines
              Multiplexing I/O
              Autoconfiguration strategy
              Structure of a disk device driver

              Tuesday afternoon - File System Overview
              File system services
              Block I/O system (buffer cache)
              File system implementation
              Vnodes and NFS

              Wednesday morning - System Tuning
              Performance measurement
              System tuning
              Crash dump analysis
              Security issues

              Wednesday afternoon - Interprocess Communication
              Concepts and terminology
              Basic IPC services
              Example use of IPC and network facilities
              Subnets, address resolution, and trailers
              Routing policy


Instructor:
	Dr. Marshall Kirk McKusick received his undergraduate degree in
	Electrical Engineering from Cornell University.

	His graduate work was done at the University of California, where
	he received Masters degrees in Computer Science and Business
	Administration, and a Ph.D. in the area of programming languages.

	While at Berkeley Dr. McKusick implemented the 4.2BSD fast file
	system and was involved in implementing the Berkeley Pascal system.
	He currently is the Research Computer Scientist at the Berkeley
	Computer Systems Research Group, continuing the development of
	future versions of Berkeley UNIX.

	Dr. McKusick is a director of the Usenix Association, a member of
	the editorial board of UNIX Review Magazine, and a member of ACM
	and IEEE.

	Dr. McKusick is one of the authors of the class text "The Design and
	Implementation of the 4.3 BSD UNIX Operating System".


Class Text:
	Samuel J. Leffler, Marshall Kirk McKusick, Michael J Karels, and
	John S. Quarterman, ``The Design and Implementation of the 4.3 BSD
	UNIX Operating System'', Addison-Wesley Publishing Company, Reading,
	Massachusetts, 1989, 496 pages, $39.95.

	The text will be provided to students in class.