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

887 commits

Author SHA1 Message Date
Stefan Lankes
3d2655e69f revert patch "create always a dump file to analyze the network traffic" 2016-09-10 15:46:44 +02:00
Stefan Lankes
3d8f952e4f Merge branch 'devel' of github.com:RWTH-OS/HermitCore into devel 2016-09-10 10:15:50 +02:00
Stefan Lankes
587c6a76dd add checks for mmio
- use mmio only if a valid address is available
2016-09-10 10:14:45 +02:00
Stefan Lankes
ab3ef11869 add Go example to the makefile 2016-09-10 10:13:23 +02:00
Stefan Lankes
ab2d9cf6ae add experimental Go support 2016-09-10 10:11:50 +02:00
Stefan Lankes
ccc5a0eb37 create always a dump file to analyze the network traffic 2016-09-10 10:09:13 +02:00
Stefan Lankes
6a7ae04d2e add basic support to save / restore the user thread context
- currently, signal handling is ignored!
2016-09-10 09:59:18 +02:00
Stefan Lankes
66d18d0c1c Merge pull request #43 from spickartz/up/devel 2016-09-08 00:10:21 +02:00
Simon Pickartz
5304e55e8c remove obsolete explanation for NO_HZ 2016-09-07 13:58:22 +02:00
Simon Pickartz
edc7ef3bb9 one line per sentence in README 2016-09-07 11:04:28 +02:00
Simon Pickartz
06309172ab second try to fix internal links 2016-09-07 11:01:16 +02:00
Simon Pickartz
7f5936dd2b fix internal links in README 2016-09-07 11:00:19 +02:00
Simon Pickartz
c8612eccba fix typos in README 2016-09-07 10:57:19 +02:00
Stefan Lankes
5c8b3d97e3 remove typos 2016-09-06 22:28:23 +02:00
Stefan Lankes
1692eb0e60 add GNU equivalent to getpagesize 2016-09-06 22:11:49 +02:00
Stefan Lankes
c135e39637 Merge branch 'devel' of github.com:RWTH-OS/HermitCore into devel 2016-09-04 22:51:14 +02:00
Stefan Lankes
91025ed117 add link to McKernel 2016-09-04 01:03:26 +02:00
Stefan Lankes
b149bad0a9 Merge pull request #40 from daniel-k/pr/cleanup
Various cleanup and refactoring throughout the whole codebase
2016-09-03 22:58:21 +02:00
Stefan Lankes
1ba39b071b remove typos 2016-09-03 00:10:57 +02:00
daniel-k
2b02744e0a kernel/tasks: fix minor bug in check_scheduling()
If the prio_bitmap is 0, msb() will return 64 which will be greater
than the current priority in any case. While this was a bug, it only
triggered a useless rescheduling and didn't affect correctness.
2016-09-02 20:06:41 +02:00
daniel-k
a285a78b1b x86/timer: add timer_is_running() 2016-09-02 19:58:03 +02:00
daniel-k
a1f55c3793 kernel/tasks: initialize FPU state to get rid off warnings 2016-09-02 19:58:03 +02:00
daniel-k
fa9ba43009 kernel/tasks: major refactoring 2016-09-02 19:58:02 +02:00
Stefan Lankes
2f4440d119 dump kernel messages after every test 2016-09-02 19:51:14 +02:00
daniel-k
9ee0e10624 kernel/entry.asm: reorder IRQ stubs 2016-09-02 18:02:04 +02:00
daniel-k
cd3d953bce x86/irq: check_workqueues() after custom IRQ handler has run + refactoring
When HermitCore is compiled with periodic ticks, the timer handler will
increase the local tick count, so check_workqueues() would only recognize
the increased ticks on the next call, therefore call it after the IRQ
handler.
2016-09-02 18:02:04 +02:00
daniel-k
3bd4859904 kernel: use correct datatype for irq flags 2016-09-02 18:02:04 +02:00
daniel-k
f09df8d82d kernel/syscall: make lwip lock irq-safe 2016-09-02 18:02:04 +02:00
daniel-k
d31ba3c3ac mm: make malloc and vma locks irqsave 2016-09-02 18:02:04 +02:00
daniel-k
df4f685b6c hermit/spinlock: fix documentation 2016-09-02 18:02:04 +02:00
daniel-k
321d86b466 asm/irqflags: fix documentation and simplify 2016-09-02 18:02:04 +02:00
daniel-k
047dbfd56f x86/timer: increase readability in check_ticks() 2016-09-02 18:02:04 +02:00
Stefan Lankes
fb2d9f83c8 remove typo 2016-09-02 15:20:35 +02:00
Stefan Lankes
bd71d62653 switch to https to include submodules 2016-09-02 15:16:17 +02:00
Stefan Lankes
3caae4a88f Merge pull request #28 from daniel-k/pr/signals
Implementation for POSIX-like signals
2016-09-02 14:22:32 +02:00
daniel-k
ab88f57701 kernel/tasks: set correct timer when waking up tasks with DYNAMIC_TICKS 2016-09-02 12:31:46 +02:00
daniel-k
5756951267 usr/newlib: update submodule to make use of new signal handling 2016-09-02 12:31:46 +02:00
daniel-k
340fb985b5 usr/tests: provide a test for signals (already using newlib) 2016-09-02 12:17:39 +02:00
daniel-k
74a56254d6 hermit/syscall: provide syscall interface for signals 2016-09-02 12:17:39 +02:00
daniel-k
56349176da hermit/kernel: implement signal handling for communication between tasks
When a signal is sent, the operating system interrupts the target task's
normal flow of execution to deliver the signal. Execution can be
interrupted during any non-atomic instruction. If the process has
previously registered a signal handler, that routine is executed when the
task's execution would continue.
2016-09-02 12:17:39 +02:00
daniel-k
e03887a1ab hermit/dequeue: implement a double-ended queue 2016-09-02 12:17:39 +02:00
daniel-k
b7d2dc95c5 kernel/tasks: initialize task->last_core with initial core instead of 0
Otherwise it's not possible to determine on which core a task is running
if it hasn't been rescheduled at least one time.
2016-09-02 12:17:39 +02:00
daniel-k
f93e66b4df kernel/tasks: implement function to get process control block by ID 2016-09-02 12:17:39 +02:00
Stefan Lankes
78eecc9ec1 add more tests (stream benchmark) 2016-08-31 19:40:09 +02:00
Stefan Lankes
bd2595adfd use the new get_rdtsc function to increase the readability 2016-08-31 19:37:03 +02:00
Stefan Lankes
e87c0cf642 Merge pull request #39 from daniel-k/pr/apic_calibration_refactor
x86/apic: Streamline APIC calibration and refactor for readability
2016-08-31 19:43:21 +02:00
daniel-k
392954e866 x86/apic: refactor for readability and disable timer for DYNAMIC_TICKS 2016-08-31 18:56:24 +02:00
daniel-k
096384c921 x86/apic: same calibration for single and multi kernel
Sample CPU timestamp counter for APIC calibration in both cases. This
has proven to be more reliable than waiting for and counting timer
interrupts.
2016-08-31 18:56:24 +02:00
Stefan Lankes
8a14e6ffd0 reduce the memory footprint of a test benchmark 2016-08-31 15:49:13 +02:00
Stefan Lankes
0641e63407 fix bug in the initialization routine of the timer 2016-08-31 14:01:43 +02:00