Rev 3160 | Rev 3170 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 3160 | Rev 3169 | ||
|---|---|---|---|
| Line 137... | Line 137... | ||
| 137 | /* Statically linked program */ |
137 | /* Statically linked program */ |
| 138 | // printf("Run statically linked program\n"); |
138 | // printf("Run statically linked program\n"); |
| 139 | // printf("entry point: 0x%llx\n", prog_info.entry); |
139 | // printf("entry point: 0x%llx\n", prog_info.entry); |
| 140 | ipc_answer_0(rid, EOK); |
140 | ipc_answer_0(rid, EOK); |
| 141 | close_console(); |
141 | close_console(); |
| 142 | elf_run(&prog_info); |
142 | elf_run(&prog_info, __pcb_get()); |
| 143 | return 0; |
143 | return 0; |
| 144 | } |
144 | } |
| 145 | 145 | ||
| 146 | printf("Load dynamic linker '%s'\n", prog_info.interp); |
146 | printf("Load dynamic linker '%s'\n", prog_info.interp); |
| 147 | rc = elf_load_file("/rtld.so", RTLD_BIAS, &interp_info); |
147 | rc = elf_load_file("/rtld.so", RTLD_BIAS, &interp_info); |
| Line 161... | Line 161... | ||
| 161 | printf("run dynamic linker\n"); |
161 | printf("run dynamic linker\n"); |
| 162 | printf("entry point: 0x%llx\n", interp_info.entry); |
162 | printf("entry point: 0x%llx\n", interp_info.entry); |
| 163 | close_console(); |
163 | close_console(); |
| 164 | 164 | ||
| 165 | ipc_answer_0(rid, EOK); |
165 | ipc_answer_0(rid, EOK); |
| 166 | elf_run(&interp_info); |
166 | elf_run(&interp_info, __pcb_get()); |
| 167 | 167 | ||
| 168 | /* Not reached(?) */ |
168 | /* Not reached(?) */ |
| 169 | return 0; |
169 | return 0; |
| 170 | } |
170 | } |
| 171 | 171 | ||