Custom Query (6 matches)
Results (1 - 3 of 6)
Ticket | Resolution | Summary | Owner | Reporter |
---|---|---|---|---|
#3 | fixed | Review NOMMalloc()/NOMCalloc() | ||
Description |
NOMMalloc() and friends add size information to an allocated object thus increasing the memory object. This is done to make memory tracking in the inuse list of desktop objects easier. This should be changed now. NOMMalloc() is used everywhere for allocations so we increase memory objects everywhere. For inuse list uses we may introduce a wrapper function/method which will add the size info only if necessary. |
|||
#6 | fixed | Create nomIsObj() | ||
Description |
nomIsObj() is currently implemented as a macro just checking if pointer!=NULL. This has to be implemented in a correct way by checking if the object contains a valid pointer to a method table (mtab*). There must be some sophisticated data structure to enable checking the mtab* against the known list of mtabs. A binary tree containing the mtab-pointers won't work (without using some more advanced technique like selfbalancing trees) because the classes are loaded sequentially so each mtab[n] will be in a memory location > mtab[n-1] so the tree will be degenerated. Sequentially searching will presumably be slow, because one has to think about several hundred possible mtabs.
|
|||
#7 | fixed | Registering of some DLLs with the GC fails | ||
Description |
nomRegisterDLLByName() fails to register NOBJTK.DLL with the GC if the DLL was not preloaded by hand. Reason is that the DLL searching only finds system DLLs (Loaded modules in kTaskMgr). The imports of these system DLLs are also searched but of course only OS/2 native DLLs will be found. kTaskMgr shows all DLLs btw.
|