diff options
Diffstat (limited to 'lib/tlsf/Changelog')
-rw-r--r-- | lib/tlsf/Changelog | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/lib/tlsf/Changelog b/lib/tlsf/Changelog new file mode 100644 index 0000000000..0cdb34a8ab --- /dev/null +++ b/lib/tlsf/Changelog | |||
@@ -0,0 +1,119 @@ | |||
1 | Version History | ||
2 | --------------- | ||
3 | -v2.4.4 (October 13 2008) | ||
4 | * Corrected minor syntactic bug on statistic gathering code. | ||
5 | Reported by Tim Cussins and P. Mantegazza. | ||
6 | |||
7 | -v2.4.3 (July 30 2008) | ||
8 | * Minor fixes to compile with the greenhills compiler. | ||
9 | Reported by "Kaya, Sinan SEA" <sinan.kaya@siemens.com> | ||
10 | * Small change in the license in order to include TLSF in the RTEMS | ||
11 | project. | ||
12 | |||
13 | -v2.4.2 (May 16 2008) (Herman ten Brugge) | ||
14 | * Memory usage statistics added again, with cleaner and more compacted | ||
15 | code. | ||
16 | |||
17 | -v2.4.1 (April 30 2008) | ||
18 | * Fixed a bug in the tlsf_realloc function: init the pool automatically | ||
19 | on the first call. | ||
20 | Reported by: Alejandro Mery <amery@geeks.cl> | ||
21 | |||
22 | -v2.4 (Feb 19 2008) | ||
23 | * "rtl_*" functions renamed to "tlsf_*". | ||
24 | * Added the add_new_area function to insert new memory areas to an | ||
25 | existing memory pool. | ||
26 | * A single TLSF pool can manage non-contiguous memory areas. | ||
27 | * Support for mmap and sbrk added. | ||
28 | * The init_memory_pool is not longer needed when used on a system | ||
29 | with mmap or sbrk. | ||
30 | * Removed the get_used_size counting.The same functionality can be | ||
31 | implemented outside the TLSF code. | ||
32 | |||
33 | -v2.3.2 (Sep 27 2007) | ||
34 | * Minor cosmetic code improvements. | ||
35 | |||
36 | -v2.3.1 (Jul 30 2007) | ||
37 | * Fixed some minor bugs in the version 2.3. Herman ten Brugge | ||
38 | <hermantenbrugge@home.nl> | ||
39 | |||
40 | -v2.3 (Jul 28 2007) Released a new version with all the contributions | ||
41 | received from Herman ten Brugge <hermantenbrugge@home.nl> | ||
42 | (This is his summary of changes in the TLSF's code): | ||
43 | * Add 64 bit support. It now runs on x86_64 and solaris64. | ||
44 | * I also tested this on vxworks/32 and solaris/32 and i386/32 | ||
45 | processors. | ||
46 | * Remove assembly code. I could not measure any performance difference | ||
47 | on my core2 processor. This also makes the code more portable. | ||
48 | * Moved defines/typedefs from tlsf.h to tlsf.c | ||
49 | * Changed MIN_BLOCK_SIZE to sizeof (free_ptr_t) and BHDR_OVERHEAD to | ||
50 | (sizeof (bhdr_t) - MIN_BLOCK_SIZE). This does not change the fact | ||
51 | that the minumum size is still sizeof (bhdr_t). | ||
52 | * Changed all C++ comment style to C style. (// -> /* ... *./) | ||
53 | * Used ls_bit instead of ffs and ms_bit instead of fls. I did this to | ||
54 | avoid confusion with the standard ffs function which returns | ||
55 | different values. | ||
56 | * Created set_bit/clear_bit fuctions because they are not present | ||
57 | on x86_64. | ||
58 | * Added locking support + extra file target.h to show how to use it. | ||
59 | * Added get_used_size function | ||
60 | * Added rtl_realloc and rtl_calloc function | ||
61 | * Implemented realloc clever support. | ||
62 | * Added some test code in the example directory. | ||
63 | |||
64 | -- Thank you very much for your help Herman! | ||
65 | |||
66 | -v2.2.1 (Oct 23 2006) | ||
67 | * Support for ARMv5 implemented by Adam Scislowicz | ||
68 | <proteuskor@gmail.com>. Thank you for your contribution. | ||
69 | |||
70 | - v2.2.0 (Jun 30 2006) Miguel Masmano & Ismael Ripoll. | ||
71 | |||
72 | * Blocks smaller than 128 bytes are stored on a single | ||
73 | segregated list. The already existing bits maps and data | ||
74 | structures are used. | ||
75 | * Minor code speed-up improvements. | ||
76 | * Worst case response time both on malloc and free improved. | ||
77 | * External fragmantation also improved!. | ||
78 | * Segragared lists are AGAIN sorted by LIFO order. Version | ||
79 | 2.1b was proven to be no better than 2.1. | ||
80 | |||
81 | - v2.1b: Allocation policy has been always a LIFO Good-Fit, that | ||
82 | is, between several free blocks in the same range, TLSF will | ||
83 | always allocate the most recently released. In this version of | ||
84 | TLSF, we have implemented a FIFO Good-Fit. However, | ||
85 | fragmentation doesn't seems to be altered so is it worth it?. | ||
86 | |||
87 | - v2.1: Realloc and calloc included again in TLSF 2.0. | ||
88 | |||
89 | - v2.0: In this version, TLSF has been programmed from scratch. | ||
90 | Now the allocator is provided as an unique file. Realloc and | ||
91 | calloc are not longer implemented. | ||
92 | |||
93 | |||
94 | - v1.4: Created the section "Version History". Studied real | ||
95 | behaviour of actual applications (regular applications tend | ||
96 | to require small memory blocks (less than 16 bytes) whereas | ||
97 | TLSF is optimised to be used with blocks larger than 16 | ||
98 | bytes: Added special lists to deal with blocks smaller than | ||
99 | 16 bytes. | ||
100 | |||
101 | |||
102 | - v1.3: Change of concept, now the main TLSF structure is created | ||
103 | inside of the beginning of the block instead of being an | ||
104 | static structure, allowing multiple TLSFs working at the | ||
105 | same time. Now, TLSF uses specific processor instructions to | ||
106 | deal with bitmaps. TLSF sanity functions added to find TLSF | ||
107 | overflows. The TLSF code will not be RTLinux-oriented any | ||
108 | more. | ||
109 | |||
110 | - v1.1 ... v1.2: Many little bugs fixed, code cleaned and splitted | ||
111 | in several files because of cosmetic requirements. | ||
112 | Starting from TLSF v1.1, MaRTE OS | ||
113 | (http://marte.unican.es) uses the TLSF allocator | ||
114 | as its default memory allocator. | ||
115 | |||
116 | - v0.1 ... v1.0: First implementations were created for testing and | ||
117 | research purposes. Basically TLSF is implemented to | ||
118 | be used by RTLinux-GPL (www.rtlinux-gpl.org), so | ||
119 | it is RTLinux-oriented. | ||