Chapter 3. Analysis

In this chapter

  • 3.1

Linux Standards

page 53

  • 3.2

GNU libc

page 54

  • 3.3

GNU Scientific Library

page 57

  • 3.4

Shared Libraries

page 58

  • 3.5

Library Versioning

page 59

  • 3.6

Dynamic Linker (or Runtime Linker)

page 69

  • 3.7

System Calls

page 75

  • 3.8

Large Page Support

page 75

  • 3.9

The Native POSIX Threads Library (NPTL)

page 81

  • 3.10

Internationalization (I18N) and Localization

page 83

  • 3.11

Big/Little-Endian Environment

page 90

  • 3.12

32- to 64-Bit Migration

page 91

  • 3.13


page 94

After the initial scoping work is done, we need to perform a more detailed analysis of the application. The analysis includes but is not limited to examining the application in terms of use of application programming interfaces (APIs), dynamic library loading interfaces, threads, networking interfaces, and other functionalities that the operating system may provide. This chapter assumes that the porting engineer is knowledgeable about the application to be ported or has access to someone who knows the application design.

Each section in this chapter has two purposes. The first one is to help educate the porting personnel as to the standards and features supported in the Linux environment. And the second is to invite the porting engineer to analyze the application to be ported in terms of the topics discussed. For example, take a look at Section 3.5 on library versioning. The porting engineer is expected to know whether the application uses library versioning. If the application uses library versioning, he can then learn how library versioning is implemented on Linux. This knowledge will give him some sense about how much effort it will take to implement library versioning for the application.

Here are the suggested steps to help the porting personnel through this chapter:

  1. Read through each section.

  2. Ask questions about the application pertaining to the topic discussed in the section. Ask specific questions, such as these: Does the application use these standards? Does the application use this feature? If yes, are there differences in the way Linux implements this standard or feature? If so, based on the information given in this section, what effort will be involved to implement this feature in the application?

  3. Note things that come up, such as dependencies, level of difficulty, and risks, that can affect the project schedule. Feed this information back to the project manager.

Remember, analysis from a porting perspective is the step during which we examine the application in more detail. We need to know what the application needs and whether these needs are available on Linux. Let's begin.

UNIX to Linux Porting. A Comprehensive Reference
UNIX to Linux Porting: A Comprehensive Reference
ISBN: 0131871099
EAN: 2147483647
Year: 2004
Pages: 175 © 2008-2017.
If you may any questions please contact us: