os/libc/memory.c

19 lines
354 B
C
Raw Normal View History

2019-03-17 12:22:00 -05:00
#include <stdint.h>
void* alloc_memory(uint32_t num_pages) {
void* address;
asm volatile(" \
mov $3, %%eax; \
int $80; \
":"=b"(address):"b"(num_pages));
return address;
}
void alloc_memory_virt(uint32_t num_pages,void* addr) {
void* address;
asm volatile(" \
2019-03-17 18:04:06 -05:00
mov $4, %%eax; \
2019-03-17 12:22:00 -05:00
int $80; \
"::"b"(num_pages),"c"(addr));
}