| 85 | == Pavel Pisa's Suggestion == |
| 86 | |
| 87 | Posted as http://www.rtems.com/ml/rtems-users/2006/february/msg00006.html |
| 88 | |
| 89 | TLSF dynamic storage allocator |
| 90 | |
| 91 | http://rtportal.upv.es/rtmalloc/allocators/tlsf/index.shtml |
| 92 | |
| 93 | This is nice approach, O(1) allocate, O(1) delete. Needs to do |
| 94 | find first bit set to compute log of size and then two find first |
| 95 | bit set instructions and atomic double linked list delete for allocate. |
| 96 | |
| 97 | Only log computation and some set bit and list insert |
| 98 | for free. Fragmentation is kept on reasonable level |
| 99 | |
| 100 | As for license, I know the people and I expect no problems. |
| 101 | Even rewrite of the code onto RTEMS primitives from scratch |
| 102 | is possible. Idea is so clean, simple but unique that there |
| 103 | is no problem to reimplement it. |