Subversion Repositories HelenOS

Rev

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

Rev 755 Rev 756
Line 136... Line 136...
136
 * Second part of main_bsp().
136
 * Second part of main_bsp().
137
 *
137
 *
138
 */
138
 */
139
void main_bsp_separated_stack(void)
139
void main_bsp_separated_stack(void)
140
{
140
{
141
    as_t *as;
-
 
142
    task_t *k;
141
    task_t *k;
143
    thread_t *t;
142
    thread_t *t;
144
   
143
   
145
    the_initialize(THE);
144
    the_initialize(THE);
146
   
145
   
Line 149... Line 148...
149
     * because other subsystems will register their respective
148
     * because other subsystems will register their respective
150
     * commands.
149
     * commands.
151
     */
150
     */
152
    kconsole_init();
151
    kconsole_init();
153
 
152
 
-
 
153
    /*
154
    /* Exception handler initialization, before architecture
154
     * Exception handler initialization, before architecture
155
     * starts adding its own handlers
155
     * starts adding its own handlers
156
     */
156
     */
157
    exc_init();
157
    exc_init();
158
 
158
 
159
    /*
159
    /*
160
     * Memory management subsystems initialization.
160
     * Memory management subsystems initialization.
161
     */
161
     */
162
    arch_pre_mm_init();
162
    arch_pre_mm_init();
163
    early_heap_init(config.heap_addr, config.heap_size + config.heap_delta);
163
    early_heap_init(config.heap_addr, config.heap_size + config.heap_delta);
164
    frame_init();
164
    frame_init();
-
 
165
    as_init();
165
    page_init();
166
    page_init();
166
    tlb_init();
167
    tlb_init();
167
    arch_post_mm_init();
168
    arch_post_mm_init();
168
 
169
 
169
    version_print();
170
    version_print();
Line 187... Line 188...
187
   
188
   
188
    if (config.init_size > 0)
189
    if (config.init_size > 0)
189
        printf("config.init_addr=%X, config.init_size=%d\n", config.init_addr, config.init_size);
190
        printf("config.init_addr=%X, config.init_size=%d\n", config.init_addr, config.init_size);
190
 
191
 
191
    /*
192
    /*
192
     * Create kernel address space.
-
 
193
     */
-
 
194
    as = as_create(GET_PTL0_ADDRESS(), FLAG_AS_KERNEL);
-
 
195
    if (!as)
-
 
196
        panic("can't create kernel address space\n");
-
 
197
 
-
 
198
    /*
-
 
199
     * Create kernel task.
193
     * Create kernel task.
200
     */
194
     */
201
    k = task_create(as);
195
    k = task_create(AS_KERNEL);
202
    if (!k)
196
    if (!k)
203
        panic("can't create kernel task\n");
197
        panic("can't create kernel task\n");
204
       
198
       
205
    /*
199
    /*
206
     * Create the first thread.
200
     * Create the first thread.