Commit Graph

65 Commits (084db19107aafe084cf6ff0d8d3e950a82303b9a)

Author SHA1 Message Date
Oleg Hahm df9c09d946 doc: fixed typos and other misspellings 8 years ago
BytesGalore a4d2ee307c cpu: added `extern "C"` to headers 8 years ago
Oleg Hahm 39abba1bc2 licenses: fix miss-spelled & missing boiler plates 9 years ago
René Kijewski 677d690e2b core: introduce thread_yield_higher(), yield less
Fixes #1708.

Currently involuntary preemption causes the current thread not only to
yield for a higher prioritized thread, but all other threads of its own
priority class, too.

This PR adds the function `thread_yield_higher()`, which will yield the
current thread in favor of higher prioritized functions, but not for
threads of its own priority class.

Boards now need to implement `thread_yield_higher()` instead of
`thread_yield()`, but `COREIF_NG` boards are not affected in any way.

`thread_yield()` retains its old meaning: yield for every thread that
has the same or a higher priority.

This PR does not touch the occurrences of `thread_yield()` in the periph
drivers, because the author of this PR did not look into the logic of
the various driver implementations.
9 years ago
René Kijewski 427a5fbaef core: let valid PIDs start with 1 9 years ago
Oleg Hahm 1de5c2b4a0 fixed remaining variables to kernel_pid_t 9 years ago
Oleg Hahm aa2ecf6216 initialize kernel_pid_t correctly 9 years ago
Oleg Hahm c2b0423918 core: renamed KERNEL_PID_NULL to KERNEL_PID_UNDEF
As @authmillenon pointed out the "null" in the old name is somewhat
misleading, since the actual value is -1.
9 years ago
Oleg Hahm 983d056c75 core: harmonizes the data type for the process ID
Instead of using differing integer types use kernel_pid_t for process
identifier. This type is introduced in a new header file to avoid
circular dependencies.
9 years ago
Ludwig Ortmann bea563d1da Fix a few cppcheck findings 9 years ago
Hauke Petersen 9001e0c2fb core: removed duplicated hwtimer_arch.h 9 years ago
René Kijewski ba1a15535b core: remove extra thread_create_arg() function 9 years ago
René Kijewski 867246a09f Add argument to thread_create 9 years ago
René Kijewski abdb3ef2a4 x86: add read-before-write check at runtime
Finding read-before-writes statically is quite difficult. In native we
can use valgrind, but on boards without an MMU we are out of luck.

x86 has an MMU, let's use it.

If `-DDEBUG_READ_BEFORE_WRITE` was set, then pages on the heap get
initialized upon first use. If the page was read before written, then a
debug message with the virtual and physical address of the memory
location is printed, as well as the address of the offending instruction.
9 years ago
René Kijewski 4e4f908379 Initial import of the x86 port
Currently this works only in qemu.
9 years ago