10 March 82: trace_mcs Function: Controls the MCS tracing facility and prints MCS trace table entries. Syntax: trace_mcs print {channel_name(s)} {-control_arguments} trace_mcs reset trace_mcs modes {new_modes} {-control_arguments} trace_mcs channel {channel_name(s)} {-control_arguments} trace_mcs table_size {new_table_size} {-control_arguments} List of keywords: print, pr, p Prints entries from the trace table. reset, rs Resets MCS tracing: sets global modes to off,^default,none, sets the trace table size to zero, and turns off both channel tracing flags for all channels. No additional arguments are allowed. modes Prints the current global tracing modes, or changes the specified modes if a new_modes argument is present. See "List of modes", below. channel, chn Prints or changes the tracing flags for a single channel or group of channels. At least one of printing or changing must be specified, and at least one channel_name must be specified. table_size, ts Changes the size of the MCS trace table. The table size may only be changed when tracing is disabled, and if a trace table exists, the size must be first changed to zero and then to the new value in order to change the size to a different nonzero value. If no new table size is supplied, the current table size is printed. Arguments: channel_name(s) Up to 20 different channel names may be specified. The channel names may be starnames, and all channels which match any of the supplied names is selected for the operation. new_modes Is the new mode string containing the global MCS tracing modes to be changed. See "List of modes", below. table_size Is a decimal integer specifying the number of entries in the MCS trace table. Each entry occupies 16 words in tty_buf. The program queries if the new trace table size will occupy more than 50 percent of the free space in tty_buf, to guard against errors. Control arguments (all functions): -erf NNN Takes the MCS trace table from the FDUMP for ERF NNN. If this argument is specified, no parameters (modes, channel flags, table size) may be changed, although they can be printed. Control arguments (print): -reset, -rs Resets the last trace entry indicator in trace_mcs. Normally, only those entries which have been added to the trace table since the last time entries were printed are printed. If -reset is specified, the next use of trace_mcs will print all the trace table entries. -all, -a Prints all trace table entries, but without resetting or changing the last entry indicator. -last NNN, -lt NNN Prints the last NNN entries in the trace table, without resetting or changing the last entry indicator. -reverse, -rev Prints the entries in reverse order. This can only be specified if -all or -last is also specified. {-channel} XXX, {-chn} XXX Selects a channel or group of channels for printing. This control argument need not be supplied before the channel name, and is provided only for compatibility. Control argumentds (channel): -print, -pr Causes the state of the channel trace flags for the selected channels to be printed. If -on or -off is also specified, both the previous and new states are printed. -on Turns on the "trace" flag for the channel(s). If this flag is different from the "default" global mode, and the force flag is not also set, the channel is traced. If the force flag is set, the channel is traced regardless of the state of the "default" mode. -off Turns off the "trace" flag for the channel(s). Only one of -on and -off may be specified. -force, -fc Sets the "force" flag for the channel. If the force flag is set, the channel is traced or not depending only on the state of its "trace" flag, and not on the "default" mode. If -force is specified, one of -on or -off must also be specified. Control arguments (modes): -brief, -bf Suppresses the printing of the new mdes after the change is applied. Normally, the modes now in effect are printed. -long, -lg Prints the new mode string after the changes are applied (Default). List of modes: on Whether tracing is enabled at all. The "on" mode may also be represented as "^off", and "^on" as "off". default Whether channels are traced by default. Normally, this is off, meaning that only channels whose trace flag is set are traced. all May only be specified as "all", not "^all". This mode is a shorthand for setting all the remaining modes (except "none"), used to turn on tracing for all MCS events. none May only be specified as "none", and not as "^none". This mode is shorthand for resetting all the remaining modes. It is usually used in combination with some other mode or modes, to trace only those specific operations. read Whether channel_manager$read operations are traced. write Whether channel_manager$write operations are traced. data Whether the data in read and write operations is to be recorded in the trace table, as well as the events themselves. control Whether channel_manager$control operations are traced. modes Whether channel_manager$check_modes, get_modes, and set_modes operations are traced. interrupt Whether channel_manager$interrupt, interrupt_later, and queued_interrupt operations are to be traced. init_mpx Whether to trace priv_channel_manager$init_multiplexer operations. start_mpx Whether to trace priv_channel_manager$start_multiplexer operations. stop_mpx Whether to trace priv_channel_manager$stop_multiplexer operations. space_man Whether to trace calls to tty_space_man requesting non-buffer type space. (Apparently not implemented) Access required: Access to phcs_ is required to print the trace table of the running system. Access to the FDUMP is required to access the trace table in an FDUMP. Access to hphcs_ is required to change any parameters for the running system. Notes: The MCS trace table is kept in a circular array, with old entries being overwritten by new ones. Each entry contains the time, the device index of the associated channel, and a short string identifying the operation. ----------------------------------------------------------- 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