| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
use it for heaps and fiber stacks.
|
|
|
|
|
| |
debugging looks now better. there was also some valgrind issues
that needed attention.
|
| |
|
|
|
|
|
|
|
| |
instead of having per-function argument, use a push/pop mechanism:
- multiple timers inside fiber use only one heap entry
- easy to chain multiple possibly blocking operations inside one
timeout block
|
|
|
|
| |
fixup the internals a bit.
|
|
|
|
|
| |
pretty much untested. also some slight changes to how scheduler is
invoked.
|
|
|
|
|
|
| |
some scetching of i/o api, and implement basic read and write
functionality. integrate polling to scheduler and an epoll based
polling mechanism.
|
|
|
|
|
| |
internally put sleepers to d-ary heap based priority queue. the
heap value is compared with overflow.
|
|
libtf is to be user-space cooperative threading library similar
to State Threads (http://state-threads.sourceforge.net/), but
with additional support for multiple cores, using better
algorithms and taking advantage of new Linux kernel syscalls
such as eventfd, signalfd and epoll (edge-triggered mode).
Initial implementation has setjmp based user-space context
switching and trivial testcase. Works on Linux/x86.
TFbuild uses ideas from different build systems, namely Kbuild,
but it's inner workings are quite different. All build files are
included (using macro trickery) instead of recursive making. Thus
the build dependency graph is complete and should yield good make
performance. Also parallel stuff should work.
|