MFS components
MFS has several components.
- MFS Language utility
- Message editor
- MFS pool manager
- MFS Service utility
- MFSTEST pool manager
- Message Format Service Device Characteristics Table (MFSDCT) utility (DFSUTB00)
The MFS Language utility is executed offline to generate control blocks and place them in a format control block data set named IMS.FORMAT. The control blocks describe the message formatting that is to take place during message input or output operations. They are generated according to a set of utility control statements.

The following figure shows the MFS online environment. The steps listed following the figure correspond to the numbers in the figure.

- Input message is sent to the MFS message editor from the terminal.
- MFS message editor requests pointer to MFS blocks from the MFS pool manager.
- MFS pool manager checks the message format buffer pool to see if the blocks exist in the pool. If the blocks do not exist, the MFS pool manager reads the blocks from IMS.FORMAT into the buffer pool.
- MFS pool manager sends the address of the MFS blocks to the MFS message editor.
- MFS message editor formats the input message for the application program.
- MFS message editor sends the formatted input message to the message queue to be processed.
- Application program processes the message and sends the output message to the message queue.
- Output message is sent from the message queue to the MFS message editor.
- MFS processes the output message for the terminal just as it processed the input message (steps 2 through 6).
- The formatted output message is sent to the terminal.
The following figure show the MFS test environment. The steps listed following the figure correspond the numbers in the figure.

- Input message is sent to the MFS message editor from the terminal.
- MFS message editor requests pointer to MFS blocks from the MFSTEST pool manager.
- MFSTEST pool manager checks the communication-line buffer pool to see if the blocks exist in the pool. If the blocks do not exist, the MFS pool manager reads the blocks from IMS.TFORMAT into the buffer pool.
- MFSTEST pool manager sends the address of the MFS blocks to the MFS message editor.
- MFS message editor formats the input message for the application program.
- MFS message editor sends the formatted input message to the message queue to be processed.
- Application program processes the message and sends the output message to the message queue.
- Output message is sent from the message queue to the MFS message editor.
- MFS processes the output message for the terminal just as it processed the input message (steps 2 through 6).
- The formatted output message is sent to the terminal.
The message editor and MFS pool manager operate online during the normal production mode of operation. The message editor performs the actual message formatting operations using the control block specifications.
Two other MFS components, an MFS Service utility and an MFSTEST pool manager, are available to support optional MFS operations.
The MFS Service utility provides a method for additional control of the format control block data sets. It executes offline and is able to create and maintain an index of control blocks for online use by the MFS pool manager.
The MFSTEST pool manager replaces the MFS pool manager in order
to support the optional MFSTEST mode of operation. The /TEST command
with the MFS
keyword places a logical terminal into
MFSTEST mode. For each terminal in MFSTEST mode, combining temporary
format blocks with the use of other blocks that are already in production
mode allows new applications and modifications to existing applications
to be tested without disrupting production activity.