]> Zhao Yanbai Git Server - minix.git/commitdiff
Prioritized NOTIFY messages for reliable asynchonrous delivery of system events.
authorCristiano Giuffrida <cristiano@minix3.org>
Mon, 22 Mar 2010 23:44:55 +0000 (23:44 +0000)
committerCristiano Giuffrida <cristiano@minix3.org>
Mon, 22 Mar 2010 23:44:55 +0000 (23:44 +0000)
kernel/table.c
tools/Makefile

index 04d0f20d9f478a942c2cb7244c1e8f3e6d61c013..24b3adfbebe8a66009c854e171c93e1efde6faa6 100644 (file)
@@ -51,6 +51,11 @@ PUBLIC char *t_stack[TOT_STACK_SPACE / sizeof(char *)];
 /* The system image table lists all programs that are part of the boot image. 
  * The order of the entries here MUST agree with the order of the programs
  * in the boot image and all kernel tasks must come first.
+ * The order of the entries here matches the priority NOTIFY messages are
+ * delivered to a given process. NOTIFY messages are always delivered with
+ * the highest priority. DS must be the first system process in the list to
+ * allow reliable asynchronous publishing of system events. RS comes right after
+ * to prioritize ping messages periodically delivered to system processes.
  *
  * Each entry provides the process number, flags, quantum size, scheduling
  * queue, and a name for the process table. The initial program counter and
@@ -65,13 +70,15 @@ PUBLIC struct boot_image image[] = {
 {CLOCK,      NULL,     0,  0,      0, IDL_S, "clock" },
 {SYSTEM,     NULL,     0,  0,      0, IDL_S, "system"},
 {HARDWARE,      0,     0,  8, TASK_Q, HRD_S, "kernel"},
+
+{DS_PROC_NR,    0, BVM_F,  4,      4, 0,     "ds"    },
+{RS_PROC_NR,    0,     0,  4,      4, 0,     "rs"    },
+
 {PM_PROC_NR,    0,     0, 32,      4, 0,     "pm"    },
 {FS_PROC_NR,    0,     0, 32,      5, 0,     "vfs"   },
-{RS_PROC_NR,    0,     0,  4,      4, 0,     "rs"    },
 {MEM_PROC_NR,   0, BVM_F,  4,      3, 0,     "memory"},
 {LOG_PROC_NR,   0, BVM_F,  4,      2, 0,     "log"   },
 {TTY_PROC_NR,   0, BVM_F,  4,      1, 0,     "tty"   },
-{DS_PROC_NR,    0, BVM_F,  4,      4, 0,     "ds"    },
 {MFS_PROC_NR,   0, BVM_F, 32,      5, 0,     "mfs"   },
 {VM_PROC_NR,    0,     0, 32,      2, 0,     "vm"    },
 {PFS_PROC_NR,   0, BVM_F, 32,      5, 0,     "pfs"   },
index c01eff574731c0aa61ff542fa98050cdbb29666f..20ab2755e31c2d8d1f56ca38065d61c7964fd385 100644 (file)
@@ -7,13 +7,13 @@ MDEC= /usr/mdec
 
 # Specify the programs that are part of the system image.
 PROGRAMS=      ../kernel/kernel \
+       ../servers/ds/ds \
+       ../servers/rs/rs \
        ../servers/pm/pm \
        ../servers/vfs/vfs \
-       ../servers/rs/rs \
        ../drivers/memory/memory_driver/memory \
        ../drivers/log/log \
        ../drivers/tty/tty \
-       ../servers/ds/ds \
        ../servers/mfs/mfs \
        ../servers/vm/vm \
        ../servers/pfs/pfs \