Stefan Lankes
d406066fc9
replace C by Rust code to intialize the GDT
2017-08-06 23:23:19 +02:00
Stefan Lankes
b51cf8fddf
add option to enable e1000 driver
2017-08-06 23:23:12 +02:00
Stefan Lankes
1603f9e0e2
remove obsolete global variable "kernel_stack"
2017-08-06 23:23:12 +02:00
Stefan Lankes
59167f2d44
add proof of concept to use Rust within HermitCore's kernel
2017-07-17 23:41:29 +02:00
Stefan Lankes
437f445ed8
fix typos, fix meaing of PAGE_CEIL and PAGE_FLOOR
2017-07-15 16:24:08 +02:00
Stefan Lankes
6033da1ecf
remove obsolete code
2017-06-15 23:11:24 +02:00
Stefan Lankes
b4c45c5d7d
remove obsolete code
2017-06-15 23:10:22 +02:00
Stefan Lankes
16106c0ee9
remove obsolete code
2017-06-15 16:27:13 +02:00
Stefan Lankes
1db519b19e
remove obsolete code
2017-06-15 12:53:11 +02:00
Stefan Lankes
9311a27019
add additional debug messages
2017-06-14 15:00:52 +02:00
Stefan Lankes
fea0f31018
avoid busy waiting if the cpu feature mwait is missing
2017-06-07 21:54:28 +02:00
Stefan Lankes
1fc09b4246
add first draft of a virtio network driver
2017-06-05 11:15:45 +02:00
Stefan Lankes
29c1f14bf5
print boot parameter if available
2017-05-27 21:20:33 +02:00
Stefan Lankes
2f40db1d50
forward only guest physical address to the hypervisor
2017-05-26 16:46:48 +02:00
Stefan Lankes
2aeadb390b
cosemtic changes to increase the readability
2017-05-24 22:21:34 +02:00
Stefan Lankes
8cb9c81184
add system interface for spinlocks
2017-05-21 23:43:22 +02:00
Stefan Lankes
77e9ef0ca6
add additional debug messages
2017-05-21 23:39:04 +02:00
Stefan Lankes
83f185980a
fix bug in the detection of the multi-kernel mode
2017-04-23 00:28:11 +02:00
Stefan Lankes
57ad4c5af3
reduce the number of debug messages
2017-04-21 19:48:05 +02:00
Stefan Lankes
940be14a0e
remove dependency from kernel_end
...
- this patch solves linker problems, if kernel_end located above 2GB
- in multi-kernel mode, it requires also a patch for Linux
2017-04-18 00:26:38 +02:00
Daniel Krebs
eca8be0236
remove old Makefile/autotools based build system and debian scripts
2017-04-03 18:14:42 +02:00
Stefan Lankes
c3a4a6e2df
enable a check if the HermitCore app depends on a proxy
2017-04-03 09:16:54 +02:00
Stefan Lankes
9862cea384
add timeout to wait for an IP address
2017-04-02 23:33:57 +02:00
Stefan Lankes
a3ea183edc
move more helper functions to the architecture dependent directory
2017-03-19 22:49:23 +01:00
Stefan Lankes
f8685378a8
remove wrong obsolete #if statement
2017-03-09 13:56:10 +01:00
Stefan Lankes
f6365ed840
move fpu_handler to the architecture independent directory
2017-03-09 08:09:05 +01:00
Stefan Lankes
473cdb76d6
move architecture dependent functions to the subdirectory arch
2017-03-09 07:35:59 +01:00
Stefan Lankes
e288b9ee4b
remove typos
2017-03-07 00:15:04 +01:00
Stefan Lankes
3a926240ca
move hardware dependent functions to the subdirectory arch
2017-03-07 00:05:19 +01:00
Stefan Lankes
890134dc82
simplify uart device
...
- HermitCore uses on uart to send log messages to qemu
- unidirectional communication => remove interrupt handler
- remove mmio support for uart
2017-03-05 18:48:51 +01:00
Stefan Lankes
815937216f
remove obsolete VGA support
2017-03-04 10:52:18 +01:00
Stefan Lankes
bec33e239c
move tss.h to processor.h
2017-03-04 09:03:55 +01:00
Stefan Lankes
7c5b277187
after booting, print the number of possible cores
2017-02-25 17:19:09 +01:00
Stefan Lankes
166796b2af
Merge branch 'master' into devel
2017-02-18 11:21:21 +01:00
Stefan Lankes
86b4e572e5
avoid checking the time slice for the idle task
2017-02-18 11:06:03 +01:00
Stefan Lankes
fabd0412b5
Merge branch 'master' into devel
2017-02-13 00:09:36 +01:00
Stefan Lankes
7e8549b8fa
store in fs:0 the address pointed to by fs itself
...
- defined in the x86_64 ABI because you cannot easily get the address
pointed to by fs without reading fs' MSR
2017-02-12 23:53:58 +01:00
Stefan Lankes
c94cf0ab12
print also TLS size
2017-02-12 08:31:18 +01:00
Stefan Lankes
0e881abbbf
remove obsolete debug messages
2017-01-20 10:50:04 +01:00
Stefan Lankes
5c648f22c1
add draft to integrate a hypervisor directly in the proxy
...
- this reduce the overhead because the boot time is smaller in
comparsion to qemu
- furthermore, a more direct communication via VM_EXISTS is possible
- the current version doesn't support a network interface
The hypervisor based on KVM and is called uhyve. You could test the
hypervisor with following command:
HERMIT_ISLE=uhyve HERMIT_VERBOSE=1 tools/proxy usr/tests/hello
2017-01-16 18:47:13 +01:00
Stefan Lankes
f4d860a84e
user PACKAGE_VERSION instead of GIT_VERSION
2017-01-12 20:06:14 +01:00
Stefan Lankes
cadacc24ae
reserve at boot time a region for the heap
...
=> no race between stack und heap creation
2016-12-03 00:44:32 +01:00
Stefan Lankes
63e5cdc28e
disable LWIP_NETCONN_SEM_PER_THREAD
...
currently, this feature isn't stable (at least in HermitCore)
2016-12-03 00:44:32 +01:00
Stefan Lankes
f4012a1f55
define start address of the heap in config.h
2016-12-03 00:44:32 +01:00
Stefan Lankes
dfd4272d59
reodering of the directory structure
2016-12-03 00:43:49 +01:00