Open System Services Porting Guide (G06.24+, H06.03+)
Table Of Contents
- What’s New in This Manual
- About This Manual
- 1 Introduction to Porting
- 2 The Development Environment
- 3 Useful Porting Tools
- 4 Interoperating Between User Environments
- Purpose of Interoperability
- The OSS User Environment
- OSS Commands for the Guardian User
- Guardian Commands for the UNIX User
- OSS Pathname and Guardian Filename Conversions
- Running the OSS Shell and Commands From TACL
- Running Guardian Commands From the OSS Shell
- Running OSS Processes With Guardian Attributes
- Using OSS Commands to Manage Guardian Objects
- 5 Interoperating Between Programming Environments
- 6 OSS Porting Considerations
- 7 Porting UNIX Applications to the OSS Environment
- 8 Migrating Guardian Applications to the OSS Environment
- General Migration Guidelines
- C Compiler Issues for Guardian Programs
- Using New and Extended Guardian Procedures
- Using OSS Functions in a Guardian Program
- Interoperating With OSS Programs
- Starting an OSS Program From the Guardian Environment
- C Compiler Considerations for OSS Programs
- Porting a Guardian Program to the OSS Environment
- How Arguments Are Passed to the C or C++ Program
- Differences in the Two Run-Time Environments
- Which Run-Time Routines Are Available
- Use of Common Run-Time Environment (CRE) Functions
- Replacing Guardian Procedure Calls With Equivalent OSS Functions
- Which IPC Mechanisms Can Be Used
- Interactions Between Guardian and OSS Functions
- 9 Porting From Specific UNIX Systems
- 10 Native Migration Overview
- 11 Porting or Migrating Sockets Applications
- 12 Porting Threaded Applications
- A Equivalent OSS and UNIX Commands for Guardian Users
- B Equivalent Guardian Commands for OSS and UNIX Users
- C Equivalent Inspect Debugging Commands for dbx Commands
- D Equivalent Native Inspect Debugging Commands for dbx Commands
- E Standard POSIX Threads Functions: Differences Between the Previous and Current Standards
- Glossary
- Index
Contents
Open System Services Porting Guide—520573-006
vii
9. Porting From Specific UNIX Systems
Starting an OSS Program From the Guardian Environment (continued)
Using PROCESS_SPAWN_ in a Guardian Program 8-22
Using the Guardian LISTNER Program 8-23
C Compiler Considerations for OSS Programs 8-24
Compiler Tools 8-25
Memory Models 8-25
Header Files 8-25
Include File Search Order 8-26
New Pragmas 8-26
Feature-Test Macros 8-26
Predefined Preprocessor Symbols 8-27
Linking 8-27
Porting a Guardian Program to the OSS Environment 8-28
How Arguments Are Passed to the C or C++ Program 8-28
Differences in the Two Run-Time Environments 8-28
Which Run-Time Routines Are Available 8-29
Use of Common Run-Time Environment (CRE) Functions 8-30
Replacing Guardian Procedure Calls With Equivalent OSS Functions 8-31
Which IPC Mechanisms Can Be Used 8-31
Interactions Between Guardian and OSS Functions 8-31
9. Porting From Specific UNIX Systems
The UNIX Workstation Development Environment 9-1
Shells 9-1
Editors 9-2
Development Tools 9-2
C Compilation on a Workstation 9-7
Sun C Compiler 9-7
GNU C Compiler 9-8
Resolving the Endian Problem 9-8
Using Data Overlays 9-9
Initializing Multiple-Word Entities in Chunks of Multiple Bits 9-10
Using Bytes for More Than One Purpose 9-10
Using Hexadecimal Constants as Byte Arrays 9-10
10. Native Migration Overview
General Migration Issues 10-1
Native Environment Features 10-2
Stack and Heap Sizes 10-3
Kernel-Managed Swap Facility (KMSF) 10-3