Subversion Repositories HelenOS

Rev

Rev 2283 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2283 Rev 2292
Line 236... Line 236...
236
    slab_enable_cpucache();
236
    slab_enable_cpucache();
237
 
237
 
238
    printf("config.memory_size=%zdM\n", config.memory_size >> 20);
238
    printf("config.memory_size=%zdM\n", config.memory_size >> 20);
239
    printf("config.cpu_count=%zd\n", config.cpu_count);
239
    printf("config.cpu_count=%zd\n", config.cpu_count);
240
    cpu_init();
240
    cpu_init();
241
 
241
   
242
    calibrate_delay_loop();
242
    calibrate_delay_loop();
243
    clock_counter_init();
243
    clock_counter_init();
244
    timeout_init();
244
    timeout_init();
245
    scheduler_init();
245
    scheduler_init();
246
    task_init();
246
    task_init();
247
    thread_init();
247
    thread_init();
248
    futex_init();
248
    futex_init();
249
 
-
 
250
 
-
 
251
    klog_init();
249
    klog_init();
252
   
250
   
253
    if (init.cnt > 0) {
251
    if (init.cnt > 0) {
254
        for (i = 0; i < init.cnt; i++)
252
        for (i = 0; i < init.cnt; i++)
255
            printf("init[%zd].addr=%.*p, init[%zd].size=%zd\n", i,
253
            printf("init[%zd].addr=%.*p, init[%zd].size=%zd\n", i,
256
                sizeof(uintptr_t) * 2, init.tasks[i].addr, i,
254
                sizeof(uintptr_t) * 2, init.tasks[i].addr, i,
257
                init.tasks[i].size);
255
                init.tasks[i].size);
258
    } else
256
    } else
259
        printf("No init binaries found\n");
257
        printf("No init binaries found\n");
-
 
258
   
260
    ipc_init();
259
    ipc_init();
261
 
260
 
262
    /*
261
    /*
263
     * Create kernel task.
262
     * Create kernel task.
264
     */
263
     */
Line 271... Line 270...
271
     */
270
     */
272
    t = thread_create(kinit, NULL, k, 0, "kinit", true);
271
    t = thread_create(kinit, NULL, k, 0, "kinit", true);
273
    if (!t)
272
    if (!t)
274
        panic("can't create kinit thread\n");
273
        panic("can't create kinit thread\n");
275
    thread_ready(t);
274
    thread_ready(t);
276
 
-
 
277
    //tasklets disabled for debugging purposes
-
 
278
    tasklet_run_tasklet_thread(k);
-
 
279
   
275
   
-
 
276
    tasklet_run_tasklet_thread(k);
-
 
277
 
280
    /*
278
    /*
281
     * This call to scheduler() will return to kinit,
279
     * This call to scheduler() will return to kinit,
282
     * starting the thread of kernel threads.
280
     * starting the thread of kernel threads.
283
     */
281
     */
284
    scheduler();
282
    scheduler();