#
96e64e6e |
|
11-Aug-2019 |
Augustin Cavalier <waddlesplash@gmail.com> |
Application Kit: Add B_CLONEABLE_AREA permission to cloned server areas. The Media Kit needs this for overlays.
|
#
8e2140fa |
|
29-Apr-2012 |
Axel Dörfler <axeld@pinc-software.de> |
Fixed a large client side memory leak for app_server memory. * The areas allocated for BBitmaps were never deleted, even though the app_server deleted its part when the memory got freed. * This resulted in a constant memory increase if the application in question would operate on many changing large bitmaps, like photos. * Since the bitmaps are reference counted, we don't actually know when to delete the areas, so that the app_server now notifies the client whenever that is possible. * This might fix #6824.
|
#
8c5a0acc |
|
24-Jun-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* Do not reserve memory when the area is too large. This fixes #7740 where the reserved amount was simply too small, but also works around address space waste with many larger bitmaps. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42298 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5ff09046 |
|
06-Jun-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* ServerMemoryAllocator::RemoveArea() never removed the deleted mapping from the list. * Might even help with #7632. +alpha git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41983 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3609af39 |
|
19-Jun-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Renamed _kern_reserve_heap_address_range() to _kern_reserve_address_range(), and added a _kern_unreserve_address_range() as well. * The runtime loader now reserves the space needed for all its areas first to make sure there is enough space left for all areas of a single image. * This also fixes the final part of bug #4008. * Minor cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31115 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
bb40a685 |
|
03-May-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* The mapping is now also removed from the area list in case creating the area failed. * "base" is no longer used uninitialized in combination with B_BASE_ADDRESS. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17304 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6d5488e1 |
|
25-Apr-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* There is now a server_read_only_memory structure that is placed in a (surprise!) read-only area shared between the Desktop and all applications. * Right now, this area only contains the desktop colors, ie. B_PANEL_BACKGROUND_COLOR etc.; ui_color() no longer needs to ask the server for these colors. * The ui_colors are now maintained by DesktopSettings, though ColorSet is still there. * The default colors are now hardcoded once and for everyone in InterfaceDefs.h, ie. the app_server uses them as well. * Desktop::Init() can now also return an error (but that is not yet accounted for). * Cleaned up InterfaceDefs.h. * Fixed wrong include in moreUTF8.h. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17232 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
04768381 |
|
18-Mar-2006 |
Axel Dörfler <axeld@pinc-software.de> |
The test environment should now build okay again, as well. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16829 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9a44fdc9 |
|
18-Mar-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* Implemented a new client allocation method: instead of having all bitmaps of all teams in serveral server areas, and instead of having to eventually clone them all several times in BBitmap, we now have one or more areas per team, and BBitmap will only clone areas once if needed. As a side effect, this method should be magnitudes faster than the previous version. * This method is also much more secure: instead of putting the allocation maintenance structures into those everyone-read-write areas, they are now separated, so that faulty applications cannot crash the app_server this way anymore. This should fix bug #172. * Freeing memory is not yet implemented though! (although all memory will be freed upon app exit) * There are now 3 different bitmap allocation strategies: per ClientMemoryAllocator (ie. via ServerApp), per area (for overlays, not yet implemented), and using malloc()/free() for server-only bitmaps. * ServerBitmap now deletes its buffers itself. * Cleaned up BBitmap and BApplication a bit. * The test environment currently doesn't build anymore, will fix it next. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16826 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
8e2140fa5eb8a019a5134ce041499d14b7ced7a3 |
|
29-Apr-2012 |
Axel Dörfler <axeld@pinc-software.de> |
Fixed a large client side memory leak for app_server memory. * The areas allocated for BBitmaps were never deleted, even though the app_server deleted its part when the memory got freed. * This resulted in a constant memory increase if the application in question would operate on many changing large bitmaps, like photos. * Since the bitmaps are reference counted, we don't actually know when to delete the areas, so that the app_server now notifies the client whenever that is possible. * This might fix #6824.
|
#
8c5a0accf5d61de8e2beb7d079d022c56ed0a3f2 |
|
24-Jun-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* Do not reserve memory when the area is too large. This fixes #7740 where the reserved amount was simply too small, but also works around address space waste with many larger bitmaps. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42298 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
5ff090465d2f7f3166760f1624a742aefea0ab74 |
|
06-Jun-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* ServerMemoryAllocator::RemoveArea() never removed the deleted mapping from the list. * Might even help with #7632. +alpha git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@41983 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3609af391d646e2629e70e7b214a79ed57578ffc |
|
19-Jun-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Renamed _kern_reserve_heap_address_range() to _kern_reserve_address_range(), and added a _kern_unreserve_address_range() as well. * The runtime loader now reserves the space needed for all its areas first to make sure there is enough space left for all areas of a single image. * This also fixes the final part of bug #4008. * Minor cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31115 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
bb40a6854756fe8ef11fa891b5eeb03d8e08cb27 |
|
03-May-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* The mapping is now also removed from the area list in case creating the area failed. * "base" is no longer used uninitialized in combination with B_BASE_ADDRESS. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17304 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6d5488e18ac47e1c47706227b9a21524ae7874e8 |
|
25-Apr-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* There is now a server_read_only_memory structure that is placed in a (surprise!) read-only area shared between the Desktop and all applications. * Right now, this area only contains the desktop colors, ie. B_PANEL_BACKGROUND_COLOR etc.; ui_color() no longer needs to ask the server for these colors. * The ui_colors are now maintained by DesktopSettings, though ColorSet is still there. * The default colors are now hardcoded once and for everyone in InterfaceDefs.h, ie. the app_server uses them as well. * Desktop::Init() can now also return an error (but that is not yet accounted for). * Cleaned up InterfaceDefs.h. * Fixed wrong include in moreUTF8.h. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17232 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0476838149c4b599a8c36690ed34595d7965f88f |
|
18-Mar-2006 |
Axel Dörfler <axeld@pinc-software.de> |
The test environment should now build okay again, as well. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16829 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
9a44fdc97c4c91b6be039ac5125a618c8fd268cc |
|
18-Mar-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* Implemented a new client allocation method: instead of having all bitmaps of all teams in serveral server areas, and instead of having to eventually clone them all several times in BBitmap, we now have one or more areas per team, and BBitmap will only clone areas once if needed. As a side effect, this method should be magnitudes faster than the previous version. * This method is also much more secure: instead of putting the allocation maintenance structures into those everyone-read-write areas, they are now separated, so that faulty applications cannot crash the app_server this way anymore. This should fix bug #172. * Freeing memory is not yet implemented though! (although all memory will be freed upon app exit) * There are now 3 different bitmap allocation strategies: per ClientMemoryAllocator (ie. via ServerApp), per area (for overlays, not yet implemented), and using malloc()/free() for server-only bitmaps. * ServerBitmap now deletes its buffers itself. * Cleaned up BBitmap and BApplication a bit. * The test environment currently doesn't build anymore, will fix it next. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16826 a95241bf-73f2-0310-859d-f6bbb57e9c96
|