1
0
Fork 0
mirror of https://github.com/hermitcore/libhermit.git synced 2025-03-09 00:00:03 +01:00
Commit graph

1607 commits

Author SHA1 Message Date
Stefan Lankes
27ee4b52a6 remove obsolte file 2015-07-11 00:07:50 +02:00
Stefan Lankes
e0f188d739 add virtual filesystem and support of an initrd
- initrd is embedded in the kernel
2015-07-10 07:30:45 +02:00
Stefan Lankes
31df452d71 add temporary file to the list of ignored files 2015-07-09 17:05:35 +02:00
Stefan Lankes
8190bb6889 add cpuid level check
only level >= 7 is able to determine AVX2
2015-07-09 10:51:55 +02:00
Stefan Lankes
fcd1404ccd add version of AVX support, detect more CPU features 2015-07-09 10:16:25 +02:00
Stefan Lankes
37f45b70d5 determin more cpu features 2015-07-08 22:54:44 +02:00
Stefan Lankes
11ae987bae define create_task as static function, some code cleanups 2015-07-08 22:16:00 +02:00
Stefan Lankes
0e88629e24 disable temporary x2APIC support because our test system doesn't use it 2015-07-08 22:14:50 +02:00
Stefan Lankes
c121404af1 add some comments 2015-07-08 20:55:26 +02:00
Stefan Lankes
46e229ba7c increasing the readability of the code 2015-07-08 20:11:36 +02:00
Stefan Lankes
71d2152df8 add workaround because static fields aren't able to be in section .kmsg
=> compiler bug in gcc 5.1?
2015-07-08 20:10:22 +02:00
Stefan Lankes
bfd302c655 clear NW bit in CR0 because it is not allowed in long mode 2015-07-08 20:08:53 +02:00
Stefan Lankes
4c2244680d remove "global bit" from the root page tables
- fix wrong usage of the "global bit"
- every process has its own pml4 => no global view to the self references
2015-07-08 16:33:08 +02:00
Stefan Lankes
51927e7e6d enable PGE and PAE, remove label Linvalid 2015-07-08 08:12:13 +02:00
Stefan Lankes
8ec49a3582 switch to BSD License 2015-07-07 23:53:16 +02:00
Stefan Lankes
2d9d2949fd enable KVM support 2015-07-07 23:50:37 +02:00
Stefan Lankes
2228795e3d extend the list of ignored files
- demo executables should be not part of the repository
2015-07-05 23:39:21 +02:00
Stefan Lankes
8af184c341 use a more usual definition of int64_t & uint64_t 2015-06-29 09:58:32 +02:00
Stefan Lankes
f4bbedd3c8 use place holder for ascii code 0
=> 0 terminates a C string
=> bad for linux, because linux copies the messages
   via strcpy to the user-space
2015-06-29 09:46:03 +02:00
Stefan Lankes
b7665a1547 use "git describe" to determine the version 2015-06-28 23:25:23 +02:00
Stefan Lankes
3e969125c5 define auxiliary array as static 2015-06-28 19:17:15 +02:00
Stefan Lankes
5b224d13a2 add debug messages to check the interrupt handling 2015-06-27 20:16:21 +02:00
Stefan Lankes
003ee08ea7 fix bug in the creation of a pseudo interrupt
by using the 64bit mode, an interrupt pushs always SS
and RSP on the stack
2015-06-27 20:14:18 +02:00
Stefan Lankes
6b0c6145d2 remove obsolete debug message 2015-06-27 20:13:49 +02:00
Stefan Lankes
1e41214cad add example to test the timer 2015-06-27 20:12:28 +02:00
Stefan Lankes
73a5ae0c11 add missing declaration of wint_t 2015-06-27 08:53:35 +02:00
Stefan Lankes
8a77d46550 Merge branch 'master' into lwip 2015-06-27 08:14:54 +02:00
Stefan Lankes
d58e6ff9f7 enable architecture depedent optimization 2015-06-26 21:02:55 +02:00
Stefan Lankes
fd817f02f0 add newlib as C library for HermitCore apps 2015-06-26 20:49:43 +02:00
Stefan Lankes
57c56ad788 add implementation for mailboxes and semaphores 2015-06-14 22:35:09 +02:00
Stefan Lankes
12647c9a25 Merge branch 'master' into lwip 2015-06-14 22:34:15 +02:00
Stefan Lankes
b1225d3800 cosmetic changes 2015-06-14 22:33:32 +02:00
Stefan Lankes
2eddb0bb89 integrate lwIP into HermitCore
- add timer support, which is required for lwIP
2015-06-11 09:20:34 +02:00
Stefan Lankes
bdccc1be3c add TODO list 2015-05-31 08:00:50 +02:00
Stefan Lankes
1a256ada95 add helper function to run a task on a specific core 2015-05-31 07:58:05 +02:00
Stefan Lankes
a916196c3d add IPIs to shoot down the TLB on all cores 2015-05-31 07:44:24 +02:00
Stefan Lankes
047951bafd enable SMP support 2015-05-31 00:30:13 +02:00
Stefan Lankes
f781f4923b prepare kernel to support SMP
- only startup code is missing
2015-05-27 00:04:01 +02:00
Stefan Lankes
a48835c28e add *.elf32 to the list of ignored files 2015-05-25 09:21:46 +02:00
Stefan Lankes
f3d8515b0f add APIC support 2015-05-25 09:19:57 +02:00
Stefan Lankes
eb3919baf6 disable high resolution timer
=> got timing problems by enabling HermitCore
2015-05-24 11:24:34 +02:00
Stefan Lankes
48d0383d40 unmap temporary 1:1 mapping of the kernel 2015-05-24 11:23:10 +02:00
Stefan Lankes
f2f9a3cbf0 revise the init routine of the memory management
=> fix bug in the calculation of free / used page frames
2015-05-24 09:57:34 +02:00
Stefan Lankes
1b11ecb5b1 forward in ebp the physical address of HermitCore 2015-05-24 09:56:07 +02:00
Stefan Lankes
df57d3f04f start to dump kernel position as position 0 (and not 1) 2015-05-24 09:54:43 +02:00
Stefan Lankes
ef16996588 forward processor frequency from Linux to HermitCore
=> in HermitCore is frequency detection not required
2015-05-24 09:51:30 +02:00
Stefan Lankes
18630efa6c align kernel to 2MB, include section .text.startup 2015-05-24 09:49:17 +02:00
Stefan Lankes
e03f4b61ae add position independent startup code
=> after the jump into the 64bit mode, we use the position, which was
   defined at link time
2015-05-24 09:46:44 +02:00
Stefan Lankes
c75c9e282f add rule to create a multiboot image for qemu 2015-05-24 09:45:59 +02:00
Stefan Lankes
0708416569 move configuration files to the root directory 2015-05-23 15:52:43 +02:00