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 */