Commit graph

235 commits

Author SHA1 Message Date
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
9e082fcb68 move driver "/dev/null" to the directory "drivers/char" 2011-03-03 07:44:20 +01:00
Stefan Lankes
a27150b923 Fix bug in system call "fork"
- issues: memory leak
2011-03-02 23:08:01 +01:00
Stefan Lankes
d4d7ff3aec remove obsolete file 2011-03-02 15:42:22 +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
e5031e872e add in libgloss the support of the system calls "read" and "wait" 2011-03-02 06:31:14 +01:00
Stefan Lankes
cf078ec359 add a function to read the instruction pointer 2011-03-02 06:28:50 +01:00
Stefan Lankes
136afedbda ignore *.pcap and *.img files 2011-03-02 05:36:06 +01:00
Stefan Lankes
6772524b08 change copyright statement
=> using of a public domain license
2011-03-02 05:32:25 +01:00
Stefan Lankes
8aff78ff48 include task.h, which is needed by our mailbox 2011-03-01 07:50:42 +01:00
Stefan Lankes
00a4e0e5ab rename example (test_fork => tests) 2011-02-28 12:22:49 +01:00
Stefan Lankes
78cd455b20 seperate type declaration and implementation 2011-02-28 12:16:27 +01:00
Stefan Lankes
187df97227 delete wrong comment 2011-02-24 19:08:51 +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
6f23361bf5 include only required headers 2011-02-24 10:19:34 +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
b4884cde2d add a function to change the pape permissions 2011-02-24 09:36:05 +01:00
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