I need to implement a simple object manager. An object manager is another form of table, but we now store generic objects in a managed buffer (the internal implementation of a table varies based on need). Using a buffer means that we must directly manage the memory and references to objects. This means that our object manager must implement reference counting and a garbage collector, so that we properly handle creation and deletion of objects. The object manager's interface is given by the file ObjectManager.h and the implementation will be in the file ObjectManager.c. Your task is to implement the functions required for the object manager. This includes all the functions listed in ObjectManager.h, along with any (private) static functions that will be useful. You will also need to define appropriate data types and data structures for keeping track of the objects that have been allocated. You are NOT allow to change the prototypes of the functions that are provided to you in ObjectManager.h. To summarize, the functionalities you have to implement are:
• initPool() - Initialize the object manager upon starting.
• destroyPool() - Clean up the object manager upon quitting.
• insertObject(size) - request a block of memory of given size from the object manager.
• retrieveObject(id) - retrieve the address of an object, identified by the reference id.
• addReference(id) - increment reference count for the object with reference id.
• dropReference(id) - decrement reference count for the object with reference id.
• compact() - initiate garbage collection (see below).
• dumpPool() - print (to stdout) info about each object that is currently allocated including its id, start address, size and reference count.
16 фрилансеров(-а) в среднем готовы выполнить эту работу за $163
Hi there, please leave a message on my chat so we can discuss the budget and deadline of the project. I have read your project description and i'm confident i can do this project for you perfectly. Thanks
Hello, Sir. I have sufficient experience and skill in C/C++ programming. I can satisfy your project in time. I believe you will select me. Thank you.~_~
Hi there, I am expert programmer skilled and experienced in C and C++. I understand your project requirements and will be able to deliver the work as immediate as possible. Please message me to discuss more.
I'm a senior C++ developer with almost five years of experience designing and implementing applications for Windows, Linux and Mac. Main skills: C++ Boost Qt Python C# (WPF) Blockchain (eos)