0001 ./boot/init.c
0002 Entry into C from bootloader
0003
0004 ./boot/boot.S
0005 Multiboot-compliant bootloader: sets up GDT, page dir, and IDT.
0006
0007 ./smp/smp.c
0008 General SMP routines.
0009
0010 ./smp/boot-smp.S
0011 Patch code to boot Application Processors.
0012
0013 ./smp/apic.c
0014 Local and IO APIC manipulation routines.
0015
0016 ./smp/acpi.c
0017 ACPI configuration table support.
0018
0019 ./smp/intel.c
0020 Intel MP Specification table support.
0021
0022 ./sched/sched.c
0023 Scheduler.
0024
0025 ./drivers/ata/diskio.c
0026 Interface to ATA driver used by EXT2 FS driver.
0027
0028 ./drivers/ata/ata.c
0029 ATA and ATAPI detection, reading, and writing.
0030
0031 ./drivers/input/keymap.c
0032 Translation of key events into characters.
0033
0034 ./drivers/input/keyboard_8042.c
0035 Intel 8042 keyboard driver.
0036
0037 ./drivers/sb16/sound.c
0038 SB16 sound driver.
0039
0040 ./drivers/acpi/quest-acpica.c
0041 Glue-code for ACPICA to be able to make use of Quest kernel services.
0042
0043 ./util/cpuid.c
0044 Some functions to query the CPUID instruction.
0045
0046 ./util/printf.c
0047 A simple printf implementation and a version for COM1 output as well.
0048
0049 ./util/debug.c
0050 Debugging utilities like serial port logging and stack tracing.
0051
0052 ./util/screen.c
0053 putchar, putx, and print to the screen directly.
0054
0055 ./util/circular.c
0056 Circular buffers with locking and blocking support.
0057
0058 ./interrupt.S
0059 ASM stubs for interrupt handlers to invoke C code.
0060
0061 ./interrupt_handler.c
0062 System call and hardware trap handlers.
0063
0064 ./kernel.c
0065 Misc kernel functionality.
0066
0067 ./fs/iso9660/fsys_iso9660.c
0068 Basic ISO9660 fs support.
0069
0070 ./fs/ext2/fsys_ext2fs.c
0071 Basic ext2 fs support ripped from GRUB.
0072
0073 ./fs/fsys.c
0074 A simple VFS-style set of fs-agnostic routines.
0075
0076 ./mem/physical.c
0077 Physical memory manager.
0078
0079 ./mem/virtual.c
0080 Kernel page table virtual memory manager.
0081
0082 ./mem/pow2.c
0083 A not-quite-buddy system allocator. Allocates chunks of sizes in a range of
0084 powers of two.
0085
0086 ./sysprogs/shell.c
0087 Shell task
0088
0089 ./sysprogs/terminal_server.c
0090 Terminal server task
0091
0092 ./tests/test1.c
0093 ./tests/test2.c
0094 Simple fork parent/child tests.
0095
0096 ./tests/test3.c
0097 ./tests/test4.c
0098 Simple shared mem tests.
0099
0100 ./tests/test5.c
0101 5 forked processes printing numbers to the screen.
0102
0103 ./tests/test6.c
0104 Parent/child create race condition on a piece of shared memory.
0105 Each tries to add/sub the value of CPUID from the same location, 1000 times.
0106
0107 ./include/kernel.h
0108 ./include/boot/multiboot.h
0109 ./include/arch/i386.h
0110 ./include/drivers/ata/ata.h
0111 ./include/drivers/pci/pci.h
0112 ./include/drivers/input/keymap.h
0113 ./include/drivers/input/keyboard.h
0114 ./include/drivers/sb16/sound.h
0115 ./include/smp/semaphore.h
0116 ./include/smp/smp.h
0117 ./include/smp/apic.h
0118 ./include/smp/spinlock.h
0119 ./include/smp/intel_mps.h
0120 ./include/smp/apic-defs.h
0121 ./include/smp/atomic.h
0122 ./include/sched/sched.h
0123 ./include/sched/sched-defs.h
0124 ./include/util/cpuid.h
0125 ./include/util/elf.h
0126 ./include/util/circular-defs.h
0127 ./include/util/circular.h
0128 ./include/util/printf.h
0129 ./include/util/screen.h
0130 ./include/util/debug.h
0131 ./include/types.h
0132 ./include/fs/filesys.h
0133 ./include/kernel-defs.h
0134 ./include/mem/virtual.h
0135 ./include/mem/pow2.h
0136 ./include/mem/physical.h
0137 ./include/mem/mem.h