Commit graph

215 commits

Author SHA1 Message Date
Stefan Lankes
ae52943045 seperate the declaration of the data type spinlock and the implementation of a spinlock 2011-02-24 09:33:02 +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 Lankes
a178734377 Add constants, which defines the permissions on sections in the program header. 2011-02-22 21:04:15 +01:00
Stefan Lankes
2e6e1c78ea using of a clear seperation between code and data 2011-02-22 14:03:22 +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
09a2ea194a add some additional output messages 2011-02-21 08:34:38 +01:00
Stefan Lankes
c355adb300 create a new pgd for each process 2011-02-18 21:20:15 +01:00
Stefan Lankes
da3a81b471 create initrd only on demand 2011-02-18 21:15:16 +01:00
Stefan Lankes
444da0f65b use the corrcet year in the copyright statement 2011-02-18 10:04:13 +01:00
Stefan Lankes
f3bbe9fa91 guarantee that for the symbol file the execution flag is not set 2011-02-18 10:01:11 +01:00
Stefan Lankes
5f99201f9e add support of the system call "fork" in libgloss 2011-02-18 10:00:09 +01:00
Stefan Lankes
520924b5d9 Merge branch 'master' of git.lfbs.rwth-aachen.de:metalsvm into fork 2011-02-17 17:01:55 +01:00
Stefan Lankes
b268a92319 fix issues by building MetalSVM on a x86_64 system 2011-02-17 07:37:53 -08:00
Stefan Lankes
c611b609c1 create a seperate symbol-file to decrease the size of the executables files 2011-02-17 09:25:40 +01:00
Stefan Lankes
833513397f add a label qemu to start qemu with "our" default parameters 2011-02-17 09:24:48 +01:00
Stefan Lankes
769502c840 use -O2 to optimize newlib 2011-02-16 22:38:14 +01:00
Stefan Lankes
5fe9d5b3e9 Increasing the readability 2011-02-16 22:35:46 +01:00
Stefan Lankes
156bf8fa1b specify that our assembler code don't need an executable stack 2011-02-16 21:19:44 +01:00
Stefan Lankes
98b8c51e92 move linker script to newlib/$(ARCH)/$(TARGET)/lib 2011-02-16 17:28:50 +01:00
Stefan Lankes
109c9bf013 create initrd during the build process 2011-02-16 15:27:21 +01:00
Stefan Lankes
1b85d32945 boot process dumps the initrd 2011-02-16 15:22:48 +01:00
Stefan Lankes
77f73a1499 add example program to fork a process 2011-02-16 14:46:39 +01:00
Stefan Lankes
6bb932acf9 remove SVN specific commands 2011-02-16 14:20:16 +01:00
Stefan Lankes
09e637f719 forward compiler and linker flags to the subdirectory examples 2011-02-16 14:18:59 +01:00
Stefan Lankes
66b31bfa45 add the file .gitignore to specify untracked files 2011-02-16 14:16:54 +01:00
stefan
8e6cc7c867 - remove typo
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@411 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-16 10:23:31 +00:00
stefan
be0c7fa78b - remove obsolete directory
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@410 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-16 09:52:45 +00:00
stefan
f643d93897 - add the source code from newlib
- move libgloss to the newlib/src/libgloss/metalsvm
- remove binary code



git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@409 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-16 09:38:14 +00: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
180f370298 - add the directories sbin and var
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@403 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-10 06:47:22 +00:00
stefan
2f595f03c6 - remove compiler warnings
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@402 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-09 20:23:46 +00:00
stefan
4992537990 - supplement to the last patch
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@401 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-09 19:15:10 +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
23ed873c24 - define jump_to_user_code as line function
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@395 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-02-08 19:47:49 +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
98769944c8 - remove bug in initrd_read
=> fix the using of the argument "offset" 


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@377 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-19 17:12:20 +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
40d7774f77 - remove typos
- add missing Copyright statement


git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@375 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-13 08:07:55 +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
810b13f37e - use the function lapic_read instead of direct memory access to the apic entries
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@370 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-07 05:37:42 +00:00
stefan
15487b4817 - remove wrong multiplicator
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@369 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-07 05:34:48 +00:00
stefan
b921da960a - use the record scc_info to determine the cpu frequency
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@368 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-06 10:49:04 +00:00
stefan
91bdd4a38b - remove typo
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@367 315a16e6-25f9-4109-90ae-ca3045a26c18
2011-01-06 10:39:29 +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
81d0b19726 - add application processors' boot code
git-svn-id: http://svn.lfbs.rwth-aachen.de/svn/scc/trunk/MetalSVM@347 315a16e6-25f9-4109-90ae-ca3045a26c18
2010-12-15 20:55:56 +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