diff options
| author | Miguel <m.i@gmx.at> | 2018-09-16 23:46:30 +0200 |
|---|---|---|
| committer | Miguel <m.i@gmx.at> | 2018-09-16 23:46:30 +0200 |
| commit | 06e6e427c76bdb88a7f72dd04411d95a4bda3270 (patch) | |
| tree | 5c2bae3ca5292bf3db58c33ef3d7f4f3947593c3 /kernel/kmalloc.c | |
| parent | 740ae2e69995df37c44fe61f57642ee642982ca2 (diff) | |
starting to create sysfs
Diffstat (limited to 'kernel/kmalloc.c')
| -rw-r--r-- | kernel/kmalloc.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/kernel/kmalloc.c b/kernel/kmalloc.c index 356aab0..6a7520a 100644 --- a/kernel/kmalloc.c +++ b/kernel/kmalloc.c @@ -116,3 +116,19 @@ void kbfree(uint32_t pos) mark_free(blk,map[blk]); spinlock_release(SPINLOCK_ALLOC); } + +void kmalloc_sysfs(void (*f)(char *fmt, ...)) +{ + uint32_t free=0; + uint32_t used=0; + for(int i=0;i<BLOCKS;i++) + { + if(map[i]) used++; + else free++; + } + + f("kernel blocks allocation/deallocation"); + f("total 4096kb blocks: %d (%d bytes)",BLOCKS,BLOCKS*4096); + f("used 4096kb blocks: %d (%d bytes)",used,used*4096); + f("free 4096kb blocks: %d (%d bytes)",free,free*4096); +} |
