74 Standard C dynamic loading and symbol lookup APIs (only ordinal lookup is |
74 Standard C dynamic loading and symbol lookup APIs (only ordinal lookup is |
75 supported on pre-Symbian OS v9.3 releases). </p> </li> |
75 supported on pre-Symbian OS v9.3 releases). </p> </li> |
76 </ul> <p>The first three libraries listed above are seeded from <xref href="http://www.freebsd.org/" scope="external">FreeBSD</xref>. </p> <p>The diagram below shows the high |
76 </ul> <p>The first three libraries listed above are seeded from <xref href="http://www.freebsd.org/" scope="external">FreeBSD</xref>. </p> <p>The diagram below shows the high |
77 level architecture of the P.I.P.S. environment. </p> <fig id="GUID-103BEA25-EE1B-50D0-8C0C-950C1A43656D"> |
77 level architecture of the P.I.P.S. environment. </p> <fig id="GUID-103BEA25-EE1B-50D0-8C0C-950C1A43656D"> |
78 <title> P.I.P.S. environment architecture </title> |
78 <title> P.I.P.S. environment architecture </title> |
79 <image href="GUID-ACA2AFE8-4872-42FA-A871-34EB80197495_d0e155039_href.png" placement="inline"/> |
79 <image href="GUID-ACA2AFE8-4872-42FA-A871-34EB80197495_d0e148518_href.png" placement="inline"/> |
80 </fig> <p>This diagram shows how P.I.P.S. fits in with the Symbian platform, |
80 </fig> <p>This diagram shows how P.I.P.S. fits in with the Symbian platform, |
81 and also how C/C++ applications, additional C shared libraries and hybrid |
81 and also how C/C++ applications, additional C shared libraries and hybrid |
82 applications developed by third party Symbian developers using P.I.P.S. fit |
82 applications developed by third party Symbian developers using P.I.P.S. fit |
83 in. </p> <p>P.I.P.S. environment is based on industry-standard APIs. These |
83 in. </p> <p>P.I.P.S. environment is based on industry-standard APIs. These |
84 standards include </p> <ul> |
84 standards include </p> <ul> |
93 industry standards are Open Group standards and include Standard C (<codeph>stdC</codeph>), |
93 industry standards are Open Group standards and include Standard C (<codeph>stdC</codeph>), |
94 POSIX, GNU C library (<codeph>glibc</codeph>) and Standard C++ (<codeph>stdC++</codeph>). </p> <p>The |
94 POSIX, GNU C library (<codeph>glibc</codeph>) and Standard C++ (<codeph>stdC++</codeph>). </p> <p>The |
95 diagram below shows how the Standard C libraries and exported applications |
95 diagram below shows how the Standard C libraries and exported applications |
96 fit into the native platform. </p> <fig id="GUID-02F370A6-0713-5E7F-A851-339E03603A0A"> |
96 fit into the native platform. </p> <fig id="GUID-02F370A6-0713-5E7F-A851-339E03603A0A"> |
97 <title> The subsystem components </title> |
97 <title> The subsystem components </title> |
98 <image href="GUID-5746BC4A-E8D2-51DE-B101-4BA68F0E1769_d0e155098_href.png" placement="inline"/> |
98 <image href="GUID-5746BC4A-E8D2-51DE-B101-4BA68F0E1769_d0e148577_href.png" placement="inline"/> |
99 </fig> <p>The System Call Adaptation Layer (SCAL) is not directly accessed |
99 </fig> <p>The System Call Adaptation Layer (SCAL) is not directly accessed |
100 by the developer wishing to export to the Symbian platform, but through calls |
100 by the developer wishing to export to the Symbian platform, but through calls |
101 in the P.I.P.S. libraries. </p> <p>Traditionally, in Unix-like systems, system |
101 in the P.I.P.S. libraries. </p> <p>Traditionally, in Unix-like systems, system |
102 calls are implemented in the kernel, separate from the C libraries. On the |
102 calls are implemented in the kernel, separate from the C libraries. On the |
103 Symbian platform, the 'System Call Adaptation Layer' runs in the context of |
103 Symbian platform, the 'System Call Adaptation Layer' runs in the context of |