/** * start.c * Файл с точкой входа * * * Файл с функцией для инициализации системы * */ #include #include #include #include #include #include #include uint64_t full_init = 0; // Точка входа void _start( ) { asm volatile("cli"); log_init( ); mem_init( ); fb_init( ); log_init_mem( ); arch_init( ); LOG("\t\t\t\t *** Базовая Модульная Платформа Операционных Систем " "версии %u.%u.%u %s***\n", VERSION_MAJOR, VERSION_MINOR, VERSION_BUILD, KERNEL_GIT_TAG); LOG("\t\t\t\t *** Дата сборки: %s %s ***\n", __DATE__, __TIME__); task_init( ); pit_init( ); mod_init( ); LOG("Готово! Для выхода из симуляции удерживайте: ESCAPE\n"); full_init = 1; asm volatile("sti"); mod_after_init( ); for (;;) { asm volatile("hlt"); } }