Creating and Using Libraries

 

 

Overview of Shared and Archive Libraries

 

 

 

Comparing

Archive

Shared (or dll)

 

 

 

address binding

Addresses of library

Addresses of library subroutines are

 

subroutines and data are

bound at run time. Addresses of data in

 

resolved at link time.

a.out are bound at link time; addresses of

 

 

data in shared libraries are bound at run

 

 

time.

 

 

 

a.out files

Contains all library

Does not contain library routines; instead,

 

routines or data (external

contains a linkage table that is filled in

 

references) referenced in

with the addresses of routines and shared

 

the program. An a.out file

library data. An a.out that uses shared

 

that does not use shared

libraries is known as an incomplete

 

libraries is known as a

executable, and is almost always much

 

complete executable.

smaller than a complete executable.

 

 

 

run time

Each program has its own

Shared library routines are shared among

 

copy of archive library

all processes that use the library.

 

routines.

 

 

 

 

Almost all system libraries are available both as a shared library and as an archive library for 32-bit mode in the directory /usr/lib and for

64-bit mode in /usr/lib/pa20_lib. Archive library file names end with .a whereas shared library file names end with .sl. For example, in 32-bit mode, the archive C library libc is /usr/lib/libc.a and the shared version is /usr/lib/libc.sl. In 64-bit mode, the archive C library libc is /usr/lib/pa20_64/libc.a and the shared version is

/usr/lib/pa20_64/libc.sl

If both shared and archived versions of a library exist, ld uses the one that it finds first in the default library search path. If both versions exist in the same directory, ld uses the shared version. For example, compiling the C program prog.c causes cc to invoke the linker with a command like this:

For 32-bit mode: ld /opt/langtools/lib/crt0.o prog.o -lc

For 64-bit mode:

ld /opt/langtools/lib/pa20_64/crt0.o prog.o -lc

The -lcoption instructs the linker to search the C library, libc or libc/pa20_64, to resolve unsatisfied references from prog.o. If a shared libc exists (/usr/lib/libc.sl or /usr/lib/pa20_64/libc.sl), ld uses it instead of the archive libc

Chapter 5

123

Page 123
Image 123
Kenwood HP 9000 manual Complete executable

HP 9000 specifications

The Kenwood HP 9000 is a cutting-edge home appliance designed for culinary enthusiasts seeking to elevate their cooking experience. This powerful kitchen machine stands out for its multi-functionality, combining the roles of a food processor, blender, and mixer into one sleek unit.

One of the flagship features of the Kenwood HP 9000 is its robust motor, which delivers exceptional performance across various tasks. With a powerful motor that operates at multiple speeds, users can tackle everything from kneading dough to finely chopping vegetables with ease. The variable speed control allows for precision, ensuring that every ingredient is processed to perfection according to individual preferences.

The HP 9000 comes equipped with a variety of attachments that enhance its versatility. Among these are a stainless-steel mixing bowl, a dough hook, a whisk, and multiple cutting blades. This extensive array of accessories means that users can whip up delightful pastries, create homemade pasta, or prepare smoothies with minimal hassle. Each attachment is designed for easy attachment and removal, making the transition between tasks seamless and efficient.

Another key characteristic of the Kenwood HP 9000 is its advanced safety features. The design incorporates mechanisms that prevent the machine from operating unless all components are securely in place. This not only gives users peace of mind while cooking but also ensures longevity for the appliance, reducing the risk of wear and tear over time.

In terms of design, the HP 9000 is both modern and aesthetically pleasing. Its ergonomic shape and compact size make it easy to store and use in various kitchen settings, while the high-quality materials used in its construction guarantee durability and longevity. The user interface is intuitive, with clearly labeled buttons that facilitate operation, ensuring that even novice cooks can navigate the machine effortlessly.

Additionally, the Kenwood HP 9000 features innovative technologies, such as an integrated digital timer and a pulse function for added control during food preparation. These features enhance cooking precision, allowing users to achieve consistent results every time.

In summary, the Kenwood HP 9000 is an exceptional kitchen appliance that combines power, versatility, and safety. With its advanced features and user-friendly design, it is an ideal choice for anyone looking to simplify their cooking process while achieving professional-level results. Whether you're whipping up a quick meal or tackling an elaborate recipe, the HP 9000 is a reliable companion that will inspire culinary creativity.