The iSeries™ target
DDM (or TDDM) is actually a job that runs a DDM-related target server program.
It is started when the source server sends a program start request (an SDDM).
For source iSeries servers,
the program start request is started on the source server using information
contained in the IBM-supplied intersystem communications function (ICF) file
for DDM. The remote location information in the DDM file being accessed is
used to send the program start request to the appropriate target server.
The attributes of the target job are determined by the values specified
on the Add Communications Entry (ADDCMNE) command, which
is used on the target server to add a communications entry to the subsystem
description used for the job. This command identifies the device description,
the job description (including the library list for the target job), and the
default user profile to be used by the subsystem.
For an iSeries Access Family connection,
the routing entry in the QIWS subsystem for DDM (CMPVAL ('DDM')), along with
the device description the personal computer is connected to, is used to obtain
the attributes of the target job.
After it is started, the TDDM does the following things:
- For database files:
- Handles communications with the source system by using a DDM conversation
established over an APPC, over TCP/IP, or over an iSeries Access Family data
link.
- Converts the access requests from the source server into the equivalent iSeries functions and runs them on the
target server. After the target object is located, the target server-created
ODP and target database management services are used to access the object
for whatever operation is requested. The TDDM can, for example, pass requests
that open the object and then do requested I/O operations to the objects.
- Includes iSeries or System/38™ extensions to the DDM Level
2.0 architecture for requests received from the source server (if the source
is an iSeries server or a System/38), which allow most iSeries functions that operate on local
servers to also work on remote iSeries servers.
For example, it might receive a SBMRMTCMD command from
the source server (an iSeries server or
a System/38) to do a nonfile-related
operation, such as using the CL command Replace Library List (RPLLIBL) to
replace the library list within the current target job.
- Converts target iSeries responses
to the equivalent DDM responses and sends them back to the source server.
When the source server is an iSeries server or System/38, the actual iSeries or System/38 messages are sent back to the
source server.
- For folder management services objects:
Converts the DDM stream and
directory access requests into the equivalent
iSeries folder
management services functions and then runs them on the target server. The
following commands are supported:
- Change Current Directory (CHGCD)
- Change File Attributes (CHGFAT)
- Close Directory (CLSDRC)
- Close Document (CLOSE)
- Copy File (CPYFIL)
- Create Directory (CRTDRC)
- Create Stream File (CRTSTRF)
- Delete Directory (DELDRC)
- Delete File (DELFIL)
- Force Buffer (FRCBFF)
- Get Data Stream (GETSTR)
- Get Directory Entry (GETDRCEN)
- List File Attributes (LSTFAT)
- Load Stream File (LODSTRF)
- Lock Data Stream (LCKSTR)
- Open Directory (OPNDRC)
- Open Document (OPEN)
- Put Data Stream (PUTSTR)
- Query Current Directory (QRYCD)
- Query Space Available (QRYSPC)
- Rename Directory (RNMDRC)
- Rename File (RNMFIL)
- Unload Stream File (ULDSTRF)
- Unlock Data Stream (UNLSTR)
The following figure shows the basic parts on the target iSeries server that
are involved in processing the requested destination file.
The TDDM runs as a separate batch job, just as any other user APPC, TCP/IP,
or iSeries Access Family target application.
A new TDDM, using additional target server resources, is started for each
distinct source server program start request received by the target server.
There is one target job for each DDM conversation. Each TDDM can handle access
requests for multiple files in the DDM conversation.
Figure 1. iSeries server
as the DDM target system
The subsystem, user profiles, and server resources to be used by the TDDM
are defined the same as they are for other types of jobs.