Michael Bebenita
|
de611a3090
|
Lots of design changes around proxies and message passing. Made it so that domains can only talk to other domains via handles, and with the help of the rust_kernel.
|
2010-09-07 18:44:12 -07:00 |
|
Michael Bebenita
|
9b74129a4f
|
Added a thread utility class to factor out operations on threads.
|
2010-09-07 18:41:07 -07:00 |
|
Michael Bebenita
|
f8ff013e3c
|
Added a few utility classes, cleaned up the include order of .h files, and started to make the Rust kernel own domain message queues rather than the Rust domains themselves.
|
2010-09-07 18:41:07 -07:00 |
|
Michael Bebenita
|
64ff82ecf9
|
Implemented an lock free queue based on this paper http://www.cs.rochester.edu/~scott/papers/1996_PODC_queues.pdf, the "lock free queue" we had before wasn't lock free at all.
|
2010-08-24 21:07:14 -07:00 |
|
Michael Bebenita
|
6e9f0f952d
|
Made the lock_free_queue lock (temporarily, until fixed).
|
2010-08-17 23:49:57 -07:00 |
|
Michael Bebenita
|
5d98a311e4
|
Putting out the burning tree on Windows. Turns out you can completely starve threads by not yielding on windows/vmware, really weird.
|
2010-08-16 18:44:26 -07:00 |
|
Michael Bebenita
|
988695a96c
|
Added support for task sleeping in the scheduler.
|
2010-08-11 21:24:04 -07:00 |
|
Michael Bebenita
|
9ff6a3d031
|
Added class to abstract away platform specific thread primitives.
|
2010-08-09 07:42:06 -07:00 |
|
Michael Bebenita
|
d2c2fbe7ca
|
Added timed_wait to condition variables.
|
2010-08-09 07:04:38 -07:00 |
|
Michael Bebenita
|
00d1465d13
|
Added a message passing system based on lock free queues for inter-thread communication. Channels now buffer on the sending side, and no longer require blocking when sending. Lots of other refactoring and bug fixes.
|
2010-07-19 14:05:18 -07:00 |
|
Graydon Hoare
|
d6b7c96c3e
|
Populate tree.
|
2010-06-23 21:03:09 -07:00 |
|