Week 23 contribution of PDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License
"Eclipse Public License v1.0" which accompanies this distribution,
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
Nokia Corporation - initial contribution.
Contributors:
-->
<!DOCTYPE concept
PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept xml:lang="en" id="GUID-ED6ED5E6-5A95-54F2-B5B2-6145A10F44BE"><title>System Utilities Overview</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>System Utility (sysutils) API provide functions to retrieve software and language package versions, Multi Media Card (MMC) and Flash File System (FFS) drive letters, device type information (e.g., manufacturer name, model name and model code) and the Symbian platform version number. It also provides functions to check whether disk space has reached a critical level. </p> <section><title>System Utilities library details</title> <p>The DLL that provides the functionality and the library to which your code must link is identified below. </p> <table id="GUID-C098A04D-D83A-5165-BC58-DF81E6992EDE"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><thead><row><entry>DLL</entry> <entry>LIB</entry> </row> </thead> <tbody><row><entry><p> <filepath>sysutil.dll</filepath> </p> </entry> <entry><p> <filepath>sysutil.lib</filepath> </p> </entry> </row> </tbody> </tgroup> </table> </section> <section><title>Description</title> <p>System Utility (sysutils) API consists of <xref href="GUID-D1A20EF0-B716-3C94-BFBF-A12637B3BDB8.dita"><apiname>SysUtil</apiname></xref> class and its six static functions. </p> <p>Three functions supply the information required to display the version of phone software being used. This depends on the currently installed language package. </p> <ul><li id="GUID-8B8261BC-F72C-5795-9C34-F78778C5AD36"><p> <codeph>GetSWVersion()</codeph> returns the current phone software version. </p> </li> <li id="GUID-0D3199EF-D330-5C6C-B27F-843C7B26DB86"><p> <codeph>GetLangVersion()</codeph> returns the currently installed language package. </p> </li> <li id="GUID-EAC77BA1-3586-502D-A504-0DBFED77B32F"><p> <codeph>GetLangSWVersion()</codeph> returns the most recent phone software version compatible with the currently installed language package. </p> </li> </ul> <p>The remaining static functions check the drive space. </p> <ul><li id="GUID-FFDCD3C6-91DA-5551-9CFC-CCCBB2709E4C"><p> <codeph>FFSSpaceBelowCriticalLevel()</codeph> checks Flash File System (also called the system drive). </p> </li> <li id="GUID-4D81303F-ADC4-54D8-8DB8-D70E71689960"><p> <codeph> MMCSpaceBelowCriticalLevel()</codeph> checks the Multi Media Card. </p> </li> <li id="GUID-5C71208D-018A-5784-9A07-603B44CAF8D4"><p> <codeph> DiskSpaceBelowCriticalLevel()</codeph> checks the drive storage (sometimes called disk drives). </p> <p> <b>NOTE</b>: These functions require configuration of the RAM drive and non-RAM drives (disk drive, MMC, FFS) thresholds using patchable data. The patchdata for drive thresholds are set during the ROM build time using macros such as <codeph>SYMBIAN_BAFL_SYSUTIL_RAM_DRIVE_CRITICAL_THRESHOLD</codeph> and <codeph>SYMBIAN_BAFL_SYSUTIL_OTHER_DISK_CRITICAL_THRESHOLD</codeph> respectively. For more information on patchdata, refer to <xref href="GUID-B526BA3A-14E4-53B4-9382-437475A1C8A4.dita">Patchable Constants</xref> section. </p> </li> </ul> </section> <section><title>APIs</title> <p>The key class of System Utilities is as follows: </p> <table id="GUID-D4E21522-50B3-5152-8A7C-B329E3FF4E32"><tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/><thead><row><entry>API</entry> <entry>Description</entry> </row> </thead> <tbody><row><entry><p> <xref href="GUID-D1A20EF0-B716-3C94-BFBF-A12637B3BDB8.dita"><apiname>SysUtil</apiname></xref> </p> </entry> <entry><p>Provides interfaces to retrieve different kinds of information about the system. </p> </entry> </row> </tbody> </tgroup> </table> </section> <section><title>Using System Utilities</title> <p>You can use the system utilities library to perform the following tasks: </p> <ul><li id="GUID-ECC93DBE-FC2A-5B51-99E0-D4B00E69F3C1"><p>Retrieve software and language package version strings for display purposes. </p> </li> <li id="GUID-C8278747-B590-56C2-80DD-E063BB7F3424"><p>Check whether there is free space on a disk drive before file creation or writing. </p> </li> <li id="GUID-AA4525CC-7299-5922-83C9-4364A84ED44F"><p>Retrieve Device Type information (for example, phone model) for display purposes. </p> </li> </ul> </section> </conbody><related-links><link href="GUID-634F4945-D92C-58D6-BF68-B8A770B2EF17.dita"><linktext>System Utilities Tutorial</linktext> </link> </related-links></concept>