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
c355adb300
create a new pgd for each process
2011-02-18 21:20:15 +01:00
Stefan Lankes
5f99201f9e
add support of the system call "fork" in libgloss
2011-02-18 10:00:09 +01:00
Stefan Lankes
1b85d32945
boot process dumps the initrd
2011-02-16 15:22:48 +01:00
Stefan Lankes
6bb932acf9
remove SVN specific commands
2011-02-16 14:20:16 +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
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
9d2b73c6cb
- add a workaround to use paging and the apic at the same time
...
(we don't use __attribute__((optimize(0))))
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@366 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-05 20:12:07 +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
ab442041c1
- remove bug in the network driver
...
=> now, we use correct irq number
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@334 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-13 21:58:46 +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
7ba3a994b6
- remove some wrong definitions
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@303 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 19:50:03 +00:00
stefan
34e28a36f6
- add some debug messages
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@302 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 19:48:57 +00:00
stefan
c3c7468208
- some code cleanup
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@301 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 19:47:46 +00:00
stefan
71be663e2d
- remove some compiler warnings
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@299 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 08:14:11 +00:00
stefan
12bfcd2f87
- add lwIP-based echo and ping servers
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@297 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-30 06:06:28 +00:00
stefan
d741ef36c8
- now, get_cpu_frequency returns MHz instead of Hz
...
- more suitable for future architecture
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@266 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-24 18:58:42 +00:00
stefan
a0acab9861
- use %u instead of %d to print the processor frequency
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@255 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-14 10:38:31 +00:00
stefan
3683e9c84c
- use uint32_t instead of an int to detect the processor frequency
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@254 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-13 13:04:57 +00:00
stefan
b78b2349eb
- add some error checks
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@234 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-05 06:07:39 +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
141c2c194e
- add a unique build number
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@227 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-11-04 08:27:53 +00:00
stefan
ae16dc414b
- remove some typos in the comments
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@197 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-10-25 16:59:23 +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
c4ed163f9d
- cosmetic changes
...
- use inline functions instead of macros
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@158 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-11 11:29:30 +00:00
stefan
81df510743
- add comments
...
- use readable macros instead of constants
- use the same error number like newlib
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@156 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-09-10 22:18:55 +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
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
bfe629f24c
- remove some warnings
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@107 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-18 07:14:36 +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
c3bb3b7c89
- move file back to the directory tasks
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@91 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-15 14:16:44 +00:00
stefan
734836af9f
- minor changes
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@90 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-15 13:58:52 +00:00
stefan
ffaffd305d
- remove obsolete line
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@87 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-13 09:12:29 +00:00
stefan
585d6d01cf
- first steps to realize a RCKPC driver
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@81 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-11 20:42:49 +00:00
stefan
7ae2d7a5f0
- move test cases in a seperate file
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@79 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-11 18:52:43 +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
eecf33204e
- move the greeting message at th begin of the program
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@66 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-11 10:32:49 +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
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
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
a8f684af9c
- remove type in join_kernel_tasks (typo in if-clause)
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@37 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-04 17:20:44 +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
cac9438b1a
- add first steps to integrate LWIP
...
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@23 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-08-03 12:07:26 +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