sortix-mirror/sortix
Jonas 'Sortie' Termansen 2046482e77 Added support for MSRs, PAT and MTRRs.
This provides control over the caching of memory, which makes write-combined
IO possible. Graphics drivers can use this to transfer data at a much higher
rate to the video memory.

The implementation is a bit hacky but it'll do for now. It provides enough
support for the experimental VBE driver to work on the real computers I
tested it on, even if the BIOS uses screwed up default MTRRs.

The virtual memory layer now automatically uses the PAT feature if available
but in a backwards compatible manner and otherwise just tries to approximate
PAT features if they are asked for.
2012-07-01 00:55:36 +02:00
..
fs Fixed buffer overflow in devfs.cpp. 2012-04-14 22:03:55 +02:00
include/sortix Added a O_ACCMODE flag for GNU compatibility. 2012-05-28 22:52:11 +02:00
kb Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
x64 Ported x64 interrupt assembly to the GNU assembler. 2012-04-13 17:34:17 +02:00
x86 Ported x64 interrupt assembly to the GNU assembler. 2012-04-13 17:34:17 +02:00
x86-family Added support for MSRs, PAT and MTRRs. 2012-07-01 00:55:36 +02:00
.gitignore Restored support for JSSortix using very ugly hacks. :( 2011-09-08 11:10:41 +02:00
Makefile Added support for MSRs, PAT and MTRRs. 2012-07-01 00:55:36 +02:00
ata.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
ata.h Implemented a simple ATA PIO Mode driver that can read and write. 2012-01-08 14:20:39 +01:00
calltrace.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
calltrace.h make CALLTRACE=1 to enable printing primitive calltraces upon panic. 2012-03-02 14:08:25 +01:00
com.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
com.h Added a new COM Port driver. 2012-03-17 15:48:42 +01:00
cpu.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
descriptors.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
descriptors.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
device.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
device.h Refactored the system to use the new Terminal interface. 2012-01-22 16:48:57 +01:00
directory.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
directory.h Made Device::IsType 'const', because it is. 2012-01-18 01:11:17 +01:00
elf.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
elf.h Program loader now sets the correct program segment type. 2011-12-16 15:33:12 +01:00
end.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
event.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
event.h Added protection against running terminated threads. 2012-02-10 13:27:11 +01:00
filesystem.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
filesystem.h Unified constants from sortix/filesystem.h and <fcntl.h> in <sortix/fcntl.h>. 2012-02-23 13:15:40 +01:00
initrd.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
initrd.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
interrupt.cpp The PIC can now be deprogrammed and reprogrammed. 2012-05-26 14:00:24 +02:00
interrupt.h Added Interrupt::SetEnabled(bool). 2012-04-13 17:42:21 +02:00
io.cpp seek(2) now correctly rejects a bad whence value. 2012-04-10 13:20:33 +02:00
io.h Added pipe(2), write(2), and read(2). 2011-11-16 21:21:38 +01:00
kernel.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
kernelinfo.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
kernelinfo.h Added kernelinfo(2), which reads a kernel information string. 2012-03-07 18:04:59 +01:00
keyboard.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
keyboard.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
kthread.cpp Forward compatbility with the kthread branch. 2012-05-04 13:13:44 +02:00
linebuffer.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
linebuffer.h Added a class for handling terminal linebuffering. 2012-02-10 13:28:28 +01:00
log.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
logterminal.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
logterminal.h Implemented a terminal that reads from keyboard and writes to kernel log. 2012-02-10 13:28:28 +01:00
mount.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
mount.h Mount-points are now handled properly within the kernel. 2011-11-21 19:39:13 +01:00
multiboot.h Initial version of Sortix. 2011-08-05 14:25:00 +02:00
panic.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
pci.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
pci.h Initial version of Sortix. 2011-08-05 14:25:00 +02:00
pipe.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
pipe.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
process.cpp Improved the implementation of the exec* functions. 2012-04-30 21:10:02 +02:00
process.h execve(2) now pushes envp to the new stack and sets up registers. 2012-04-04 01:49:14 +02:00
refcount.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
refcount.h Added a way for discover refcount of Refcounted classes. 2012-03-21 16:20:41 +01:00
scheduler.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
scheduler.h Added the _exit() system call. 2011-11-05 20:19:36 +01:00
serialterminal.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
serialterminal.h VGA now sort-of works under serial-connections. 2011-12-05 21:44:14 +01:00
signal.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
signal.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
sound.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
sound.h Ported kernel to new syscall API and started cleaning up the old one. 2011-10-27 00:20:28 +02:00
stream.h Made Device::IsType 'const', because it is. 2012-01-18 01:11:17 +01:00
syscall.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
syscall.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
terminal.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
terminal.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
thread.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
thread.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
time.cpp The PIC can now be deprogrammed and reprogrammed. 2012-05-26 14:00:24 +02:00
time.h Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
uart.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
uart.h Removed deprecated VGA API and moved it to /dev/vga. 2011-11-25 13:38:31 +01:00
utf8.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
utf8.h Added a simple utf8 encoder in the kernel. 2012-01-22 00:56:58 +01:00
vga.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
vga.h Removed deprecated VGA API and moved it to /dev/vga. 2011-11-25 13:38:31 +01:00
vgaterminal.cpp Refactored all the sortix headers into a include directory. 2012-03-22 00:52:29 +01:00
vgaterminal.h Initial version of Sortix. 2011-08-05 14:25:00 +02:00