1 /****^  ***********************************************************
 2         *                                                         *
 3         * Copyright, (C) Honeywell Bull Inc., 1987                *
 4         *                                                         *
 5         * Copyright, (C) Honeywell Information Systems Inc., 1982 *
 6         *                                                         *
 7         *********************************************************** */
 8 initializer: proc ();
 9 
10 /* *      INITIALIZER
11    *
12    *      This program is the driving procedure of Multics Initialization.
13    *      It receives control from bootstrap2, and never returns. It must
14    *      be separate from bootstrap2, and, in fact, be part of the permanent
15    *      supervisor, because it makes the call to delete all the initialization
16    *      segments. However, it does little else, and just calls real_initializer
17    *      (which is an init-seg, and therefore gets deleted) to do the
18    *      real work of initialization.
19    *
20    *      Remodeled, 12/21/80 by W. Olin Sibert
21    *      Changed 10/27/84 by Allen Ball to set slt.(first last)_init_seg = 32768 after deleting them.
22    */
23 
24           dcl     addr                   builtin;
25           dcl     delete_segs$delete_segs_init entry ();
26           dcl     init_proc              entry ();
27           dcl     real_initializer       entry ();
28           dcl     slt$                   external;
29 
30 
31           sltp = addr (slt$);
32           call real_initializer;                            /* Call  the real thing */
33 
34           call delete_segs$delete_segs_init;                /* Clean up after the previous call */
35 
36           slt.first_init_seg = 32768;                       /* These segs are no more. */
37           slt.last_init_seg = 32768;                        /* 32768 is > possible valid segno */
38 
39           call init_proc;                                   /* And call out to ring 1, never to return */
40 
41 %include slt;
42      end initializer;