IA-32
Intel 32-bit architecture
handle
Integer number which identifies a kernel object in user mode
process
Contains an address space and a handle table. Each thread runs within one process's address space.
Video Electronics Standards Association
Defines the VESA BIOS Extension, a software interface for SuperVGA cards
console server
Provides access to the display and keyboard for character applications
free list
Kernel: List of pages which have been freed but not yet zeroed
zero list
Kernel: List of pages which have been zeroed and are available for allocation
Virtual Memory Manager
Kernel: Manages applications' address spaces
port
Special file which applications can connect to. When a client connects, a pipe is created and given to the server and client A server creates a port by creating a file in /System/Ports. A client can connect by opening the same file.
pipe
Special file with two ends. What is written to one end can be read from the other, and vice versa. Create an unnamed pipe using FsCreatePipe, or obtain one by connecting to a port.
Asynchronous Procedure Call
Kernel: Function call which takes place within the context of another thread, some time in the near future. Useful for running kernel-mode code in the address space of another process.
kernel
Core of an operating system. Manages the resources of the computer and makes them available to applications.
File System Driver
Kernel: Driver for a file system. The kernel implements portfs, devfs, ramfs and tarfs. Other FSDs are fat, ext2 and cdfs.
vnode
Kernel: Unique identifier for an object in the file system. Consists of a pointer to an FSD and a vnode ID generated by that FSD.
AT Attachment
Standard for disk drives. Möbius supports ATA hard disk drives, and ATAPI CD and DVD drives.
ramdisk
File system in memory. Used by the kernel to access files loaded by the boot loader.
Release 5
|
The Möbius boot screen
Each icon represents a module loaded during boot. Here, /System/Devices
has been mounted, the keyboard, serial mouse driver has been loaded,
and the PS/2 mouse driver is being loaded now.
|
|
The console server and two shells
The console server provides access to the video card via graphical
consoles, and to the keyboard. Applications (in this case, the command
line shell) send output to the console server as UTF-8 text, and receive
keyboard input.
|
|
Tetris
Currently graphical programs use the video driver directly. Tetris will
use any 8-bit mode; it is up to the video driver to decide the resolution
if one it not specified. This screenshot shows the 320x200 8-bit VGA
mode, although if the the VESA driver is enabled, Tetris (and the console
server) will use that. This Tetris program is based on sources from Chris
Giese's Cosmos OS.
|
|
The console server, again
Another shot of the console server, this time in 1024x768 8-bit mode, with
a TrueType font (Vera Mono) used for the text. Although this is only an
256-colour mode, applications can still specify 24 bits for colours;
dithering is performed automatically. Dithering is more obvious in the
Tetris application.
The colour (or color) command lets you change the colours
used for text. TrueType support is provided by the
FreeType library.
|
|