Kernel design Design document - Interrupts and Threading - See Solaris implementation of Kernel threading - Need way to service interrupts - Need a scheduler - Virtual Memory - - Filesystem - File Descriptor Ops: - close, read, write, seek, open (fd, name, opts), truncate, fstat, chown (do we need a permission system?), mount, unmount, remount(?), dup - device special operations, such as eject operation for a cdrom - proposal: make device descriptors a directory - a cdrom would have a directory cdrom/ with the files eject and disk in it - or we can just limit what the users can do VMIPS - We Need: - serial devices - hard disk - Twohey has written the back half that writes blocks to disk - This needs to get tied into VMIPS - We should see how this is done in real life - performance enhancements - GNU Lighting for writing JIT compilers - loading of user programs - a.out, ELF, COFF - ELF seems to be the standard we'll go with that Books Needed - Generously subsidized by the CSUA - Solaris Internals Core Kernel Architecture, Mauro, McDougall, ISBN: 0130224960 - Practical File System Design with the Be File System, Giampaolo, ISBN: 1558604979 Meeting was cut somewhat short in order to make a book run to see how Solaris handles threading and interrupts. (notes for this day, taken by dans@csua)