Stefan Lankes
fba32ec692
using of the correct data types
...
=> avoids some conflicts on other architectures
2011-07-30 17:34:30 +02:00
Stefan Lankes
09b3655ea4
reserve a page for the boot code of the application processors
2011-07-18 09:13:33 +02:00
Stefan Lankes
af2345d15c
remove typos and cosmetic changes
2011-06-28 13:45:12 -07:00
Stefan Lankes
01a7530d63
use the FPGA registers to determine the number slots, which are used as private memory
2011-06-28 10:58:32 -07:00
Stefan Lankes
cf6fdf4067
reducing the size of the kernel image by using unintialized global arrays
2011-06-22 08:38:49 +02:00
Stefan Lankes
7970899fd1
use HALT instead of NOP8
2011-05-17 08:12:56 -07: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
df250721b5
use logical operation instead of / and % to increase the performance
2011-04-19 07:23:00 +02:00
Stefan Lankes
eeb49cdb90
add the SCC support of a initial ramdisk
2011-04-13 11:03:34 -07:00
Stefan Lankes
f9ec7ccadc
redesign of the SCC's init routines
2011-03-25 20:28:43 +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
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
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
c5b650fc32
add the support of the VMA list into the kernel
...
- after process termination, this list is used to free the allocated memory regions
2011-02-24 09:37:31 +01:00
Stefan Lankes
3aaa2406de
add a VMA list, which holds each virtual memory region of a user-level process
2011-02-24 09:29:38 +01:00
stefan
bb34748589
- remove typo
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@405 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-10 13:01:29 +00:00
stefan
67d772b7fb
- add additional error checks
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@404 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-10 12:58:28 +00: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
9130e9f03c
- increasing the readability
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@396 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-09 07:07:07 +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
2bfc5a49dc
- move 32bit elf header to arch/x86
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@376 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-19 07:04:50 +00:00
stefan
d931830aa1
- fix bug in the routine which determines the free page frames on the SCC
...
(wrong break condition)
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@371 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-07 05:45:01 +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
stefan
c8c3035a4d
- complete redesign of the APIC code
...
- MetalSVM detects the APIC and initializes the APIC timer
- If an a APIC is available, the PIC timer will be disabled
- SMP is currently not supported
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@233 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-04 20:15:39 +00:00
stefan
8b725cd6d8
- add some NOPs in an endless loop
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@215 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-28 13:15:04 +00:00
stefan
b0e600da99
- prepare MetalSVM for multicore environments
...
- create the variable current_task on each core
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@159 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-12 14:45:03 +00:00
stefan
c882b28f03
- remove unused variable
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@155 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-09 05:58:57 +00:00
stefan
794dde279a
- remove obsolete liness
...
- remove typos
- add comments
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@148 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 07:12:54 +00:00
stefan
e7865175bd
- add the SCC support in our memory management unit
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@147 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-08 07:10:02 +00:00
stefan
3c0a4afd43
- remove some obsolete debug messages
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@126 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-24 19:10:12 +00:00
stefan
2d1ff7482b
- add a more precise calculation of the kernel position
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@122 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-22 11:00:56 +00:00
stefan
7398111913
- add the definition "__KERNEL__" to avoid redifinition of ssize_t and off_t
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@120 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-22 10:08:38 +00:00
stefan
da2b895d68
- redesign of the initial ram disk
...
- now, we could map file in subdirectories
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@119 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-22 09:56:02 +00:00
stefan
5cfbfb5a32
- add a simple virtual filesystem and as simple initial ramdisk
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@102 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-17 21:20:03 +00:00
stefan
a6a9617775
- add the libc "newlib" and their support into MetalSVM
...
- programs could be load as module by the bootloader Grub
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@95 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-17 09:59:29 +00:00
stefan
61907132a8
- rename some functions
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@69 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-11 13:12:55 +00:00
stefan
67ba4fba6a
- remove using of uninitialized local variables
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@60 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-10 20:15:23 +00:00
stefan
2a6664f01a
- first steps to intialize the a Rock Creek system
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@59 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-10 15:20:27 +00:00
stefan
5c5b6da768
- fix bug in memory counting
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@54 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-09 17:55:05 +00:00
stefan
9754bffcc0
- redesign of the atomic operations
...
- now, we use a ticket lock
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@48 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-09 13:22:03 +00:00
stefan
71188c92f9
- complete restart of the project
...
- support of TSS-based task switching
- add a mailbox template
- suport of user level task
- support of system calls
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@47 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-09 11:47:51 +00:00
stefan
7294c47c98
- add code to detect pci interfaces
...
- code restructuring
- remove some typos in debug messages
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@42 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-05 11:53:02 +00:00
stefan
6fdb0a2068
- minor changes in the prototyp of mmu_init
...
- return value 0 => successfull intitialization of the mmu
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@29 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-04 11:16:20 +00:00
stefan
49177e8c9e
- rename file
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@15 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-02 12:38:13 +00:00
stefan
e184955a2b
- add Multiboot support ( http://www.gnu.org/software/grub/manual/multiboot/ )
...
- Multiboot is needed to initialize our memory management
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@14 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-02 12:32:58 +00:00
stefan
0aea73bdc7
- add a simple memory mangement unit
...
- use a bitmask to mark used pages (see lecture notes "BS")
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@7 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-02 07:43:56 +00:00
stefan
9778b7b790
- first steps to realize a SVM subsystem in a VM
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@2 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-07-31 15:53:30 +00:00