1 /* BEGIN INCLUDE FILE ... stack_0_data.incl.pl1 */
 2 
 3 /* Created 790509 by Mike Grady */
 4 
 5 dcl  stack_0_data$ fixed bin ext;                           /* shared stack 0 data base seg */
 6 dcl  stack_0_data_init_number_of_stacks fixed bin;          /* Make PL/I work */
 7 dcl  sdtp ptr;
 8 
 9 dcl 1 sdt aligned based (sdtp),                             /* stack 0 database */
10     2 lock bit (36),                                        /* lock before changing threads */
11     2 num_stacks fixed bin,                                 /* number of stacks in pool */
12     2 freep bit (18),                                       /* head of free thread, managed LIFO */
13     2 pad fixed bin,
14     2 stacks (stack_0_data_init_number_of_stacks
15           refer (sdt.num_stacks)) like sdte;
16 
17 dcl  sdtep ptr;
18 
19 dcl 1 sdte aligned based (sdtep),                           /* stack data table entry */
20     2 nextp bit (18) unal,                                  /* thread to next free entry (if free) */
21     2 pad bit (18) unal,
22     2 astep bit (18) unal,                                  /* ptr to ASTE for this stack seg */
23     2 aptep bit (18) unal,                                  /* ptr to APTE of process using this stack, if not free */
24     2 sdw bit (72);                                         /* SDW for this stack seg */
25 
26 /* END INCLUDE FILE ... stack_0_data.incl.pl1 */