1 :Info: slt_entry: slte: 2023-03-31 slt_entry, slte
2
3 Syntax:
4 slte SEGNO | SEGNAME SEGNO | SEGNAME -control_args
5
6
7 Syntax as an active request:
8 slte SEGNO | SEGNAME SEGNO | SEGNAME -control_args
9
10
11 Function: Displays one or more Segment Loading Table entries SLTEs.
12 As an active request, returns SEGNO of entries that match attributes
13 given with the -attributes control argument.
14
15
16 For a discussion of hardcore supervisor segment types, please type the
17 following request: help hardcore_segs.gi
18
19
20 Arguments:
21 If no SEGNO or SEGNAME is given, all SLT entries are displayed.
22 If one SEGNO and one SEGNAME are given, the SEGNAME is mapped to a
23 segment number which is coupled with the given SEGNO to define a
24 range of SLTEs to display.
25 SEGNO
26 segment number octal whose SLTE is to be displayed. If two
27 numbers are given, they start/end the range of segment numbers
28 whose SLTEs are displayed.
29 SEGNAME
30 name of a segment whose SLTE is to be displayed. If two names
31 are given, their respective segment numbers identify start/end of a
32 range of segments whose SLTEs are displayed.
33
34
35 Control arguments:
36 -header, -he
37 displays a header before the first SLTE item describing segment
38 range for supervisor segments and initializing segments.
39 default if no arguments or control_args are given
40 -no_header, -nhe
41 omits the header. default if any arguments or control_args are
42 given.
43
44 -all_names
45 display all names associated with selected SLTE items. default
46 -primary -pri
47 display only the first name associated with each SLTE item.
48
49
50 -attribute ATTRIBUTEs
51 -attr ATTRIBUTEs
52 displays SLTE items having one or more of the given ATTRIBUTE
53 keywords. All arguments following -attributes are treated as
54 ATTRIBUTE names. See the "List of attributes" section for
55 acceptable attribute names.
56
57
58 List of attributes:
59 operands of the -attribute control_arg may be one or more of the
60 ATTRIBUTE keywords below. Use ^ATTRIBUTE to select items that
61 do not have the given ATTRIBUTE keyword. Operands of -attributes
62 are ANDed to select only SLTEs having ALL of the given attributes.
63 privileged priv
64 displays items granted access to execute privileged instructions.
65 encacheable cache
66 displays items whose data may be read via the hardware cache.
67 breakpointable break
68 displays items ending with a probe breakpoint_page. The BCE probe
69 command can set breakpoints in such segments.
70 wired
71 displays items which are wired into real memory frames.
72
73
74 ^paged
75 displays items which are unpaged: segments defined without using an
76 ASTE/PageTable combination to define segment contents. ^paged is
77 displayed for such items. Despite this attribute name some of
78 these segments do have a page table in the unpaged_page_tables
79 segment. Since most items do have ASTE entries the paged
80 attribute is displayed only if the user is selecting items that are
81 paged.
82 firmware
83 displays items designated to contain firmware data files.
84 gate
85 displays items with ring brackets designating them as gates leading
86 to inner-ring services.
87
88
89 abs_seg abs
90 display items which have no content of their own but are used by
91 supervisor code to overlay contents of other segments.
92 init_seg init
93 display items used only during system initialization. Such items
94 are not displayable after Multics is fully bootloaded.
95 temp_seg temp
96 display items used as temporary segments.
97 per_process proc
98 display items which appear in every process but have contents that
99 differs for each process.
100 branch
101 display items instantiated as segments in the >system_library_1
102 >sl1 directory.
103
104
105 Notes on the output:
106 Line 1 primary name by which the segment is known;
107 segment number assigned by the SLTE;
108 ring brackets assigned by the SLTE;
109 access mode bits read execute write for Initializer;
110 other attributes:
111 privileged encacheable gate wired ^paged
112
113 Line 2 next name on segment unless -primary given;
114 initialization type attributes:
115 init_seg temp_seg per_process firmware breakpointable
116 line present only if any of the type attributes are set
117
118
119 Line 3 next name on segment unless -primary given;
120 segment length:
121 wired words or count of pages;
122 max length if any value > 1 is specified in the SLTE; or
123 abs_seg: a utility segment used to temporarily overlay
124 contiguous memory pages having no fixed length.
125
126 Line 4 next name on segment unless -primary given;
127 pathname of segment
128 line present only if seg has a branch in file system
129
130 Line N other names on segment if any unless -primary was given.
131
132
133 Notes on the changing contents of the slte database:
134 During bootload operations data is loaded from collections of the
135 Multics System Tape MST and the in-memory database of the
136 Segment Loading Table SLT grows and shrinks as new segments are
137 added and/or initialization-related segments are no longer needed and
138 are discarded. For example:
139
140 - While collection 1 is running the int_unpaged_page_tables
141 segment contains page tables for initialization-related segments
142 at/above segno 400 in the Initialization.SysDaemon.z proc 0
143 address space.
144
145
146 - Once collection 1 running ends these initialization segments
147 have been deleted along with int_unpaged_page_tables and the
148 slte entries above segno 225. The int_unpaged_page_tables
149 segment no longer exists.
150
151
152 The slte request provides only information known in the SLTE database
153 when the selected dump was taken.
154
155 When the system is fully booted and running after the entire Multics
156 System Tape has been loaded no initialization-related segments remain
157 in Multics memory or in the SLTE database.
158
159
160 Examples:
161 The slte request may give starting and ending names for a range of
162 segments to be displayed.
163
164 azm: slte dseg ws_linkage
165
166 dseg 0 0 0 0 read write wired
167 per_process
168 wired length: 1 pages; max length: 8 pages;
169
170 bos_toehold 1 0 0 0 read write wired ^paged
171 wired length: 1 pages;
172
173
174 config_deck 2 0 5 5 read write
175 abs_seg -- no storage allocated.
176 path: >system_library_1>config_deck
177
178 dn355_mailbox 3 0 0 0 read write wired ^paged
179 wired length: 1536 words;
180
181 fault_vector 4 0 0 0 read write wired ^paged
182 wired length: 384 words;
183
184 flagbox 5 0 0 0 read write wired ^paged
185 wired length: 1 pages;
186
187
188 name_table 6 0 5 5 read write
189 total length: 6 pages; max length: 12 pages;
190 path: >system_library_1>name_table
191
192 slt 7 0 5 5 read write
193 total length: 2 pages;
194 path: >system_library_1>slt
195
196 toehold_data 10 0 0 0 read write wired ^paged
197 wired length: 2 pages;
198
199 iom_mailbox 11 0 0 0 read write wired ^paged
200 wired length: 1152 words;
201
202
203 unpaged_page_tables 12 0 0 0 read write wired ^paged
204 wired length: 1 pages;
205
206 toehold 13 0 0 0 read write wired ^paged
207 wired length: 2 pages;
208
209 breakpoint_page 14 0 0 0 read write wired ^paged
210 wired length: 1 pages;
211
212 lot 15 0 0 0 read write wired ^paged
213 wired length: 1 pages;
214
215
216 as_linkage 16 0 0 0 read execute write
217 active_sup_linkage breakpointable
218 total length: 3 pages; max length: 17 pages;
219
220 ws_linkage 17 0 0 0 read execute write wired ^paged
221 wired_sup_linkage breakpointable
222 wired length: 4 pages;
223
224
225 If a single segment name or octal segment number is given only that
226 SLTE is displayed.
227
228 azm: slte 113
229
230 bound_date_time_ 113 0 5 5 read execute encacheable
231 convert_date_to_binary_ breakpointable
232 time_defaults_ total length: 30 pages;
233 time_data_ path: >system_library_1>bound_date_time_
234 time_info_ date_time_ decimal_date_time_ request_id_
235 encode_clock_value_ decode_clock_value_ cv_fstime_ date_name_
236 set_system_time_zone_
237
238
239 If no arguments are given or -header is given information from the
240 SLT header is displayed followed by all entries in the Segment Loading
241 Table. This header gives first and last segment numbers assigned for
242 segments in the Multics supervisor.
243
244 In a dump taken early in the bootload process aka an "early dump"
245 segments used only while booting may be given higher segment numbers
246 and moved to higher memory locations. Such segment numbers are shown
247 in the header as Initializing Segments. Each segment in this range
248 has the "init seg" attribute.
249
250 azm: slte
251
252
253 Supervisor Segments Initializing Segments
254 First: 0 First: 400
255 Last: 115 Last: 465
256
257 dseg 0 0 0 0 read write wired
258 per_process
259 wired length: 1 pages; total length: 8 pages;
260
261 bos_toehold 1 0 0 0 read write wired ^paged
262 wired length: 1 pages;
263
264 config_deck 2 0 5 5 read write
265 abs_seg -- no storage allocated.
266 path: >system_library_1>config_deck
267 ...
268
269
270 bound_qedx_ 115 0 5 5 read execute encacheable
271 search_file_ breakpointable
272 qedx_ total length: 15 pages;
273 check_entryname_ path: >system_library_1>bound_qedx_
274 qedx qx
275
276 bound_bootload_0 400 0 0 0 read execute write privileged
277 init_seg
278 abs_seg -- no storage allocated.
279
280 physical_record_buffer 401 0 0 0 read write
281 init_seg
282 total length: 3 pages;
283
284
285 abs_seg0 402 0 0 0 read execute write privileged ^paged
286 init_seg
287 abs_seg -- no storage allocated.
288
289
290 :hcom:
291 /****^ HISTORY COMMENTS:
292 1 change2022-07-11GDixon, approve2023-01-16MCR10129,
293 audit2023-02-28Swenson, install2023-02-28MR12.8-1054:
294 A) Initial version of this info segment.
295 B) Add display of breakpointable attribute in Line 2 of output.
296 C) Add selection by -attributes control argument, with return
297 of matching SEGNOs when invoked as active request.
298 2) change2023-03-31GDixon, approve2023-03-31MCR10129a,
299 audit2023-04-29Swenson, install2023-04-29MR12.8-1055:
300 A) Clarified how multiple ATTRIBUTE names are handled by the slte
301 request.
302 B) Reference the new hardcore_segs.gi.info segment.
303 END HISTORY COMMENTS */