![](https://csdnimg.cn/release/download_crawler_static/88069562/bg12.jpg)
Platform Trust Services Interface Specification (IF-PTS) TCG Copyri
Specification Version 1.0
Revision 1.0 FINAL Page 18 of 91
Public
3.5 Threading, Reentrancy and Inter-Process Communication
The PTS is required to be reentrant (able to receive and process a function call even when one is
already underway) and should be in a separate process address space from other TNC
components.
TNC components will communicate with the PTS through a local inter-process communications
(IPC) interface. The default IPC mechanism uses named pipes.
3.6 Types of Messages
Commands are passed between the PTS and other system processes using named pipes. Data
structure marshalling is platform specific and therefore intentionally left undefined.
Calling semantics are of two varieties, a request-response or request-response with
asynchronous notification. Request commands consist of a request message containing the
command ordinal and extensible parameter structure. The request command is followed by a
response message flowing in the opposite direction as the request. The response message
contains the command ordinal, return value and extensible parameter structure. Asynchronous
commands contain a command ordinal and extensible parameter structure with no expectation of
an immediate response.
3.7 IPC Resources
Different IPC mechanisms have different conventions for allocating, freeing and recovering IPC
resources. This specification intends for PTS implementations to follow such conventions. For
example, if a PTS or PTS-IMC process abnormally terminates, the IPC resources are returned to
the operating system and PTS / PTS-IMC must recover inconsistent internal state.
Session identifiers negotiated as part of session establishment are temporal. These resources
are discarded upon normal and abnormal session termination.
Cookies, allocated as part of asynchronous command invocation, do not persist outside of the
session context in which the command was issued. Pending asynchronous events and any
associated resources are discarded when the session context is lost. If PTS is holding locks or
other system resources pending delivery of an asynchronous notification, these resources are
returned to the OS.
Handle resources are freed (not guaranteed to be available) immediately following completion of
the final (or terminating) command that used the handle resource and upon termination of the
session.
Only values found in snapshot, RIMM and policy structures (such as UUID and ComponentId) will
persist between sessions, reset and failures.
3.8 Operational Profiles
IF-PTS is a core specification which defines the capabilities that may be offered in a variety of
operational environments. Examples of these environments include a PC client or server where a
TPM may or may not be present, a client or server environment which may or may not have a
Trusted OS, a mobile phone with or without a TPM, or a secure storage device with trusted
computing capabilities. As such, each of these environments will have different security
capabilities and PTS requirements. TCG will address these diverse operating environments with
PTS-specific profiles which define mandatory and optional capabilities for these corresponding
environments.
3.9 TPM PCR Use
When a TPM is present and used as part of the measurement process, PTS requires the use of
one resetable TPM PCR for maintaining the integrity of application measurement. A second PCR,