Stefan Lankes
85768e6f58
fix bug in APIC code
...
=> before we enable the interrupts, we map the APIC registers
2011-07-18 15:51:26 +02:00
Stefan Lankes
09b3655ea4
reserve a page for the boot code of the application processors
2011-07-18 09:13:33 +02:00
root
7724b70d55
upgrade to newest metalsvm
2011-06-27 11:39:01 +02:00
Stefan Lankes
29ab43f289
First steps to realize Inter-Core-Communication via RCCE
2011-04-23 00:13:12 -07:00
Stefan Lankes
900c67c2a0
remove obsolete flags
2011-04-22 09:31:33 +02:00
Stefan Lankes
0c411fd702
add basic support of sbrk and fix bug in saving of the fpu context
2011-04-21 07:32:20 +02:00
Stefan Lankes
23313590be
use logical operations instead of / and % to increase the performance
2011-04-21 07:31:45 +02:00
Stefan Lankes
b5908af744
Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm into doxygen
...
Conflicts:
.gitignore
arch/x86/include/asm/apic.h
arch/x86/include/asm/page.h
arch/x86/include/asm/processor.h
arch/x86/kernel/idt.c
2011-04-14 08:40:52 +02:00
Stefan Lankes
eeb49cdb90
add the SCC support of a initial ramdisk
2011-04-13 11:03:34 -07:00
Stefan Lankes
12fb2a60f2
create a dynamic region, which specifies the boot parameters
2011-04-13 07:04:50 -07:00
Stefan Lankes
ba1388c13d
Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm into rcce
2011-04-08 07:26:55 -07:00
Stefan Lankes
92c5917ef4
add support to map kernel pages above 1GB
2011-04-08 16:02:29 +02:00
Stefan Lankes
1ff9c397a9
fix bug in the debug messages
2011-04-08 16:02:08 +02:00
Stefan Lankes
f0e4a2b833
add the support of the memory type MPBT
...
=> seesection "10.1.2 Internal Cache Changes" of SCC External Architecture Specification (R1.1)
2011-04-05 23:43:44 -07:00
Stefan Lankes
9918db81ec
fix bugs in initialization of RCCE
...
at first, we have to enable paging and to disable caching for the configuration registers
2011-04-05 01:55:02 -07:00
Jacek Galowicz
1581d3e075
Added a doxyfile and documented arch/x86/include/asm/page.h
2011-04-01 20:13:26 +02:00
Stefan Lankes
3729433b37
Fix bug in wrong using of synchronisation primitives
...
=> reported by Jacek...
2011-04-01 19:33:41 +02:00
Stefan Lankes
fc407a3eda
copy also the entries of the pgt container
2011-03-07 20:25:52 +01:00
Stefan Lankes
6f092641ba
remove memory leak and redesign of the internal memory accounting
2011-03-04 22:44:53 +01:00
Stefan Lankes
08dd1852b6
create all page tables for the kernel space
2011-03-04 21:38:36 +01:00
Stefan Lankes
08b0207dc9
introduce a special PGD lock for the kernel space
2011-03-04 13:47:06 +01:00
Stefan Lankes
56ee331596
add nested spinlocks
...
- required to avoid deadlocks
2011-03-04 11:38:40 +01:00
Stefan Lankes
464f31a53b
optimize the system call fork
...
- add a function to copy a physical page
=> reduce the using of vm_alloc and vm_free
2011-03-03 09:13:00 +01:00
Stefan Lankes
a27150b923
Fix bug in system call "fork"
...
- issues: memory leak
2011-03-02 23:08:01 +01:00
Stefan Lankes
5ce3ed9338
First steps to support the system calls "fork" and "wait"
...
- Currently, the system call "fork" doesn't work and has a memory leak
- However, it is a good starting point for further developments.
2011-03-02 13:49:36 +01:00
Stefan Lankes
17193475bb
use a spinlock for each PGD
...
increases also the useability of vm_alloc and vm_free
2011-02-24 19:06:32 +01:00
Stefan Lankes
e157f93104
create also for kernel tasks a new PGD
2011-02-24 18:44:11 +01:00
Stefan Lankes
54d636d25c
after process termination, the PGD and its PGTs will be freed
2011-02-24 18:32:58 +01:00
Stefan Lankes
16efb49204
remove obsolete function arguments
2011-02-24 10:15:58 +01:00
Stefan Lankes
b4884cde2d
add a function to change the pape permissions
2011-02-24 09:36:05 +01:00
Stefan Lankes
31ad08b7ae
Remap lapic and ioapic to the kernel space + some cosmetic changes
2011-02-21 08:36:06 +01:00
Stefan Lankes
c355adb300
create a new pgd for each process
2011-02-18 21:20:15 +01:00
Stefan Lankes
5fe9d5b3e9
Increasing the readability
2011-02-16 22:35:46 +01:00
stefan
308e023a85
- use non-recursive Makefiles
...
- this patch based on Florian Zeitz's hint
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@400 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-09 19:13:40 +00:00
stefan
9a9df5ed2e
- merge current eduOS branch to MetalSVM
...
=> add the support of "real" user-space applications, which could be loaded via initrd
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@394 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-08 18:37:56 +00:00
stefan
8646b56a63
- minor changes to support APIC
...
(currently, we got page fault by entering apic_calibration)
- first steps to realize a loader
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@365 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-05 10:16:53 +00:00
stefan
7ff346df44
- remove typo
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@344 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-15 13:39:37 +00:00
stefan
2127c42070
- remove typo
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@340 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-15 12:08:37 +00:00
stefan
45219bce2e
- huge commit
...
- enable the paging support
- redesign of the APIC code
TODO:
- Currently, we are not able to start user-level applications.
- The RTL8139 driver does not longer work. Perhaps, a bug in the output function.
- The APIC codes doesn't work on all systems. Therefore, the code is currently disabled.
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@326 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-10 06:16:58 +00:00