Operating Systems - (Native) Libraries

Card Puncher Data Processing


native library are object file (binary) that has been compiled to the target operating system

They can be used as libary in a application

There is two types of OS library:

See shared_vs_static


A native interface is an interface that permits to call native library as a normal library.


  • Java: JNI. See also: Preset for interface to C/C++ library with JNI.
  • http://www.swig.org: SWIG is an interface compiler that connects programs written in C and C++ with scripting languages such as Perl, Python, Ruby, and Tcl.

Shared vs Static

Memory Footprint

  • Shared libraries can be used by any application software on the system without loading multiple copies into memory.
  • Static libraries copy the code directly into the application therefore growing every application by the size of all the libraries they use.

In most modern Unix-like systems, including Linux, programs are by default compiled to use shared library (so, dll)

Code versioning

  • Shared libraries have no built-in mechanism for backward compatibility. Minor changes may cause the application to crash.
  • Static libraries avoid this problem because the version that was used to build the application is included inside it, so even if a newer version exists elsewhere on the system, this does not affect the application.

Discover More
Yarn Hortonworks
Hadoop - Native Library

in Hadoop The console output may contain the message: It is usually a result of running: on Windows or Mac OS X or in a 64-bit Linux environment while the /lib/native/libhadoop.so was compiled...
Card Puncher Data Processing

is the process of joining one or more object code files together with one or more of the system libraries. The C library libc is by default linked in. Other libraries may be specified with -llib options...
Node.Js - Installation

node.Js. Nodes comes with the node package manager (npm). Mac or Linux, Windows WSL Windows: Single Or Download the binary from ...
Card Puncher Data Processing
ODBC - Driver

An ODBC driver is just a shared library that implements the ODBC API that provides a common set of function to be able to connect to a data source. You can then for instance on Linux: try to load...
Card Puncher Data Processing
OS - (Dynamic|Shared) Library (so, dll)

Shared libraries are libraries that are linked dynamically. Shared libraries allow common OS code to be bundled into a wrapper and used by any application software on the system without loading multiple...
Card Puncher Data Processing
OS - Loader

A loader is the part of the operating system that is responsible for loading : programs and libraries. Loading a program involves: reading the contents of the executable file containing the program...
Binary Section
OS - Object File

An object file is an specific operating system format that packages an object code with related metadata to create: executable files (native image) or libraries (shared or static) There is several...
Card Puncher Data Processing
Oracle Database - ODBC Driver Insallation on Linux

where is the data manager home () and ~/.odbc.ini === Drivers === Example odbcinst.ini === DSN === odbc.ini Minimal parameters Complete: ==== Test it ==== with ===== Support...
Card Puncher Data Processing
Windows - netsh (Netshell)

Netsh is a command-line scripting utility that allows you to, either locally or remotely, display or modify the network configuration of a windows computer. advfirewall - Windows firewall branchcache...

Share this page:
Follow us:
Task Runner