Symbian3/PDK/Source/GUID-2B902EA0-F954-5474-9A79-7C1AB208A3D4.dita
changeset 12 80ef3a206772
equal deleted inserted replaced
11:5072524fcc79 12:80ef3a206772
       
     1 <?xml version="1.0" encoding="utf-8"?>
       
     2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
       
     3 <!-- This component and the accompanying materials are made available under the terms of the License 
       
     4 "Eclipse Public License v1.0" which accompanies this distribution, 
       
     5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
       
     6 <!-- Initial Contributors:
       
     7     Nokia Corporation - initial contribution.
       
     8 Contributors: 
       
     9 -->
       
    10 <!DOCTYPE concept
       
    11   PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
       
    12 <concept id="GUID-2B902EA0-F954-5474-9A79-7C1AB208A3D4" xml:lang="en"><title>STS Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody>
       
    13 <section id="GUID-39064646-3244-42E9-962C-D5F98F61BF95"><title>Purpose</title> <p>STS provides transactional support for the Symbian platform file
       
    14 system. It helps clients (such as Software Installation Framework
       
    15 plug-ins) to maintain file system integrity during installation, uninstallation
       
    16 and upgrading of software packages. If the file system operation is
       
    17 interrupted or fails for reasons such as battery drain or a server
       
    18 crash, the STS rolls back the uncommitted file system operations performed
       
    19 as part of the transaction. </p> </section>
       
    20 <section id="GUID-9B55BDF8-9CE6-4F34-BAC7-54C215A0CD93"><title>Key
       
    21 concepts</title> <p> <b>SIF Plug-in</b>: Installs and manages a particular type of software package such as native SIS files
       
    22 or Python.</p> <p> <b>Symbian client-server framework</b>: For details,
       
    23 see <xref href="GUID-6047DB3F-DC92-51DF-9EEB-00E79E890B54.dita">Using Client/Server</xref>. </p> </section>
       
    24 <section id="GUID-992C35A4-D792-41C6-8499-E9E152916537"><title>Architectural
       
    25 relationships</title> <p>STS follows client-server architecture. The
       
    26 STS (server) has TCB capability. A STS client ( implemented by device
       
    27 creators) uses STS instead of using the file server directly. STS
       
    28 provides APIs to start a file system transaction, record various file
       
    29 system operation as part of a transaction, and commit or roll back
       
    30 the transaction. The STS client instructs the STS to commit a transaction
       
    31 atomically once all the operations have been performed.  </p><p>The
       
    32 STS client is implemented in <filepath>stsclient.dll</filepath> file. </p><p>An STS client application can access the services provided by
       
    33 the STS by linking against <filepath>stsclient.lib</filepath>. </p> <p>The figure below shows interaction between the STS, STS clients
       
    34 and the file system. </p><fig id="GUID-DC02F027-800F-4A54-864D-D746447C2EEE">
       
    35 <title>STS Architecture</title>
       
    36 <image href="GUID-9B2E8332-380E-4C7C-80BE-A858A8EE62C2_d0e42446_href.jpg" placement="inline"/>
       
    37 </fig> </section>
       
    38 <section id="GUID-78CB2DC4-5D5B-4207-838B-9D378CBF7A67"><title>APIs</title> <table id="GUID-A86AFA4C-6AAD-5DAF-923E-7750370349B5">
       
    39 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
       
    40 <thead>
       
    41 <row>
       
    42 <entry>API</entry>
       
    43 <entry>Description</entry>
       
    44 </row>
       
    45 </thead>
       
    46 <tbody>
       
    47 <row>
       
    48 <entry><p> <xref href="GUID-8ACAC5C6-1EDD-3EEB-995B-53833BEACF25.dita"><apiname>RStsSession</apiname></xref>  </p> </entry>
       
    49 <entry><p>Provides APIs for STS client applications to use the STS. </p> </entry>
       
    50 </row>
       
    51 </tbody>
       
    52 </tgroup>
       
    53 </table> </section>
       
    54 <section id="GUID-753B9DB3-5487-4B39-8515-E975218E3C0B"><title>Typical
       
    55 uses</title> <p>Software installers use the STS to provide a secure
       
    56 environment for updating the file system.</p> </section>
       
    57 </conbody></concept>