Commit graph

277 commits

Author SHA1 Message Date
stefan
90588f58ae - add assembler functions for memcpy and memset
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@55 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-10 09:10:48 +00:00
stefan
ea6658a2ab - add the function spinlock_has_lock to avoid nested blocking
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@52 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-09 17:31:11 +00:00
stefan
311b32aef8 - add macro for a static initialization of a semaphore
- create a special process which reads the kernel messages from a buffer and dump them on the screen



git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@51 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-09 15:43:45 +00:00
stefan
52cf282835 - minor update
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@49 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-09 13:25:01 +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
6a45b433ea - realize a mailbox with a variable buffer size
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@40 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-04 18:00:33 +00:00
stefan
507e2afe3b - remove obsolete file
=> include directly <asm/irq.h>


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@39 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-04 17:22:58 +00:00
stefan
39e8b7e461 - add some additional error checks
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@38 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-04 17:21:25 +00:00
stefan
9839840e89 - simplify the code by defining the new task status TASK_IDLE
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@36 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-04 16:28:59 +00:00
stefan
7709a0f466 - cosmetic changes
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@32 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-04 11:19:56 +00:00
stefan
3fb741a0f8 - update of our example configuration file
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@31 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-04 11:18:04 +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
b09114c06c - add a full-featured standalone printf implementation, which based FreeBSD's printf implementation
=> BSD lincense



git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@28 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-04 11:13:25 +00:00
stefan
9825532c82 - remove obsolete files
- the function join_kernel_task delivers the return value of the task, which is watinting for
-spinlocks supports irq save functions 


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@21 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-03 10:20:32 +00:00
stefan
c147a6a095 - add a simple implementation of a mailbox
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@20 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-03 07:13:12 +00:00
stefan
4b3c070275 - add some additional error checks
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@19 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-03 07:12:27 +00:00
stefan
44f4de6e80 - add an implementation of a semaphore and some test cases
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@18 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-02 19:05:33 +00:00
stefan
b11c38d4af - add the support of "join_kernel_task"
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@16 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-02 13:24:05 +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
3b38ec302e - add "USE_KEYBOARD" in the config example
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@10 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-02 09:01:56 +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
763b19a3c5 - add inline functions for atomic add and sub operations
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@5 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-02 07:38:43 +00:00
stefan
421cf8c68c - add missing file
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@4 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-07-31 16:11:55 +00:00
stefan
62e7ed945d - add missing file
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@3 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-07-31 16:10:02 +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