]> Zhao Yanbai Git Server - minix.git/commitdiff
System task initialization moved to main()
authorTomas Hruby <tom@minix3.org>
Tue, 9 Feb 2010 15:12:20 +0000 (15:12 +0000)
committerTomas Hruby <tom@minix3.org>
Tue, 9 Feb 2010 15:12:20 +0000 (15:12 +0000)
- the system task initialization code does not really need to be part
  of the system task process. An earlier initialization in kernel is
  cleaner as it does not only initialize the syscalls but also irq
  hooks etc.

kernel/main.c
kernel/proto.h
kernel/system.c

index fe28258c5ab300012eed4dccef3ba2a818143108..16b859e398d44a13e2db56f2563f2405ec8c8b07 100644 (file)
@@ -210,6 +210,9 @@ PUBLIC void main()
   /* Architecture-dependent initialization. */
   arch_init();
 
+  /* System and processes initialization */
+  system_init();
+
 #if SPROFILE
   sprofiling = 0;      /* we're not profiling until instructed to */
 #endif /* SPROFILE */
index 7a89feacf60aeb9c6aa80acad31f92304ba04675..48a88453e0a17b097b1d7574643225b97e9ac4dd 100644 (file)
@@ -59,6 +59,7 @@ _PROTOTYPE( void send_sig, (int proc_nr, int sig_nr)                  );
 _PROTOTYPE( void cause_sig, (proc_nr_t proc_nr, int sig_nr)                    );
 _PROTOTYPE( void sig_delay_done, (struct proc *rp)                     );
 _PROTOTYPE( void sys_task, (void)                                      );
+_PROTOTYPE( void system_init, (void)                                   );
 #define numap_local(proc_nr, vir_addr, bytes) \
        umap_local(proc_addr(proc_nr), D, (vir_addr), (bytes))
 _PROTOTYPE( phys_bytes umap_grant, (struct proc *, cp_grant_id_t, vir_bytes));
index b1a49f2d76181d06a76a9175766b400d8d85800e..2e7d5d71b3931c3b3e68fe327e5be9642e866931 100644 (file)
@@ -75,10 +75,6 @@ PUBLIC void sys_task()
   int who_p;
   endpoint_t who_e;
 
-  /* Initialize the system task. */
-  initialize();
-
-
   while (TRUE) {
       struct proc *restarting;
 
@@ -146,7 +142,7 @@ PUBLIC void sys_task()
 /*===========================================================================*
  *                             initialize                                   *
  *===========================================================================*/
-PRIVATE void initialize(void)
+PUBLIC void system_init(void)
 {
   register struct priv *sp;
   int i;