stuff
This commit is contained in:
@@ -33,6 +33,8 @@ char *msg_addr = "Address: ";
|
||||
char *msg_len = "Length: ";
|
||||
char *msg_type = "Type: ";
|
||||
char *msg_nl = "\n";
|
||||
char *msg_malloc_num_entries_avail = "Malloc avail entries: ";
|
||||
char *msg_malloc_num_entries_used = "Malloc used entries: ";
|
||||
|
||||
typedef struct {
|
||||
void *address;
|
||||
@@ -166,34 +168,40 @@ void free(void *mem) {
|
||||
};
|
||||
|
||||
|
||||
void print_hex_u64(u64 input) {
|
||||
char msg[18] = "0x0000000000000000";
|
||||
for (int i = 0; i < 16; ++i) {
|
||||
int val = input >> (4 * i) & 0xF;
|
||||
msg[17 - i] = msg_lu[val];
|
||||
}
|
||||
kprint(msg);
|
||||
void print_int(int val, int base) {
|
||||
char tmp_str[32];
|
||||
memset(tmp_str, 0, 32);
|
||||
itoa(val, tmp_str, base);
|
||||
kprint(tmp_str);
|
||||
}
|
||||
|
||||
void print_malloc_info() {
|
||||
kprint(msg_malloc_num_entries_avail);
|
||||
print_int(malloc_entries, 10);
|
||||
kprint(msg_nl);
|
||||
|
||||
kprint(msg_malloc_num_entries_used);
|
||||
print_int(malloc_used, 10);
|
||||
kprint(msg_nl);
|
||||
}
|
||||
|
||||
|
||||
void print_mmap_info() {
|
||||
for (int i = 0; i < 16; ++i) {
|
||||
if (memmap[i].type == 0) {
|
||||
break;
|
||||
}
|
||||
char *tmp_str = " ";
|
||||
kprint(msg_index);
|
||||
itoa(i, tmp_str);
|
||||
kprint(tmp_str);
|
||||
print_int(i, 10);
|
||||
kprint(msg_nl);
|
||||
kprint(msg_addr);
|
||||
print_hex_u64((u64) memmap[i].address);
|
||||
print_int((int) memmap[i].address, 16);
|
||||
kprint(msg_nl);
|
||||
kprint(msg_len);
|
||||
print_hex_u64((u64) memmap[i].length);
|
||||
print_int(memmap[i].length, 16);
|
||||
kprint(msg_nl);
|
||||
kprint(msg_type);
|
||||
itoa(memmap[i].type, tmp_str);
|
||||
kprint(tmp_str);
|
||||
print_int(memmap[i].type, 10);
|
||||
kprint(msg_nl);
|
||||
kprint(msg_nl);
|
||||
}
|
||||
|
||||
@@ -9,9 +9,12 @@
|
||||
|
||||
void init_mmap(struct multiboot_mmap_entry *entries, u32 count);
|
||||
|
||||
void print_malloc_info();
|
||||
|
||||
void print_mmap_info();
|
||||
|
||||
void* malloc(unsigned int size);
|
||||
void free(void* mem);
|
||||
void *malloc(unsigned int size);
|
||||
|
||||
void free(void *mem);
|
||||
|
||||
#endif //NEW_KERNEL_MEM_H
|
||||
|
||||
Reference in New Issue
Block a user