|
PatchworkOS
|
#include <kernel/init/init.h>#include <kernel/acpi/acpi.h>#include <kernel/acpi/aml/aml.h>#include <kernel/acpi/devices.h>#include <kernel/acpi/tables.h>#include <kernel/cpu/gdt.h>#include <kernel/cpu/idt.h>#include <kernel/cpu/smp.h>#include <kernel/cpu/syscalls.h>#include <kernel/drivers/const.h>#include <kernel/drivers/gop.h>#include <kernel/drivers/ps2/ps2.h>#include <kernel/fs/ramfs.h>#include <kernel/fs/sysfs.h>#include <kernel/fs/vfs.h>#include <kernel/ipc/pipe.h>#include <kernel/ipc/shmem.h>#include <kernel/log/log.h>#include <kernel/log/log_file.h>#include <kernel/log/panic.h>#include <kernel/mem/pmm.h>#include <kernel/mem/vmm.h>#include <kernel/net/net.h>#include <kernel/proc/process.h>#include <kernel/sched/loader.h>#include <kernel/sched/sched.h>#include <kernel/sched/timer.h>#include <kernel/sched/wait.h>#include <kernel/module/module.h>#include <boot/boot_info.h>#include <libstd/_internal/init.h>#include <stdlib.h>#include <strings.h>Go to the source code of this file.
Functions | |
| void | init_early (const boot_info_t *bootInfo) |
| Early kernel initialization. | |
| static void | init_free_loader_data (const boot_memory_map_t *map) |
| static void | init_finalize (const boot_info_t *bootInfo) |
| static void | init_process_spawn (void) |
| void | kmain (const boot_info_t *bootInfo) |
| Kernel main function. | |
|
static |
Definition at line 92 of file init.c.
References acpi_devices_init(), acpi_reclaim_memory(), acpi_tables_expose(), aml_init(), aml_namespace_expose(), assert, bootThread, const_init(), boot_info_t::disk, boot_info_t::gop, gop_init(), init_free_loader_data(), log_file_expose(), LOG_INFO, boot_memory_t::map, boot_info_t::memory, module_init(), net_init(), NULL, PAGE_SIZE, pipe_init(), pmm_reserved_amount(), process_procfs_init(), ps2_init(), ramfs_init(), shmem_init(), smp_others_init(), statistics_init(), syscall_table_init(), sysfs_init(), thread_get_boot(), vfs_init(), vmm_map_bootloader_lower_half(), and vmm_unmap_bootloader_lower_half().
Referenced by kmain().
|
static |
Definition at line 77 of file init.c.
References BOOT_MEMORY_MAP_GET_DESCRIPTOR, boot_memory_map_t::length, LOG_INFO, map, PAGE_SIZE, and pmm_free_region().
Referenced by init_finalize().
|
inlinestatic |
Definition at line 133 of file init.c.
References ERR, klog, loader_spawn(), LOG_INFO, NULL, panic(), PATHNAME, PRIORITY_MAX_USER, thread_t::process, ref_dec(), sched_push(), STDOUT_FILENO, vfs_ctx_set_fd(), vfs_open(), and process_t::vfsCtx.
Referenced by kmain().