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
The Development Environment
Open System Services Porting Guide—520573-006
2-9
Using Archiving Utilities
The tar Utility
The tar utility saves and restores data from traditional tar format archives. The
actions of the tar utility are controlled by one required flag and one or more optional
flags. Other arguments for the tar utility are file or directory names, specifying the files
to archive or restore. In all cases, appearance of a directory name refers to the files
and (recursively) subdirectories of that directory.
Some sample tar commands are as follows:
To archive all.c and.h files in the current directory, enter:
tar -cvf tarfile *.c *.h
To archive files in the sourcedir directory, enter:
tar -cvf tarfile sourcedir
To list archive files in the tarfile archive file, enter:
tar -tvf tarfile
To extract all files in the tarfile archive file, enter:
tar -xvf tarfile
To extract only.c and.h files from the tarfile archive file into the current directory,
enter:
tar -xvf tarfile *.c *.h
The pax Utility
The pax utility supports ustar and cpio archive formats. It reads, writes, and lists
members of an archive file, and copies files and directory hierarchies. It also supports
disk and tape media.
The pax utility runs under OSS. It creates ustar archive files by default. If cpio
archives are required, the -x cpio argument must be given. Guardian archive files in
the /G directory can also be read and written using the pax utility. Using the -f flag
overrides the default standard input or output.
The following examples demonstrate some of the major capabilities of the pax utility:
•
To copy the files in the current directory to magnetic tape using the /G/tape
output file:
$ pax -w -f /G/tape -b 10b .
•
To extract all the files from an archive file into the current directory hierarchy:
$ pax -r -f archive.pax
Files in the archive that use relative path names will be installed in the current
directory; files with absolute path names will be installed wherever their pathnames
indicate.