Commit graph

39 commits

Author SHA1 Message Date
Stefan Lankes
0192f70338 Merge branch 'stage6' of https://github.com/RWTH-OS/eduOS into stage6
Conflicts:
	Makefile.example
	arch/x86/kernel/uart.c
2014-12-19 22:05:15 +01:00
Stefan Lankes
dc8232374f some cleanups 2014-12-19 21:50:26 +01:00
Stefan Lankes
44cc72b94e code cleanups, remove debug messages 2014-12-19 21:41:33 +01:00
daniel-k
dd961f8558 extent uart driver with stubs for additional interrupts and also look for
qemu's pci-serial-2x and pci-serial-4x devices
2014-12-19 17:05:01 +01:00
Stefan Lankes
a945d498d7 reduce the number of interrupts, some cleanups 2014-12-19 11:36:09 +01:00
Stefan Lankes
dabd33f37c add helper functions to determine if the pci device use MMIO or IO ports 2014-12-19 11:35:24 +01:00
Stefan Lankes
8cc32095af some cleanup 2014-12-14 23:40:08 +01:00
Stefan Lankes
1936c4b3eb remove typo in a comment 2014-12-13 18:47:02 +01:00
Stefan Lankes
4a9440dd62 redesign of the IO interface
- all messages are stored in a ring buffer
- new devices (e.g. UART) are able to print previous messages
2014-12-13 18:00:35 +01:00
Stefan Lankes
7a15541d82 add function to detect processor features 2014-12-13 17:56:46 +01:00
Stefan Lankes
ad291c5294 add new function to determin if a device supports MMIO 2014-12-13 17:53:42 +01:00
Stefan Lankes
3d84f776be preperation to support memory mapped io 2014-12-12 14:44:21 +01:00
Stefan Lankes
e97f08d2ea add Daniel to the author list 2014-12-12 13:59:23 +01:00
Stefan Lankes
168c8a30ab create task to handle incoming messages 2014-12-11 22:43:45 +01:00
Stefan Lankes
9ae03d14d5 cosmetic changes 2014-12-09 22:35:38 +01:00
Stefan Lankes
e3042f167a add missing copyright statement 2014-12-09 22:32:59 +01:00
Stefan Lankes
9d7bd72ed1 add missing list of pciids 2014-12-09 10:52:47 +01:00
Stefan Lankes
df0b192e21 add basic support of an UART device 2014-12-09 10:09:03 +01:00
Stefan Lankes
c0d69c96be add demo of a user-level process
dirty hack, map the function userfoo and its stack to user space
2014-12-04 22:19:18 +01:00
18378417a7 added new custom paging flag to mark page table entries which are used for self-references 2014-12-04 20:41:39 +01:00
67b8ca111a a few cleanups 2014-12-04 20:33:28 +01:00
Stefan Lankes
e9960dc78e get_current_stack set CR3 => required for a context switch 2014-12-03 23:10:32 +01:00
d190d4c46c create self-reference directly in assembler .data section 2014-08-21 22:25:45 +02:00
fbf55178c1 added first version of paging code
(only page_map() works for now)
2014-08-21 20:17:02 +02:00
838ad909c6 replaced multiboot_init() by global pointer in entry.asm 2014-06-30 12:15:52 +02:00
ee3166c21b enabled paging by using a transparent idendity paging during boot 2014-06-30 01:47:33 +02:00
2621c0b261 fixed comment capitalization, style and indentions 2014-06-30 01:46:59 +02:00
153447482a added headers for paging code 2014-06-30 00:15:20 +02:00
Stefan Lankes
c71b6c6c8a Simplify code, add additional comments 2014-01-22 12:15:15 +01:00
Stefan Lankes
eb8859d706 extending example task, fix bug in handling of the TSS 2014-01-22 12:13:30 +01:00
Stefan Lankes
b83bc1d261 add first steps to support user-level tasks 2014-01-22 12:12:39 +01:00
Stefan Lankes
aed7b1ce8d simplify code 2013-11-28 22:53:14 +01:00
Stefan Lankes
ff0cf28a27 add handler for the timer interrupt 2013-11-27 22:50:19 +01:00
Stefan Lankes
87801a1706 add preemptive multitasking and interrupt handling 2013-11-27 22:49:30 +01:00
Stefan Lankes
67926d7c65 add support of nonpreemptive multitasking and additional comments 2013-11-19 23:11:53 +01:00
Stefan Lankes
bf6673ba40 remove obsolete code 2013-11-12 09:23:21 +01:00
Stefan Lankes
d9bf1e00a7 remove obsolete code 2013-11-12 08:51:50 +01:00
Stefan Lankes
4fd2b7f90c add highly tuned assmbler functions for basic string operations 2013-11-08 22:06:07 +01:00
Stefan Lankes
07b2250270 add the "smallest" HelloWorld of the world 2013-11-08 17:22:37 +01:00