Hey all!
At long last, I have an Alpha version of the Citadel VMM
Its a Buddy Allocation scheme, and all initial tests by me seem to show its working.
Man, Ive spent SO long learning how to do this.
MAN im happy, I dont think anyone can comprehend how amazingly hyper I am RIGHT now.
Anywho, Testing has revealed several limitations.
- All Allocations must be Power-of-Two.
You can allocate 16KiB but not 12KiB.
- Minimum allocation size is 512bytes.
Im pondering ways to allow myself... like, smaller allocation sizes.
Without creating even MORE overhead.
I was thinking of letting you create a Cache type thing.
You allocate so much for the Cache.
Then, inside of it ... it lets you allocate things First fit style.
Tracking structures inside of the Cache.
But, Im not sure.
Anyways!
Ive got to add some enforcement rules into the VMM, and tear out all the commented out buggy code that shows that it rEALLY is a Alpha alpha ALPHA!
Ill post the source when its somewhat cleaned up!
~Zeii.
Citadel VMM :D
Re:Citadel VMM :D
THis is an impulsive thing,
and im nervous to do this,
*sigh*.
This is the Citadel VMM code.
SIzes arent enforced yet, I have to add that.
So, itll try to allocate less than a power of two and screw itself up.
Itll merge free blocks if it can.
THe code is uncommented and somewhat dirty.
But im still proud of it.
s2mm.c / .h
~Z
and im nervous to do this,
*sigh*.
This is the Citadel VMM code.
SIzes arent enforced yet, I have to add that.
So, itll try to allocate less than a power of two and screw itself up.
Itll merge free blocks if it can.
THe code is uncommented and somewhat dirty.
But im still proud of it.
s2mm.c / .h
~Z