Glibc e le Operazioni Base di Linux

Il pacchetto Glibc contiene la libreria principale per il linguaggio C, implementa funzioni base per allocare la memoria, trovare le cartelle, aprire, leggere, scrivere e chiudere file, alcune funzioni aritmetiche ed altro di questo tipo.
Creare questo pacchetto è alquanto complesso perché la fase di installazione è molto critica, in quanto il sistema su cui si intende inserire i file del pacchetto, utilizza gli stessi file contenuti nel package e quindi occorre creare un ambiente temporaneo e permettere di utilizzare le librerie in questo ambiente, poi ritornare all’ambiente standard del proprio sistema operativo, cancellando alla fine la directory su cui avevamo creato il sistema temporaneo. Comunque vi lascio il file in formato compresso nel quale sono contenuti i file sorgenti che ho utilizzato per la creazione di questo importantissimo package per la nostra distribuzione.
Vediamo cosa contiene questo pacchetto utile per le operazioni basilari del sistema operativo:

  • catchsegv – Può essere utilizzato per creare lo stack trace quando un programma termina con un segmentation fault
  • getconf – Serve per generare cataloghi di messaggi
  • getent – Consente di ottenere i punti di ingresso di un database amministrativo
  • iconv – Permette la conversione dei caratteri
  • iconvconfig – Crea il file di configurazione per iconv
  • ldconfig – Consente di configurare le librerie a collegamento dinamico
  • ldd – Elenca le librerie necessarie ad un programma
  • lddlibc4 – Assiste ldd con i file oggetto
  • locale – Visualizza le informazioni riguardo al locale corrente
  • localedef – Compila il locale specifico
  • mtrace – Legge ed interpreta un file di tracciamento della memoria in un formato leggibile
  • nscd – Un demone che provvede alla cache per le più comuni richieste di servizio dei nomi
  • pcprofiledump – Visualizza le informazioni generate dalla profilatura del PC
  • pt_chown – Un programma di helper per grantpt per settare i proprietari e l’accesso ad uno pseudo terminale secondario
  • rpcgen – Genera codice in C per implementare il protocollo del Remote Procedure Call ( RPC )
  • rcpinfo – Crea una chiamata RPC ad un server RPC
  • sln – Un programma per creare collegamenti ( link ) statici
  • sprof – Legge e visualizza i dati della profilatura degli oggetti condivisi
  • tzselect – Chiede all’utente la sua posizione geografica e mostra il file associato ( localtime )
  • xtrace – Traccia l’esecuzione di un programma stampando le funzioni eseguite
  • zdump – Il dumper per le zone orarie
  • zic – Il compilatore per le zone orarie

Oltre ai programmi elencati sopra il pacchetto Glibc contiene anche queste librerie:

  • ld.so – Il programma di aiuto per l’esecuzione delle librerie dinamiche
  • libBrokenLocale – Usato internamente a Glibc per programmi rovinati
  • libSegFault – L’handler per il segmentation fault, utilizzato da catchsegv
  • libanl – Una libreria per la ricerca dei nomi asincrono
  • libbsd-compat – Consente di far girare alcuni programmi BSD ( Berkeley Software Distribution ) su Linux
  • libc – La libreria principale per il linguaggio C
  • libcidn – Usato internamente a Glibc per i domini internazionali nella funzione getaddrinfo()
  • libcrypt – La libreria per la crittografia
  • libdl – Libreria di interfaccia al collegamento dinamico
  • libg – Una libreria senza funzioni, prima era il runtime per g++
  • libieee – La libreria di default per la gestione degli errori POSIX.1 ( Collegando questo modulo viene forzato l’errore per le funzioni matematiche definite dall’IEEE (Institute of Electrical and Electronic Engineers ))
  • libm – La libreria matematica
  • libmcheck – Permette il controllo dell’allocazione dinamica quando collegata
  • libmemusage – Usato da memusage per informazioni sull’uso della memoria
  • libnsl – Libreria per i servizi di rete
  • libnss – Libreria per NSS ( Name Service Switch ) che contiene funzioni per risolvere i nomi host, nomi utente, nomi di gruppi, aliases, servizi, protocolli ed altro
  • libpcprofile – Libreria che contiene le funzioni per vedere i tempi di occupazione della CPU
  • libpthread – Libreria per i thread POSIX
  • libresolv – Libreria che contiene funzioni per creare, inviare ed interpretare i pacchetti nei server Internet Domain Name
  • librpcsvc – Libreria contenente funzioni per chiamate RPC
  • librt – Libreria con funzioni specifiche per POSIX.1b
  • libthread_db – Libreria che contiene funzioni per creare debugger multithreading
  • libutil – Libreria che contiene funzioni utilizzate in alcune utilità in ambiente UNIX

Come avete potuto notare questo pacchetto è la base del sistema Linux e quindi estremamente importante. Compilare male e con errori questi programmi e librerie significa compromettere la stabilità e l’uso di qualsiasi sistema Linux.

<< Lezione Precedente – Inizio TutorialLezione Successiva >>

Informazioni su Giampaolo Rossi

Sviluppatore di software gestionale da oltre 28 anni.
Questa voce è stata pubblicata in Linux e contrassegnata con . Contrassegna il permalink.