mirror of
https://github.com/RGBCube/serenity
synced 2025-05-25 22:15:06 +00:00
Lots of hacking to make a very simple "ls" utility.
I added a dead-simple malloc that only allows allocations < 4096 bytes. It just forwards the request to mmap() every time. I also added simplified versions of opendir() and readdir().
This commit is contained in:
parent
0c5bbac86e
commit
bca4b71bfa
19 changed files with 277 additions and 67 deletions
24
LibC/stdlib.cpp
Normal file
24
LibC/stdlib.cpp
Normal file
|
@ -0,0 +1,24 @@
|
|||
#include "stdlib.h"
|
||||
#include "mman.h"
|
||||
|
||||
extern "C" {
|
||||
|
||||
void* malloc(size_t size)
|
||||
{
|
||||
if (size > 4096) {
|
||||
volatile char* crashme = (char*)0xc007d00d;
|
||||
*crashme = 0;
|
||||
}
|
||||
void* ptr = mmap(nullptr, 4096);
|
||||
return ptr;
|
||||
}
|
||||
|
||||
void free(void* ptr)
|
||||
{
|
||||
if (!ptr)
|
||||
return;
|
||||
munmap(ptr, 4096);
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue