void kernel_main() { gdt_install(); idt_install(); isrs_install(); irq_install(); terminal_initialize(); memory_manager_init(); enable_interrupts(); timer_install(); keyboard_install(); shell_init(); terminal_writestring("Hello, kernel World!\n"); terminal_writestring("Here is some text in a new line\n"); terminal_writestring("Here is some more text\n"); terminal_writestring("Here is a new line\n"); terminal_writestring("Here is some text after terminal scroll\n"); char str[] = "A string"; char ch = 'c'; int integer = 45; printf("This is a test for printf.\nThis is a char %c and this a string %s\n", ch, str); printf("This is an int %d. This is the same in hex %x\n", integer, integer); for (size_t i = 0; i < 5; i++) { printf("This is line number %d\n", i); } puts("waiting for 2 sec\n"); timer_wait(2); puts("waiting complete\n"); char buffer[200]; gets(buffer); printf("%s\n", buffer); while(1) { shell(); } }
int main(int argc, char *argv[]) { clock_t begin, end; float time_spent; int items = 1000; double size = 64; if ( argc != 2 ) { return 0; } else if (atoi(argv[1]) == 1) { memory_manager_init(); begin = clock(); for (int i = 0; i < items; ++i) { void *l = memory_manager_allocate(size); memory_manager_free(l); size++; } end = clock(); time_spent = ((float)(begin - end)) / CLOCKS_PER_SEC; printf("custom time: %lf \n", time_spent); memory_manager_shutdown(); } else if (atoi(argv[1]) == 2) { begin = clock(); for (int i = 0; i < items; ++i) { void *l = remalloc(size); free(l); size++; } end = clock(); time_spent = ((float)(begin - end)) / CLOCKS_PER_SEC; printf("malloc time: %lf \n", time_spent); } return 0; }