Overview
The BLITZ System is a collection of software designed to support a university-level
course on Operating Systems. Over the course of one or two terms, students will implement
a small, but complete, operating system kernel.
The BLITZ software provides the framework for these student projects.
This is Version 2.0, dated 19 September 2007
What's new?
click here
(Last updated 1 October 2009.)
Access to the previous version:
Version 1.0
Documentation
-
An Overview of the BLITZ System (7 pages)
This document gives an introduction to and overview of the BLITZ system.
html
pdf
-
An Overview of the BLITZ Computer Hardware (8 pages)
This document introduces the architecture of the emulated CPU and I/O devices.
html
pdf
-
The BLITZ Architecture (71 pages)
This document describes the BLITZ processor hardware. It includes information about the CPU registers, the instruction set architecture, and the BLITZ assembly language.
html
pdf
-
Example BLITZ Assembly Program (7 pages)
This is a compete, stand-alone BLITZ assembly program. This program can serve as a test of the BLITZ tools and an introduction to using the emulator.
html
pdf
-
BLITZ Instruction Set (4 pages)
This document contains detailed information on each of the BLITZ machine instructions. It will be of interest primarily to assembly language programmers.
html
pdf
-
The BLITZ Emulator (44 pages)
This document describes the BLITZ virtual machine emulator and debugger. It shows how to run a BLITZ program and describes all of the available debugging commands. It also includes detailed information about the disk and terminal I/O devices.
html
pdf
-
An Overview of KPL, A Kernel Programming Language (66 pages)
This document describes the "KPL" high-level programming language.
html
pdf
-
Context-Free Grammar of KPL (7 pages)
This document contains a formal specification of the grammar of KPL and can be used as a quick reference, for syntactical questions.
html
pdf
-
The Format of BLITZ Object and Executable Files (13 pages)
This document describes the files produced by the assembler and the linker. This document may be of some interest to students, but is not necessary.
html
pdf
-
BLITZ Tools: Help Information (12 pages)
Each of the BLITZ tools will produce some "help" information; this document collects such information from each of the tools. This document also includes detailed information about the syntax of BLITZ assembly language programs.
html
pdf
-
BLITZ Instruction Set - Sorted Lists (4 pages)
This document lists all BLITZ machine instructions. This list is first ordered alphabetically by instruction name and then listed numerically by op-code. It will be of interest primarily to assembly language programmers.
html
pdf
-
BLITZ Misc. Technical Notes (8 pages)
This document contains a number of miscellaneous comments and notes. This document may be of some interest to students, but is not necessary.
html
pdf
-
The BLITZ Assembler (20 pages)
This document describes the BLITZ assembler tool. This document may be of some interest to students, but is not necessary.
html
pdf
-
The Thread Scheduler and Concurrency Control Primitives (41 pages)
This document describes the workings of a kernel thread scheduler using, as a specific example, the scheduler in the BLITZ system. It is aimed at someone just learning about kernel concepts. Familiarity with the BLITZ system is not assumed and is not needed to understand this document. This document is not required by students working on the BLITZ kernel project, but it may be helpful to those working on projects 2 and 3.
html
pdf
The Operating System Project
The BLITZ Tools
Information for Instructors
About the Author
Harry H. Porter III, Ph.D.
Computer Science Department
Portland State University
Short Bio:
click here
Harry's Website: www.cs.pdx.edu/~harry
Email: harry@cs.pdx.edu