[Prev][Next][Index][Thread]
New OSKit snapshot oskit-19991124
This is an informal snapshot to make available the improvements we've made
to the OSKit lately, and give all you energetic OS hackers something to
chew on along with your leftover turkey this weekend. An incomplete list
of changes appears below.
As before, go to http://www.cs.utah.edu/flux/oskit/
and everything hangs off there; currently mostly in ftp.
Enjoy, and Happy Thanksgiving from the Flux Group!
New versions of Linux device drivers.
The entire suite of Linux device drivers has been updated to
2.2.12, replacing the code from Linux 2.0.29 used in previous
OSKit versions. This adds a number of new devices as well as
better versions of existing drivers, bringing the last 2.5 years
of Linux device driver development into the OSKit.
Floppy support.
The PC floppy disk driver (from Linux 2.2.12) is now available
(on x86 only). This driver has had only very minimal testing.
New versions of FreeBSD components.
The FreeBSD C library, math library, and network stack components
have been updated to release 3.2-STABLE of FreeBSD from the prior
collection of code from various 2.x releases. The ISA device
drivers taken from FreeBSD have not been updated.
OSKit StrongARM support improved.
The port of the OSKit to the StrongARM continues to progress
quickly. FreeBSD networking, NetBSD filesystem, and Linux
device driver support have been added. The builtin 10Mbit
ethernet and IDE Zip drive have been modestly tested. So far we
still only support the DNARD ("Shark") platform.
Flask security components.
Our colleagues at the NSA have integrated several more
components of the Flask security architecture (see
http://www.cs.utah.edu/flux/flask) into the OSKit, drawing upon
the work done in the Fluke operating system and from their
current work in Linux. This snapshot includes COM interfaces
and default implementations for the "access vector cache" and
"security server" components, as well as updates to the file
access control wrappers. The Flask COM interfaces are
documented in a new chapter of the OSKit documentation
(doc/flask.tex). A simple example program,
examples/x86/netbsd_sfs_com.c, demonstrates the use of the
security server and filesystem access check framework.
GCC 2.95 support for the x86.
Previous versions of the OSKit would not work (or even build)
with the EGCS line of GCC. This snapshot supports building with
GCC 2.95.2, which is now the recommended version to use.
Note that the StrongARM port has always required GCC 2.95.
(See the previous snapshot announcement in the ANNOUNCE file
for full details about the tools needed for the StrongARM build.)
Dropped a.out build support.
We no longer support an aout build of the OSKit. You can still
produce aout format kernels, but it is done by converting an ELF
kernel with mkbsdimage and a special version of GNU ld. Please
contact us if you have concerns about object file formats for
your uses of the OSKit.
Support for buffering/blocking console input instead of busy-wait.
A new component layered on top of the minimal console support
provides a console device with interrupt-driven, buffered input
and proper blocking support with no busy-waiting (for both the
serial-port console and the PC console). (This is still not a
production-quality device driver, and the default console
support remains unchanged, using a simple busy-wait.) The new
function start_cq_console in -loskit_startup is the easy way to
use the new console code.
"Enhanced" console support on X86.
The minimal output support for the X86 PC console has been
extended from emulating a teletype on steroids to emulating the
venerable ADM3A terminal, including support for a ^G bell using
the PC speaker. The minimal keyboard input support for the X86
console now recognizes the Control and Meta (Alt) modifier keys.
(You can enjoy the world's only ADM3A with 25 lines and a Meta key!)
Prototype packet dispatcher.
Framework for generic packet filtering support. Currently uses DPF.
Numerous bug fixes.
Fixed problem with interrupts being enabled too soon in the
base_* code. The most annoying manifestation of this was netboot
hanging/crashing on some machines.
Many bootp fixes from Michael Hohmuth <hohmuth@innocent.com>.
Thanks Michael!
Lots of fixes to the pthreads library. Most notably, a memory
leak when threads exited, indefinitely delayed thread cleanups,
and a random memory trashing bug on context switching.
Tweaks to X86 interrupt handling. Mostly related to GPROF support.
The interrupt flag should now consistantly be disabled in hardware
interrupt handlers and enabled in software interrupt handlers.
With GPROF, the profiling timer should almost always be enabled
except for small sections of code on interrupt entry and exit.