Namespace Description

Drivers.Compiler Contains all libraries and classes related to the compiler which is capable of compiling both the Kernel and drivers. The Drivers Compiler replaces the Kernel Compiler and significantly improves speed and compiler architecture.

Drivers.Compiler.App Contains the command-line application and related classes which provide a command line interface to the Drivers Compiler. It is the primary point of invocation for the Drivers Compiler.

Drivers.Compiler.Architectures.MIPS32 Contains namespaces and classes for targetting the MIPS (32 bit) processor architecture.

Drivers.Compiler.Architectures.MIPS32.ASMOps Contains classes representing all the MIPS operations used by the compiler when targetting the MIPS (32-bit) architecture.

Drivers.Compiler.Architectures.x86 Contains namespaces and classes for targetting the x86 (32 bit) processor architecture.

Drivers.Compiler.Architectures.x86.ASMOps Contains classes representing all the x86 operations used by the compiler when targetting the x86 (32-bit) architecture.

Drivers.Compiler.ASM Contains the framework for converting IL ops into ASM code and compiling that ASM code into machine code.

Drivers.Compiler.ASM.ASMOps Contains base class ASM ops for identifying types of ASM ops within target architecture libraries.

Drivers.Compiler.Attributes Contains attribute classes used by the compiler for identification of key classes and methods within the operating system code, such as the entrypoint and garbage collector methods.

Drivers.Compiler.IL Contains the framework for reading IL bytes, representation of IL ops and the construction and manipulation of IL methods, type tables and related aspects.

Drivers.Compiler.IL.ILOps Contains classes representing all the IL ops supported by the compiler. The classes give the root operation and list support for variants. The IL op classes are base classes containing abstract Preprocess and Convert methods which, when overridden, handle conversion of IL ops into ASM ops.

Drivers.Compiler.MSBuildTask Contains the build task implementation and related classes which provide an interface for MSBuild to the Drivers Compiler. It is a primary point of invocation for the Drivers Compiler when using automated compilation through MSBuild.

Drivers.Compiler.Types Contains classes and framework for reading an IL library and scanning the contained types for classes, methods, structures, enumerations, properties, etc. etc.

Drivers.Debugger Contains the portable, supporting classes for the debugger.

Drivers.Debugger.App Contains the GUI application and related classes which provide a Windows Forms-based graphical interface to the Debugger in the kernel. It is the primary point of invocation for the Debugger.

Drivers.Framework Provides a basic framework for all C# drivers to link against.

Drivers.Framework.Utilities Utility classes for the drivers framework.

FlingOops The cross-platform compiler verification kernel.

FlingOops.Utilities Utility classes used by the testing kernel.

FlingOops.x86 x86-specific implementations for supporting the testing framework.

ISO9660Generator The ISO9660 Generator application is a wrapper app for Mosa's ISO9660 Generator library.

Kernel Contains the main classes for the Fling OS kernel.

Kernel.Consoles Contains specific implementations of the Console class.

Kernel.FOS_System The kernel's System namespace that largely replaces .Net's System namespace.

Kernel.FOS_System.Collections Classes for managing collections of objects.

Kernel.FOS_System.Exceptions Contains the standard exceptions for the kernel.

Kernel.FOS_System.IO Classes for managing input/output tasks such as file handling.

Kernel.FOS_System.IO.Disk Classes for handling disks (e.g. hard-disks).

Kernel.FOS_System.IO.FAT Classes for handling a FAT file system.

Kernel.FOS_System.IO.ISO9660 Classes for handling an ISO9660 file system.

Kernel.FOS_System.IO.Streams Classes for handling streams.

Kernel.FOS_System.IO.Streams.FAT Classes for handling FAT streams such as FAT file streams.

Kernel.FOS_System.IO.Streams.ISO9660 Classes for handling ISO9660 streams such as ISO9660 file streams.

Kernel.FOS_System.Processes.Synchronisation Contains implementations of widely needed synchronisation primitives such as spin-locks.

Kernel.FOS_System.Stubs Contains stubs for the FOS_System namespace.

Kernel.Hardware The kernel's Hardware namespace contains classes that handle specific hardware.

Kernel.Hardware.ATA Contains classes for handling ATA devices.

Kernel.Hardware.CPUs Contains specific implementations of the CPU class.

Kernel.Hardware.Devices Contains classes for generic types of hardware device e.g. DiskDevice.

Kernel.Hardware.Exceptions Contains exceptions used by the hardware drivers.

Kernel.Hardware.Interrupts Contains hardware-specific code for managing interrupts.

Kernel.Hardware.IO Contains classes for managing I/O devices.

Kernel.Hardware.IO.Serial Contains classes for handling Serial ports.

Kernel.Hardware.Keyboards Contains specific implementations of the Keyboard class.

Kernel.Hardware.PCI Contains classes for managing PCI devices.

Kernel.Hardware.Processes Contains classes for managing processes and threads including scheduling.

Kernel.Hardware.Processes.Synchronisation Contains implementations of synchronisation primitives (that are not needed by FOS_System level classes) such as mutexes.

Kernel.Hardware.Tasks Contains specific implementations of Tasks which are related directly to the hardware or hardware classes; They are built-in sub-processes of the main kernel.

Kernel.Hardware.Testing Contains classes for testing aspects of the hardware drivers.

Kernel.Hardware.Timers Contains specific implementations of the Timer class.

Kernel.Hardware.USB Contains classes for managing USB devices.

Kernel.Hardware.USB.Devices Contains implementations of drivers for USB devices.

Kernel.Hardware.USB.HCIs Contains classes specifically for managing USB Host Controller Interfaces.

Kernel.Hardware.VirtMem Contains specific implementations of virtual memory management for different architectures.

Kernel.Pipes Contains classes for managing Piped IPC.

Kernel.Pipes.Exceptions Contains classes for exceptions thrown in Piped IPC.

Kernel.Pipes.Standard Contains classes for implementig Standard pipes for Piped IPC.

Kernel.Processes Contains classes related to loading and management of processes at a high-level.

Kernel.Processes.ELF Contains classes for loading, initialising and starting ELF executables (either as drivers or user-mode apps).

Kernel.Shells Contains specific implementations of the Shell class.

Kernel.Tasks Contains specific implementations of Tasks which are built-in sub-processes of the main kernel.

Kernel.Utilities Contains Kernel utility classes and functions that can be used throughout the kernel.

KernelABI Contains classes for driver or application side access to the Kernel's Application Binary Interface.