|
0e6f7b1e32
|
added more exception names
|
2014-01-30 14:38:08 +01:00 |
|
|
a755ac5d5e
|
implemented Performance Monitoring Counters and added a simple test benchmark
|
2014-01-30 14:36:22 +01:00 |
|
|
a3d621142a
|
added paging and memory related CPUID feature flags
|
2014-01-28 11:09:00 +01:00 |
|
|
f0f3a6d4f6
|
added seperate x86 UART routines for HW debugging (115200 baud, 8N1)
|
2014-01-28 11:07:09 +01:00 |
|
|
5a20e0953f
|
we do not need syncronization for virt_to_phys (atomic memory access)
|
2014-01-09 16:55:05 +01:00 |
|
|
af9bda06f8
|
renamed mmu.h to memory.h as its not related to the MMU and contains
prototypes for memory.c
|
2014-01-09 16:20:18 +01:00 |
|
|
d5f60ef542
|
fixed two smaller bugs and some compiler warnings
|
2014-01-09 16:12:13 +01:00 |
|
|
11977e40bc
|
implemented userspace task loading and userpsace heap management with the new vma_list
|
2014-01-09 14:06:09 +01:00 |
|
|
a00177ec09
|
adapted c runtime and syscalls to x86-64 ABI calling convention
|
2014-01-09 14:04:02 +01:00 |
|
|
d7644300a8
|
code cleanup of task creation and some additions to the previous commit
|
2014-01-09 13:59:01 +01:00 |
|
|
ab67350783
|
thats a huge commit: reimplemented all remaining page map functions according to the new page_iterate()
|
2014-01-09 13:44:20 +01:00 |
|
|
269bffc208
|
unified comment fontcase
|
2014-01-09 13:41:22 +01:00 |
|
|
88a2e573c6
|
replaced old 32bit only page_copy by new generic one
|
2014-01-09 13:33:21 +01:00 |
|
|
494ee1299a
|
unified and extended pagefault exception handler
some cleanup
|
2014-01-09 13:32:00 +01:00 |
|
|
d5ac6e6092
|
added macros for x86 control registers & some MSRs
|
2014-01-09 13:13:59 +01:00 |
|
|
066e29fde9
|
added NX bit support
renamed some CPP macros
|
2014-01-09 12:49:04 +01:00 |
|
|
c21ea42058
|
added page_dump() and page_stats() for testing and demonstration of page_iterate()
|
2013-12-03 16:40:14 +01:00 |
|
|
8fe165c162
|
added page_iterate(): a recursive page tree walker
|
2013-12-03 16:34:34 +01:00 |
|
|
4514080014
|
enable global pages for the kernelspace
|
2013-12-03 15:54:58 +01:00 |
|
|
fff2708c5a
|
move page map setup to arch_paging_init()
|
2013-12-03 15:52:16 +01:00 |
|
|
443ffdf012
|
replaced PAGE_ALIGN macro by PAGE_CEIL, PAGE_FLOOR pair
|
2013-12-03 15:29:05 +01:00 |
|
|
2923b1a7ed
|
cleanup of macros and comments, idention etc...
|
2013-12-03 15:26:21 +01:00 |
|
|
edf178f39a
|
Merge branch 'vogel' into x64_paging
|
2013-11-26 17:25:53 +01:00 |
|
|
9018781eee
|
replaced old kfree() calls with new signature
|
2013-11-20 14:11:19 +01:00 |
|
|
a972efe288
|
Merge branch 'vma_kernel' into vogel
Conflicts:
kernel/tasks.c
|
2013-11-20 14:00:04 +01:00 |
|
|
9db28ec380
|
using PAGE_ALIGN macro to calc pages
|
2013-11-20 13:43:18 +01:00 |
|
|
de33962e9d
|
removed old vm_alloc()/vm_free() which have been replaced by vma_alloc()/vma_free()
|
2013-11-20 13:22:09 +01:00 |
|
|
af5fa15d8d
|
fixed possible wrap-around in tlb_flush functions
|
2013-11-20 12:04:55 +01:00 |
|
|
aa1730919e
|
standardized comment format and code cleanup
|
2013-11-20 12:03:24 +01:00 |
|
|
421e7ec66e
|
added missing multiboot #defines
|
2013-11-20 11:20:52 +01:00 |
|
|
ec171dfcce
|
implemented map_region() (more testing needed; will propably replaced by a iterative solution)
|
2013-11-14 13:12:35 +01:00 |
|
|
892154c9f1
|
implemented drop_page_map() (more testing needed)
|
2013-11-14 13:09:56 +01:00 |
|
|
bbb8c5c186
|
implemented copy_page_frame() (more testing needed)
|
2013-11-14 13:09:31 +01:00 |
|
|
92b2badf71
|
implemented copy_page_map() (more testing needed)
|
2013-11-14 13:08:56 +01:00 |
|
|
cdcd9e7d20
|
implemented create_page_map()
|
2013-11-14 12:25:52 +01:00 |
|
|
14938ef7e1
|
added some helper functions to for the recursive mapping structures
|
2013-11-14 12:25:07 +01:00 |
|
|
4b485f5733
|
implemented virt_to_phys()
|
2013-11-14 12:23:42 +01:00 |
|
|
9441d21d89
|
more cleanup of old 32bit code relicts, typos and indention
|
2013-11-14 12:22:52 +01:00 |
|
|
90d884ec8d
|
changed naming of 64bit boot paging tables according to 32bit boot tables
calculate required boot page tables as a function of KERNEL_SPACE
|
2013-10-25 12:02:04 +02:00 |
|
|
fca96e9851
|
unified paging preprocessor #defines and naming scheme
|
2013-10-24 12:36:05 +02:00 |
|
|
d59676dbf5
|
more work to make our assembly initialization more beautiful
|
2013-10-17 21:35:13 +02:00 |
|
|
3e73d6384e
|
fixed regression
|
2013-10-17 13:09:20 +02:00 |
|
|
3be25b99d2
|
reorganized 64bit paging initialization
|
2013-10-17 11:36:02 +02:00 |
|
|
403c529e8b
|
fixed copy&paste bug and moved cpu initialization in cpu_init()
|
2013-10-16 17:50:37 +02:00 |
|
Steffen Vogel
|
9b47b3ef45
|
refactored paging code to be more universial and suitable for 64bit paging
|
2013-10-16 17:50:37 +02:00 |
|
|
f361783f4b
|
Merge branch 'cleanup' into vogel
|
2013-10-16 17:34:18 +02:00 |
|
|
dac9b20c18
|
some comments cleaned up
|
2013-10-16 13:42:58 +02:00 |
|
|
e757ac5c08
|
Merge branch 'qemu_uart' into vogel
|
2013-10-10 11:42:27 +02:00 |
|
|
5424397b47
|
debug kernel messages over virtual uart port in qemu
use 'telnet localhost 12346' to listen
|
2013-10-10 11:39:41 +02:00 |
|
Steffen Vogel
|
3c8de24349
|
fixed some typos, added comments and some code cleanup
|
2013-10-10 11:09:36 +02:00 |
|