-
Notifications
You must be signed in to change notification settings - Fork 0
/
announce_chwm.list
669 lines (643 loc) · 38.4 KB
/
announce_chwm.list
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
COMPILATION LISTING OF SEGMENT announce_chwm
Compiled by: Multics PL/I Compiler, Release 32f, of October 9, 1989
Compiled at: Bull HN, Phoenix AZ, System-M
Compiled on: 11/11/89 1001.0 mst Sat
Options: optimize map
1 /****^ ***********************************************************
2* * *
3* * Copyright, (C) Honeywell Bull Inc., 1987 *
4* * *
5* * Copyright, (C) Honeywell Information Systems Inc., 1982 *
6* * *
7* *********************************************************** */
8
9
10 /****^ HISTORY COMMENTS:
11* 1) change(86-05-13,GJohnson), approve(86-05-13,MCR7387),
12* audit(86-05-13,Martinson), install(86-05-14,MR12.0-1056):
13* Correct error message documentation.
14* END HISTORY COMMENTS */
15
16
17 /* format: style2 */
18
19 announce_chwm:
20 proc ();
21
22 /* format: off */
23 /* * This procedure announces the value of the Collection One High Water Mark,
24* * once before, and once after segments are made paged.
25* *
26* * Extracted from init_sst and make_segs_paged, 12/21/80 W. Olin Sibert
27* * Modified September 1983 by Keith Loepere for high marks on unpaged page tables.
28* */
29
30 /* format: on */
31
32 dcl parm_ptr pointer;
33
34 dcl ptp pointer; /* Can't be declared in silly include files */
35 dcl wired_bit bit (1) aligned;
36 dcl suptop fixed bin;
37 dcl initbase fixed bin;
38 dcl n_pages fixed bin;
39 dcl wired fixed bin;
40 dcl total fixed bin;
41
42 dcl int_unpaged_page_tables$
43 external static;
44 dcl slt$ fixed bin external static;
45 dcl sst_seg$ external static;
46 dcl sstp pointer;
47 dcl cmp pointer;
48 dcl sst$cmp ptr ext static;
49 dcl sst$usedp bit (18) external static;
50 dcl sys_info$system_type fixed bin external static;
51 dcl unpaged_page_tables$ external static;
52
53 dcl config_$find_parm entry (char (4) aligned, pointer);
54 dcl syserr entry options (variable);
55 dcl sys_boot_info$contig_mem_size
56 fixed bin (26) ext static;
57
58 dcl (addr, divide, pointer, rel, null, segno)
59 builtin;
60
61 /* */
62
63 announce_chwm$before:
64 entry ();
65
66 /* Announce the number of pages left over after collection one loaded and initialized */
67
68 call config_$find_parm ("chwm", parm_ptr); /* Should we bother? */
69 if parm_ptr = null ()
70 then return;
71
72 sltp = addr (slt$);
73
74 suptop = divide (slt.free_core_start + 1023, 1024, 17, 0);
75 initbase = divide ((slt.free_core_start + slt.free_core_size - 1), 1024, 17, 0);
76
77 total = divide (sys_boot_info$contig_mem_size, 1024, 17, 0);
78 n_pages = total - (initbase - suptop);
79
80 call syserr (ANNOUNCE, "announce_chwm: ^d. pages used of ^d. in wired environment.", n_pages, total);
81
82 upt_ptr = addr (int_unpaged_page_tables$);
83 call syserr (ANNOUNCE, "announce_chwm: ^d. words used of ^d. in int_unpaged_page_tables.", upt.current_length, upt.max_length);
84 return;
85
86 /* */
87
88 announce_chwm$after:
89 entry ();
90
91 /* Announce the number of pages left after segs are made paged */
92
93 call config_$find_parm ("chwm", parm_ptr); /* Should we bother? */
94 if parm_ptr = null ()
95 then return;
96
97 sltp = addr (slt$);
98 sstp = addr (sst_seg$);
99 cmp = sst$cmp;
100
101 total = 0;
102 wired = 0;
103
104 cmep = pointer (cmp, sst$usedp); /* scan the used list */
105 ptp = pointer (sstp, cme.ptwp);
106
107 if sys_info$system_type = ADP_SYSTEM
108 then wired_bit = adp_ptw.wired;
109 else wired_bit = l68_ptw.wired;
110
111 if ptp = sstp
112 then total = total + 1;
113 else if wired_bit
114 then wired = wired + 1;
115 else total = total + 1;
116
117 do cmep = pointer (cmep, cme.fp) repeat pointer (cmep, cme.fp) while (rel (cmep) ^= sst$usedp);
118
119 ptp = pointer (sstp, cme.ptwp); /* get pointer to page table word */
120 if sys_info$system_type = ADP_SYSTEM
121 then wired_bit = adp_ptw.wired;
122 else wired_bit = l68_ptw.wired;
123
124 if ptp = sstp
125 then /* free */
126 total = total + 1;
127 else if wired_bit
128 then wired = wired + 1;
129 else total = total + 1;
130 end;
131
132 call syserr (ANNOUNCE, "announce_chwm: ^d. pages wired, ^d. pages usable.", wired, total);
133
134 upt_ptr = addr (unpaged_page_tables$);
135 call syserr (ANNOUNCE, "announce_chwm: ^d. words used of ^d. in unpaged_page_tables.", upt.current_length, upt.max_length);
136 return; /* End of announce_chwm$after */
137
138
1 1 /* BEGIN INCLUDE FILE slt.incl.pl1 --- Last modified 2/76 SHW */
1 2
1 3 /* Declarations for Segment Loading Table header and array.
1 4*
1 5* Used by Initialization and MST Checker subroutines */
1 6
1 7 dcl sltp ptr, /* pointer to base of SLT segment */
1 8 names_ptr ptr, /* pointer to base of SLT names segment */
1 9 namep ptr, /* pointer to segment name list block */
1 10 pathp ptr, /* pointer to segment's directory path name */
1 11 aclp ptr; /* pointer to acl structure */
1 12
1 13 declare 1 slt based (sltp) aligned, /* declaration of Segment Loading Table (SLT) */
1 14 2 name_seg_ptr ptr, /* words 0-1, pointer (ITS pair) to name segment */
1 15 2 free_core_start fixed bin (24), /* word 2, start of free core after perm-wired */
1 16 2 first_sup_seg fixed bin (18), /* word 3, first supervisor segment number */
1 17 2 last_sup_seg fixed bin (18), /* word 4, last supervisor segment number */
1 18 2 first_init_seg fixed bin (18), /* word 5, first initializer segment number */
1 19 2 last_init_seg fixed bin (18), /* word 6, last initializer segment number */
1 20 2 free_core_size fixed bin (24), /* size (in words) of free core after perm-wired */
1 21 2 seg (0:8191) aligned, /* segment entries (4 words each) */
1 22 3 slte (4) fixed bin (35); /* Space for SLT entries */
1 23
1 24 /* auxiliary segment of SLT for storing of segment names and directory path names */
1 25
1 26 declare 1 name_seg based (names_ptr) aligned, /* name segment header */
1 27 2 pad bit (18) unal,
1 28 2 next_loc bit (18) unal, /* Next available free location in name seg */
1 29 2 ht (0:127) bit (18) aligned; /* Names hash table */
1 30
1 31 declare 1 segnam based (namep) aligned, /* declaration for segment name block */
1 32 2 count fixed bin (17), /* number of segment names in this block */
1 33 2 names (50 refer (segnam.count)), /* segment name array */
1 34 3 hp bit (18) unal, /* hash thread pointer */
1 35 3 ref bit (1) unal, /* "1"b if name referenced */
1 36 3 pad bit (5) unal,
1 37 3 segno bit (12) unal, /* segment number associated with this name */
1 38 3 name char (32) unal; /* space for name (max 32 characters) */
1 39
1 40 declare 1 path based (pathp) aligned, /* declaration for directory path name */
1 41 2 size fixed bin (17), /* length of pathname */
1 42 2 name char (168 refer (path.size)) unal, /* directory path name */
1 43 2 acls fixed bin; /* ACL list starts here */
1 44
1 45 declare 1 acls based (aclp) aligned, /* declaration for acl list */
1 46 2 count fixed bin, /* number of entries in acl list */
1 47 2 acl (50 refer (acls.count)), /* array of acl entries */
1 48 3 userid char (32), /* user specification */
1 49 3 mode bit (36) aligned, /* mode for the specified user */
1 50 3 pad bit (36) aligned,
1 51 3 code fixed bin;
1 52
1 53
1 54 /* END INCLUDE FILE slt.incl.pl1 */
139
140
2 1 /* BEGIN INCLUDE FILE cmp.incl.pl1 --- October 1982 */
2 2 /* Note: This include file has an ALM counterpart NOT made with cif (for historical reasons). Keep it up to date */
2 3
2 4 dcl cmep ptr; /* pointer to core map entry */
2 5
2 6 dcl 1 cme based (cmep) aligned, /* core map entry */
2 7 2 fp bit (18) unaligned, /* forward pointer to next entry */
2 8 2 bp bit (18) unaligned, /* backward pointer to previous entry */
2 9
2 10 2 devadd bit (22) unaligned, /* device address of page in the core block */
2 11 2 pad5 bit (1) unaligned,
2 12 2 synch_held bit (1) unaligned, /* Page of synchronized seg held in memory */
2 13 2 io bit (1) unaligned, /* input/output indicator 1=output, 0=input */
2 14 2 pad2 bit (1) unaligned,
2 15 2 er bit (1) unaligned, /* indicates error in previous IO activity */
2 16 2 removing bit (1) unaligned, /* core is being removed by reconfiguration */
2 17 2 abs_w bit (1) unaligned, /* absolute address must not be changed for page */
2 18 2 abs_usable bit (1) unaligned, /* page may be assigned with fixed absolute address */
2 19 2 notify_requested bit (1) unaligned, /* notify requested on I/O completion */
2 20 2 pad3 bit (1) unaligned,
2 21 2 phm_hedge bit (1) unaligned, /* on => pc$flush_core ought write. */
2 22 2 contr bit (3) unaligned, /* controller in which core block is located */
2 23
2 24 2 ptwp bit (18) unaligned, /* pointer to page table word for the page */
2 25 2 astep bit (18) unaligned, /* relative AST entry pointer of page */
2 26 2 pin_counter fixed bin (17) unaligned, /* number of times to skip eviction */
2 27 2 synch_page_entryp bit (18) unaligned; /* relp to synch page entry */
2 28
2 29
2 30 dcl 1 cma (0: 1) based aligned like cme; /* Core map array */
2 31
2 32 dcl 1 mcme based (cmep) aligned, /* core map entry for extracting DID */
2 33 2 pad bit (36) unaligned,
2 34 2 record_no bit (18) unaligned, /* record number of device */
2 35 2 add_type bit (4) unaligned, /* see add_type.incl.pl1 */
2 36 2 flags bit (14) unal,
2 37 2 pad1 bit (18) unal;
2 38
2 39
2 40 /* END INCLUDE FILE cmp.incl.pl1 */
141
142
3 1 /* BEGIN INCLUDE FILE ... ptw.l68.incl.pl1 ... 02/26/81, for ADP conversion */
3 2 /* Note: This include file has an ALM counterpart made with cif. Keep it up to date */
3 3
3 4 dcl 1 l68_core_ptw aligned based (ptp), /* In-core page descriptor */
3 5 2 frame fixed bin (14) unsigned unaligned, /* Core frame number */
3 6 2 pad1 bit (4) unaligned,
3 7 2 flags unaligned like l68_ptw_flags;
3 8
3 9 dcl 1 l68_ptw aligned based (ptp), /* General declaration for out-of-core PTW */
3 10 2 add bit (18) unaligned,
3 11 2 flags like l68_ptw_flags unaligned;
3 12
3 13 dcl 1 l68_special_ptw aligned based (ptp) like l68_ptw; /* Page is somewhere peculiar -- add_type = "01"b */
3 14 dcl 1 l68_real_disk_ptw aligned based (ptp) like l68_ptw; /* PTW for page actually on disk -- add_type = "10"b */
3 15 dcl 1 l68_null_disk_ptw aligned based (ptp) like l68_ptw; /* PTW for page not yet on disk -- add_type = "11"b */
3 16
3 17 dcl 1 l68_ptw_flags unaligned based, /* Various software/hardware flags */
3 18 (2 add_type bit (4), /* 0000=null, 1000=core, 0100=disk, 0010=pd, 0001=swap */
3 19 2 first bit (1), /* the page has not yet been written out */
3 20 2 er bit (1), /* error on last page I/O (also used by post-purge as temp) */
3 21
3 22 2 pad1 bit (1),
3 23 2 unusable1 bit (1), /* can't be used because hardware resets this bit */
3 24 2 phu bit (1), /* page has been used bit */
3 25
3 26 2 phm1 bit (1), /* Cumulative OR of hardware phm's */
3 27 2 nypd bit (1), /* must be moved to paging device */
3 28 2 phm bit (1), /* page has been modified bit */
3 29
3 30 2 phu1 bit (1), /* page has been used in the quantum */
3 31 2 wired bit (1), /* page is to remain in core */
3 32 2 os bit (1), /* page is out-of-service (I/O in progress) */
3 33 2 valid bit (1), /* directed fault if this is 0 (page not in core) */
3 34 2 df_no bit (2)) unaligned; /* directed fault number for page faults */
3 35
3 36 /* END INCLUDE FILE ... ptw.l68.incl.pl1 */
143
144
4 1 /* BEGIN INCLUDE FILE ... ptw.adp.incl.pl1 ... 02/11/81, for ADP conversion */
4 2 /* Note: This include file has an ALM counterpart made with cif. Keep it up to date */
4 3
4 4 dcl 1 adp_core_ptw aligned based (ptp), /* PTW for in-core page */
4 5 2 pad1 bit (2) unaligned,
4 6 2 frame fixed bin (16) unsigned unaligned, /* Core frame number */
4 7 2 flags like adp_ptw_flags unaligned; /* add_type = "00"b; */
4 8
4 9 dcl 1 adp_ptw aligned based (ptp), /* General declaration for out-of-core PTW */
4 10 2 add bit (18) unaligned,
4 11 2 flags like adp_ptw_flags unaligned;
4 12
4 13 dcl 1 adp_special_ptw aligned based (ptp) like adp_ptw; /* Page is somewhere peculiar -- add_type = "01"b */
4 14 dcl 1 adp_real_disk_ptw aligned based (ptp) like adp_ptw; /* PTW for page actually on disk -- add_type = "10"b */
4 15 dcl 1 adp_null_disk_ptw aligned based (ptp) like adp_ptw; /* PTW for page not yet on disk -- add_type = "11"b */
4 16
4 17 dcl 1 adp_ptw_flags unaligned based, /* Common lower halfword for ADP PTW */
4 18 (2 add_type bit (4), /* See specific declarations */
4 19 2 er bit (1), /* error on last page I/O (also used by post-purge as temp) */
4 20 2 wired bit (1), /* page is to remain in core */
4 21 2 os bit (1), /* page is out-of-service (I/O in progress) */
4 22 2 phu1 bit (1), /* page has been used in the quantum */
4 23 2 phm1 bit (1), /* Cumulative OR of hardware phm's */
4 24
4 25 2 unusable1 bit (3), /* Shares hardware byte */
4 26 2 valid bit (1), /* "1"b if page is in core */
4 27 2 write bit (1), /* "1"b if page may be written into */
4 28 2 unusable2 bit (1), /* Shares hardware byte */
4 29 2 iox bit (1), /* "1"b if page is to be present to IOX */
4 30 2 phm bit (1), /* page has been modified bit */
4 31 2 phu bit (1)) unaligned; /* page has been used bit */
4 32
4 33 /* END INCLUDE FILE ... ptw.adp.incl.pl1 */
145
146
5 1 /* BEGIN INCLUDE FILE syserr_constants.incl.pl1 ... 11/11/80 W. Olin Sibert */
5 2 /* 85-02-12, EJ Sharpe - Added sorting class constants, removed AIM_MESSAGE, added new action code names. */
5 3 /* 85-04-24, G. Palter - Renamed SYSERR_UNUSED_10 to SYSERR_RING1_ERROR to reflect its actual use. */
5 4
5 5 /* This include file has an ALM version. Keep 'em in sync! */
5 6
5 7 dcl (
5 8
5 9 /* The following constants define the message action codes. This indicates
5 10*how a message is to be handled. */
5 11
5 12 SYSERR_CRASH_SYSTEM init (1),
5 13 CRASH init (1), /* Crash the system, and bleat plaintively. */
5 14
5 15 SYSERR_TERMINATE_PROCESS init (2),
5 16 TERMINATE_PROCESS init (2), /* Terminate the process, print the message, and beep. */
5 17
5 18 SYSERR_PRINT_WITH_ALARM init (3),
5 19 BEEP init (3), /* Beep and print the message on the console. */
5 20
5 21 SYSERR_PRINT_ON_CONSOLE init (0),
5 22 ANNOUNCE init (0), /* Just print the message on the console. */
5 23
5 24 SYSERR_LOG_OR_PRINT init (4),
5 25 LOG init (4), /* Log the message, or print it if it can't be logged */
5 26
5 27 SYSERR_LOG_OR_DISCARD init (5),
5 28 JUST_LOG init (5), /* Just try to log the message, and discard it if it can't be */
5 29
5 30
5 31 /* The following constants are added to the normal severities to indicate
5 32*different sorting classes of messages. */
5 33
5 34 SYSERR_SYSTEM_ERROR init (00), /* indicates a standard level system error */
5 35 SYSERR_RING1_ERROR init (10), /* indicates an error detected in ring 1 (mseg_, RCP) */
5 36 SYSERR_COVERT_CHANNEL init (20), /* indicates covert channel audit trail message */
5 37 SYSERR_UNSUCCESSFUL_ACCESS init (30), /* indicates access denial audit trail message */
5 38 SYSERR_SUCCESSFUL_ACCESS init (40) /* indicates access grant audit trail message */
5 39 ) fixed bin internal static options (constant);
5 40
5 41 /* END INCLUDE FILE syserr_constants.incl.pl1 */
147
148
6 1 /* BEGIN INCLUDE FILE ... system_types.incl.pl1 ... 03/23/81 ... W. Olin Sibert */
6 2
6 3 dcl L68_SYSTEM fixed bin (17) internal static options (constant) init (1);
6 4 dcl ADP_SYSTEM fixed bin (17) internal static options (constant) init (2);
6 5
6 6 dcl SYSTEM_TYPE_NAME (2) char (8) internal static options (constant) init
6 7 ("Level68", "ADP");
6 8
6 9 /* END INCLUDE FILE ... system_types.incl.pl1 */
149
150
7 1 /* BEGIN include file unpaged_page_tables.incl.pl1 */
7 2
7 3 /* This include file describes the segments unpaged_page_tables and
7 4*int_unpaged_page_tables. These segments contain the page tables for
7 5*segments that are paged and wired, those segments previously called
7 6*unpaged.
7 7*
7 8*Written September 15, 1983 by Keith Loepere. */
7 9
7 10 /* format: style4,indattr,ifthenstmt,ifthen,idind33,^indcomtxt */
7 11
7 12 dcl upt_ptr ptr;
7 13 dcl 1 upt aligned based (upt_ptr),
7 14 2 sst_absloc fixed bin (26), /* for dump analyzers */
7 15 2 sst_last_loc fixed bin (26),
7 16 2 upt_absloc fixed bin (26),
7 17 2 upt_last_loc fixed bin (26),
7 18 2 iupt_absloc fixed bin (26),
7 19 2 iupt_last_loc fixed bin (26),
7 20
7 21 2 current_length fixed bin, /* number of words currently used */
7 22 2 max_length fixed bin, /* max number of words in memory allocated */
7 23 2 first_entry like upt_entry;
7 24
7 25 dcl upt_entry_ptr ptr;
7 26 dcl 1 upt_entry aligned based (upt_entry_ptr),
7 27 2 size fixed bin, /* number of page table words allocated */
7 28 2 segno fixed bin, /* of hardcore segment */
7 29 2 ptws (0 refer (upt_entry.size)) bit (36) aligned;
7 30
7 31 /* END include file unpaged_page_tables.incl.pl1 */
151
152
153 /* */
154
155 /* BEGIN MESSAGE DOCUMENTATION
156*
157* Message:
158* announce_chwm: WWW. pages used of XXX. in wired environment.
159*
160* S: $info
161*
162* T: $init
163*
164* M: This message is produced when the CHWM parameter is specified on
165* the PARM CONFIG card. WWW is the number of pages of memory which
166* remain unused (out of a maximum of XXX) after all the segments in
167* collection one have been loaded, and all the segments constructed by
168* collection one have been created.
169*
170* A: $ignore
171*
172*
173* Message:
174* announce_chwm: WWW. words used of XXX. in int_unpaged_page_tables.
175*
176* S: $info
177*
178* T: $init
179*
180* M: This message is produced when the CHWM parameter is specified on
181* the PARM CONFIG card. WWW is the number of words of the XXX word
182* long segment int_unpaged_page_tables used to hold page tables for
183* temporary collection 1 segments.
184*
185* A: $ignore
186*
187*
188* Message:
189* announce_chwm: WWW pages wired, UUU pages usable.
190*
191* S: $info
192*
193* T: $init
194*
195* M: This message is produced when the CHWM paramter is specified on
196* the PARM CONFIG card. WWW is the number of wired pages in collection
197* one. UUU is the number of available main memory frames, including those
198* occupied by wired pages, but not those occupied by unpaged segments.
199*
200* A: $ignore
201*
202*
203* Message:
204* announce_chwm: WWW. words used of XXX. in unpaged_page_tables.
205*
206* S: $info
207*
208* T: $init
209*
210* M: This message is produced when the CHWM parameter is specified on
211* the PARM CONFIG card. WWW is the number of words of the XXX word long
212* segment unpaged_page_tables used to hold page tables for permanent
213* "unpaged" segments.
214*
215* A: $ignore
216*
217* END MESSAGE DOCUMENTATION */
218
219 end announce_chwm;
SOURCE FILES USED IN THIS COMPILATION.
LINE NUMBER DATE MODIFIED NAME PATHNAME
0 11/11/89 0815.1 announce_chwm.pl1 >spec>install>1112>announce_chwm.pl1
139 1 05/24/82 1005.0 slt.incl.pl1 >ldd>include>slt.incl.pl1
141 2 11/23/82 0953.7 cmp.incl.pl1 >ldd>include>cmp.incl.pl1
143 3 03/27/82 0430.2 ptw.l68.incl.pl1 >ldd>include>ptw.l68.incl.pl1
145 4 03/27/82 0430.2 ptw.adp.incl.pl1 >ldd>include>ptw.adp.incl.pl1
147 5 05/17/85 0615.7 syserr_constants.incl.pl1 >ldd>include>syserr_constants.incl.pl1
149 6 06/19/81 2115.0 system_types.incl.pl1 >ldd>include>system_types.incl.pl1
151 7 07/11/84 0937.3 unpaged_page_tables.incl.pl1 >ldd>include>unpaged_page_tables.incl.pl1
NAMES DECLARED IN THIS COMPILATION.
IDENTIFIER OFFSET LOC STORAGE CLASS DATA TYPE ATTRIBUTES AND REFERENCES
(* indicates a set context)
NAMES DECLARED BY DECLARE STATEMENT.
ADP_SYSTEM constant fixed bin(17,0) initial dcl 6-4 ref 107 120
ANNOUNCE 000005 constant fixed bin(17,0) initial dcl 5-7 set ref 80* 83* 132* 135*
addr builtin function dcl 58 ref 72 82 97 98 134
adp_ptw based structure level 1 dcl 4-9
adp_ptw_flags based structure level 1 packed packed unaligned dcl 4-17
cme based structure level 1 dcl 2-6
cmep 000120 automatic pointer dcl 2-4 set ref 104* 105 117* 117 117 117* 119* 130
130
cmp 000114 automatic pointer dcl 47 set ref 99* 104
config_$find_parm 000026 constant entry external dcl 53 ref 68 93
current_length 6 based fixed bin(17,0) level 2 dcl 7-13 set ref 83* 135*
divide builtin function dcl 58 ref 74 75 77
flags 0(18) based structure level 2 in structure "adp_ptw" packed packed
unaligned dcl 4-9 in procedure "announce_chwm"
flags 0(18) based structure level 2 in structure "l68_ptw" packed packed
unaligned dcl 3-9 in procedure "announce_chwm"
fp based bit(18) level 2 packed packed unaligned dcl 2-6 ref 117 130
free_core_size 7 based fixed bin(24,0) level 2 dcl 1-13 ref 75
free_core_start 2 based fixed bin(24,0) level 2 dcl 1-13 ref 74 75
initbase 000106 automatic fixed bin(17,0) dcl 37 set ref 75* 78
int_unpaged_page_tables$ 000010 external static fixed bin(17,0) dcl 42 set ref 82
l68_ptw based structure level 1 dcl 3-9
l68_ptw_flags based structure level 1 packed packed unaligned dcl 3-17
max_length 7 based fixed bin(17,0) level 2 dcl 7-13 set ref 83* 135*
n_pages 000107 automatic fixed bin(17,0) dcl 38 set ref 78* 80*
null builtin function dcl 58 ref 69 94
parm_ptr 000100 automatic pointer dcl 32 set ref 68* 69 93* 94
pointer builtin function dcl 58 ref 104 105 117 119 130
ptp 000102 automatic pointer dcl 34 set ref 105* 107 109 111 119* 120 122 124
ptwp 2 based bit(18) level 2 packed packed unaligned dcl 2-6 ref 105 119
rel builtin function dcl 58 ref 117
slt based structure level 1 dcl 1-13
slt$ 000012 external static fixed bin(17,0) dcl 44 set ref 72 97
sltp 000116 automatic pointer dcl 1-7 set ref 72* 74 75 75 97*
sst$cmp 000016 external static pointer dcl 48 ref 99
sst$usedp 000020 external static bit(18) packed unaligned dcl 49 ref 104 117
sst_seg$ 000014 external static fixed bin(17,0) dcl 45 set ref 98
sstp 000112 automatic pointer dcl 46 set ref 98* 105 111 119 124
suptop 000105 automatic fixed bin(17,0) dcl 36 set ref 74* 78
sys_boot_info$contig_mem_size 000032 external static fixed bin(26,0) dcl 55 ref 77
sys_info$system_type 000022 external static fixed bin(17,0) dcl 50 ref 107 120
syserr 000030 constant entry external dcl 54 ref 80 83 132 135
total 000111 automatic fixed bin(17,0) dcl 40 set ref 77* 78 80* 101* 111* 111 115* 115
124* 124 129* 129 132*
unpaged_page_tables$ 000024 external static fixed bin(17,0) dcl 51 set ref 134
upt based structure level 1 dcl 7-13
upt_entry based structure level 1 dcl 7-26
upt_ptr 000122 automatic pointer dcl 7-12 set ref 82* 83 83 134* 135 135
wired 0(31) based bit(1) level 3 in structure "l68_ptw" packed packed
unaligned dcl 3-9 in procedure "announce_chwm" ref
109 122
wired 0(23) based bit(1) level 3 in structure "adp_ptw" packed packed
unaligned dcl 4-9 in procedure "announce_chwm" ref
107 120
wired 000110 automatic fixed bin(17,0) dcl 39 in procedure "announce_chwm" set ref 102*
113* 113 127* 127 132*
wired_bit 000104 automatic bit(1) dcl 35 set ref 107* 109* 113 120* 122* 127
NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED.
BEEP internal static fixed bin(17,0) initial dcl 5-7
CRASH internal static fixed bin(17,0) initial dcl 5-7
JUST_LOG internal static fixed bin(17,0) initial dcl 5-7
L68_SYSTEM internal static fixed bin(17,0) initial dcl 6-3
LOG internal static fixed bin(17,0) initial dcl 5-7
SYSERR_COVERT_CHANNEL internal static fixed bin(17,0) initial dcl 5-7
SYSERR_CRASH_SYSTEM internal static fixed bin(17,0) initial dcl 5-7
SYSERR_LOG_OR_DISCARD internal static fixed bin(17,0) initial dcl 5-7
SYSERR_LOG_OR_PRINT internal static fixed bin(17,0) initial dcl 5-7
SYSERR_PRINT_ON_CONSOLE internal static fixed bin(17,0) initial dcl 5-7
SYSERR_PRINT_WITH_ALARM internal static fixed bin(17,0) initial dcl 5-7
SYSERR_RING1_ERROR internal static fixed bin(17,0) initial dcl 5-7
SYSERR_SUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 5-7
SYSERR_SYSTEM_ERROR internal static fixed bin(17,0) initial dcl 5-7
SYSERR_TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 5-7
SYSERR_UNSUCCESSFUL_ACCESS internal static fixed bin(17,0) initial dcl 5-7
SYSTEM_TYPE_NAME internal static char(8) initial array packed unaligned dcl 6-6
TERMINATE_PROCESS internal static fixed bin(17,0) initial dcl 5-7
aclp automatic pointer dcl 1-7
acls based structure level 1 dcl 1-45
adp_core_ptw based structure level 1 dcl 4-4
adp_null_disk_ptw based structure level 1 dcl 4-15
adp_real_disk_ptw based structure level 1 dcl 4-14
adp_special_ptw based structure level 1 dcl 4-13
cma based structure array level 1 dcl 2-30
l68_core_ptw based structure level 1 dcl 3-4
l68_null_disk_ptw based structure level 1 dcl 3-15
l68_real_disk_ptw based structure level 1 dcl 3-14
l68_special_ptw based structure level 1 dcl 3-13
mcme based structure level 1 dcl 2-32
name_seg based structure level 1 dcl 1-26
namep automatic pointer dcl 1-7
names_ptr automatic pointer dcl 1-7
path based structure level 1 dcl 1-40
pathp automatic pointer dcl 1-7
segnam based structure level 1 dcl 1-31
segno builtin function dcl 58
upt_entry_ptr automatic pointer dcl 7-25
NAMES DECLARED BY EXPLICIT CONTEXT.
announce_chwm 000106 constant entry external dcl 19
announce_chwm$after 000244 constant entry external dcl 88
announce_chwm$before 000115 constant entry external dcl 63
THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION.
STORAGE REQUIREMENTS FOR THIS PROGRAM.
Object Text Link Symbol Defs Static
Start 0 0 660 714 472 670
Length 1232 472 34 302 165 0
BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME
announce_chwm 144 external procedure is an external procedure.
STORAGE FOR AUTOMATIC VARIABLES.
STACK FRAME LOC IDENTIFIER BLOCK NAME
announce_chwm 000100 parm_ptr announce_chwm
000102 ptp announce_chwm
000104 wired_bit announce_chwm
000105 suptop announce_chwm
000106 initbase announce_chwm
000107 n_pages announce_chwm
000110 wired announce_chwm
000111 total announce_chwm
000112 sstp announce_chwm
000114 cmp announce_chwm
000116 sltp announce_chwm
000120 cmep announce_chwm
000122 upt_ptr announce_chwm
THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM.
call_ext_out_desc call_ext_out return_mac ext_entry
THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM.
config_$find_parm syserr
THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM.
int_unpaged_page_tables$ slt$ sst$cmp sst$usedp
sst_seg$ sys_boot_info$contig_mem_size sys_info$system_type unpaged_page_tables$
LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC
19 000105 63 000113 68 000122 69 000134 72 000140 74 000143 75 000147
77 000154 78 000157 80 000165 82 000212 83 000215 84 000242 88 000243
93 000251 94 000264 97 000270 98 000273 99 000275 101 000300 102 000301
104 000302 105 000306 107 000313 109 000323 111 000327 113 000335 115 000341
117 000342 119 000352 120 000360 122 000370 124 000374 127 000402 129 000406
130 000407 132 000414 134 000441 135 000444 136 000471
-----------------------------------------------------------
Historical Background
This edition of the Multics software materials and documentation is provided and donated
to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc.
as a contribution to computer science knowledge.
This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology,
Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL
and BULL HN Information Systems Inc. to the development of this operating system.
Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970),
renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership
of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture
for managing computer hardware properly and for executing programs. Many subsequent operating systems
incorporated Multics principles.
Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc.,
as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. .
-----------------------------------------------------------
Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without
fee is hereby granted,provided that the below copyright notice and historical background appear in all copies
and that both the copyright notice and historical background and this permission notice appear in supporting
documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining
to distribution of the programs without specific prior written permission.
Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc.
Copyright 2006 by BULL HN Information Systems Inc.
Copyright 2006 by Bull SAS
All Rights Reserved