summaryrefslogtreecommitdiffstats
path: root/include/libtf/defines.h
Commit message (Collapse)AuthorAgeFilesLines
* libtf: implement basic file i/o with epollTimo Teras2009-11-251-0/+5
| | | | | | some scetching of i/o api, and implement basic read and write functionality. integrate polling to scheduler and an epoll based polling mechanism.
* libtf: implement timeoutsTimo Teras2009-11-241-1/+15
| | | | | internally put sleepers to d-ary heap based priority queue. the heap value is compared with overflow.
* libtf: initial commitTimo Teras2009-11-241-0/+67
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.