void boot_loader() { // load program named "boot" long phdrs[128]; current.phdr = (uintptr_t)phdrs; current.phdr_size = sizeof(phdrs); load_elf("vmlinux", ¤t); run_loaded_program(); }
void boot_loader() { // load program named "boot" long phdrs[128]; current.phdr = (uintptr_t)phdrs; current.phdr_size = sizeof(phdrs); uart_send_string("Loadng linux ELF\n"); load_elf("vmlinux", ¤t); uart_send_string("Linux ELF loaded\n"); run_loaded_program(); }
static void rest_of_boot_loader(uintptr_t kstack_top) { arg_buf args; size_t argc = parse_args(&args); if (!argc) panic("tell me what ELF to load!"); // load program named by argv[0] long phdrs[128]; current.phdr = (uintptr_t)phdrs; current.phdr_size = sizeof(phdrs); load_elf(args.argv[0], ¤t); run_loaded_program(argc, args.argv, kstack_top); }