Remove questions. These questions should have been answered with my previous edit.
parent
2a25c38b9f
commit
c75890ed75
|
@ -167,9 +167,4 @@ The memory manager uses many macros, which may not be obvious at first:
|
||||||
* `BLOCK_FROM_PTR(ptr)`: Get the block number of a pointer.
|
* `BLOCK_FROM_PTR(ptr)`: Get the block number of a pointer.
|
||||||
* `PTR_FROM_BLOCK(block)`: Get a pointer from a block number (inverse of `BLOCK_FROM_PTR`).
|
* `PTR_FROM_BLOCK(block)`: Get a pointer from a block number (inverse of `BLOCK_FROM_PTR`).
|
||||||
* `ATB_FROM_BLOCK(block)`: Not currently used.
|
* `ATB_FROM_BLOCK(block)`: Not currently used.
|
||||||
* `FTB_GET(block)`, `FTB_SET(block)`, `FTB_CLEAR(block)`: Manage the finaliser bit for a given block.
|
* `FTB_GET(block)`, `FTB_SET(block)`, `FTB_CLEAR(block)`: Manage the finaliser bit for a given block.
|
||||||
|
|
||||||
## Questions
|
|
||||||
- Is there documentation for the above methods? I think that would help me understand what they do
|
|
||||||
- How is the memory structured? How is it gotten? Does python take out an array of data, or does it take out single elements at at time? I am having trouble understanding how this memory manager is supposed to be used.
|
|
||||||
- How many pointers can the memory manager handle at once (on your reference implementation, I believe 128k of memory)? Does the size of the data being requested matter? How does it deal with fragmentation? For instance, if the system asks for a few 100byte arrays and a few 5byte structs one after another, and then frees the 100byte arrays -- how does it handle the fragmentation? Is there a memory defragmenter?
|
|
Loading…
Reference in New Issue