Open System Services Porting Guide (G06.29+, H06.06+, J06.03+)

Replacing Guardian Procedure Calls With Equivalent OSS Functions......................................160
Which IPC Mechanisms Can Be Used................................................................................160
Interactions Between Guardian and OSS Functions...............................................................161
9 Porting From Specific UNIX Systems..........................................................162
The UNIX Workstation Development Environment......................................................................162
Shells.............................................................................................................................162
Editors............................................................................................................................162
Development Tools...........................................................................................................163
C Program Analysis Tools.............................................................................................163
Program Management Tools.........................................................................................163
C Source Code Utilities................................................................................................164
Object File Utilities......................................................................................................164
Linkable Library Routines..............................................................................................165
Standard and Alternate Library Directories......................................................................165
Implementor-Defined Values..........................................................................................166
C Compilation on a Workstation............................................................................................166
Sun C Compiler...............................................................................................................166
GNU C Compiler............................................................................................................167
Resolving the Endian Problem............................................................................................168
Using Data Overlays........................................................................................................168
Initializing Multiple-Word Entities in Chunks of Multiple Bits...................................................169
Using Bytes for More Than One Purpose.............................................................................169
Using Hexadecimal Constants as Byte Arrays......................................................................169
10 Native Migration Overview....................................................................170
General Migration Issues.......................................................................................................170
Native Environment Features..................................................................................................171
Stack and Heap Sizes......................................................................................................171
Kernel-Managed Swap Facility (KMSF)...............................................................................171
Native Shared Run-Time Libraries.......................................................................................172
Dynamic-Link Libraries.......................................................................................................172
Signal Handling for Guardian Processes ............................................................................172
OSS and Guardian API Interoperability..............................................................................172
C/C++ Development Tools....................................................................................................172
User Library Migration Issues..................................................................................................173
C Language Compilers..........................................................................................................174
Using the C Run-Time Library..................................................................................................175
Obsolete Library Functions................................................................................................175
Changes to the exit() Function............................................................................................175
Changes to the Scanset....................................................................................................175
Checking the Condition Code ..........................................................................................175
Signal Mask Width..........................................................................................................176
Memory Attributes...........................................................................................................176
Using Common Run-Time Environment (CRE) Functions..........................................................176
Guardian Procedure Features.................................................................................................176
TAL to pTAL Conversion.........................................................................................................177
11 Porting or Migrating Sockets Applications.................................................178
Porting UNIX Sockets Applications to the OSS Environment........................................................178
General Considerations....................................................................................................178
Differences Between OSS Sockets and Berkeley Software Distribution Sockets..........................179
Porting Situations.............................................................................................................180
Porting Guardian Sockets Applications to the OSS Environment..................................................180
General Considerations....................................................................................................181
Differences Between OSS Sockets and Guardian Sockets......................................................181
10 Contents