Stefan Lankes
bae36e7d91
enable C99 support
2016-08-06 22:14:42 +02:00
Stefan Lankes
1a843627ce
build per default also the loader for standalone version
2016-08-06 10:46:40 +02:00
Stefan Lankes
606580c05d
announce that a cpu is online in the apic code
...
=> move code from main.c to apic.c, because the time of announcement
depends on the boot process. (The multi- and the single-kernel
version of HermitCore use a different boot process.)
2016-08-03 09:27:23 +02:00
Stefan Lankes
cbb3bb0905
cosmetic changes
2016-08-03 07:27:23 +02:00
Stefan Lankes
b4ed5d70a7
syscall "exit" switches always to the non-polling mode
2016-08-03 07:10:21 +02:00
Stefan Lankes
00499bb97b
add IO lock to get nicer output messages
2016-08-02 20:30:52 +02:00
Stefan Lankes
72a20c766b
use stream as default test case for the standalone version
2016-08-02 18:07:35 +02:00
Stefan Lankes
3e9c1f0f55
reactivate default environment
...
HermitCore's standalone version requires on the default (dummy) environment
2016-08-02 18:04:29 +02:00
Stefan Lankes
1b5676e4cb
Merge pull request #29 from spickartz/up/devel
2016-08-02 10:31:51 +02:00
Simon Pickartz
6fcdead1b9
improve README
2016-08-02 10:22:14 +02:00
Stefan Lankes
6d8d6ee2ad
Add description to the standalone version of HermitCore
...
In the source code, we use the notation "single kernel" for the standalone version because the multi-kernel approach is default case.
2016-08-02 07:48:42 +02:00
Stefan Lankes
7002a854cb
add code description
2016-08-02 07:09:49 +02:00
Stefan Lankes
eb1fc29cdd
remove obsolete code
2016-08-02 00:28:46 +02:00
Stefan Lankes
2861c88622
add boot.h to the list of ignored files
2016-08-02 00:09:57 +02:00
Stefan Lankes
b85b714813
add SMP support for the single-kernel version of HermitCore
2016-08-02 00:08:02 +02:00
Stefan Lankes
d8c891a32c
remove typo, some code cleanups
2016-08-02 00:06:12 +02:00
Stefan Lankes
6aa60f882b
add UART support
...
if CONFIG_VGA isn't defined, HermitCore use the UART device to dump
kernel messges.
2016-08-01 00:20:54 +02:00
Stefan Lankes
c10ab74d67
add prototype of basic ethernet support
...
- add devices driver for Intel's E1000 and Realtek's 8139
- currently, work in progress and not initialized at boot time
2016-07-27 22:35:01 +02:00
Stefan Lankes
f00773ce8b
reactivate IOAPIC support for the single-kernel version of HermitCore
2016-07-27 22:33:31 +02:00
Stefan Lankes
97c2b21254
reactivate PCI support for the single-kernel version of HermitCore
2016-07-27 22:32:16 +02:00
Stefan Lankes
e8a61a299b
add the possibility to page aligned memory regions
...
=> usefull for device drivers (DMA transfers)
2016-07-27 22:30:00 +02:00
Stefan Lankes
7b1dd26d42
remove redefinition of VIDEO_MEM_ADDR
2016-07-25 19:48:11 +02:00
Stefan Lankes
48ea69d86f
enable DHCP support
2016-07-25 19:47:08 +02:00
Stefan Lankes
f8b2636b59
determine upper limit of the usable memory
2016-07-25 19:45:02 +02:00
Stefan Lankes
f75dbe82b3
add single kernel support
...
HermitCore apps are directly bootable with the new loader
2016-07-25 08:04:02 +02:00
Stefan Lankes
85d6ccd8eb
add vga module to the libOS
2016-07-25 07:59:26 +02:00
Stefan Lankes
3d799af899
add VGA support
2016-07-25 07:57:33 +02:00
Stefan Lankes
7ab3648814
map physical memory address of the graphic adapter
2016-07-25 07:55:38 +02:00
Stefan Lankes
449824349b
if libc_sd is invalid, the system call open returns an error number
2016-07-25 07:50:34 +02:00
Stefan Lankes
52ad45072f
move image boundary to 2MB
...
=> which is a requirement of HermitCore's memory management
2016-07-25 07:47:51 +02:00
Stefan Lankes
1d23b3b8dc
remove obsolete line
2016-07-25 07:46:55 +02:00
Stefan Lankes
fabfd1067e
set max page size to 0x1000, which reduces the image size
2016-07-25 07:45:34 +02:00
Stefan Lankes
6c339c64d6
trampoline code doesn't longer enable SMEP
...
because old CPUs don't support this feature
2016-07-19 23:36:01 +02:00
Stefan Lankes
534170354e
Merge branch 'devel' of github.com:RWTH-OS/HermitCore into devel
2016-07-19 23:23:29 +02:00
Stefan Lankes
724a2cd70d
some code cleanups, the current version is just proof of concept
2016-07-19 23:19:14 +02:00
Stefan Lankes
66195c7795
add basic bootloader to support a non multi-kernel mode
...
=> HermitCore will support a classical unikernel mode
2016-07-18 23:06:40 +02:00
Stefan Lankes
6228598646
Merge branch 'devel' of github.com:RWTH-OS/HermitCore into devel
2016-07-05 12:36:39 +02:00
Stefan Lankes
bcaccc2e69
add checks to be sure that HermitCore receives the whole IP message
2016-07-05 12:35:36 +02:00
Stefan Lankes
b71faae53c
align memory to 8 byte, add patch for bug #39683
...
- Bug description: https://savannah.nongnu.org/bugs/index.php?39683
- Patch: http://git.savannah.gnu.org/cgit/lwip.git/commit/?id=8c1f834a4a9c21f454ee0c034d14df93c4bb4909
2016-07-05 12:34:59 +02:00
Stefan Lankes
25b360e589
remove some obsolete memory barries
2016-07-05 12:33:59 +02:00
Stefan Lankes
e32af9c2d6
Merge pull request #27 from daniel-k/pr/minor_fixes
...
Remove some compiler warnings
2016-07-01 23:09:57 +02:00
daniel-k
cd30d0969b
kernel/tasks: add missing include <asm/processor.h> for get_tls()
2016-07-01 20:33:26 +02:00
daniel-k
3d752ed737
kernel/main: get rid of unused variable warning
2016-07-01 20:33:26 +02:00
daniel-k
53331b3daa
hermit/tasks.h: typo
2016-07-01 20:33:26 +02:00
daniel-k
b3f156b7a5
hermit/stddef.h: remove excess ';'
2016-07-01 20:33:26 +02:00
Stefan Lankes
11c32c5676
move functions to serialize load and store operations to the headers
...
HermitCore supports only 64bit processors
=> all processors support sfence & co
=> no descision at runtime required
2016-07-01 19:45:27 +02:00
Stefan Lankes
bb1b451f13
remove obsolete staff to debug the driver
2016-06-30 22:49:34 +02:00
Stefan Lankes
ffc38104c9
add memory barriers, use __builtin_memcpy to improve the performance
2016-06-30 22:38:24 +02:00
Stefan Lankes
a3ed137f07
trampoline code doesn't longer enable SMEP
...
because old CPUs don't support this feature
2016-06-28 20:52:36 +02:00
Stefan Lankes
7d471b4691
use per default rdtsc instead of rdtscp
...
because old CPUs don't support the instruction rdtscp
2016-06-28 20:46:33 +02:00