Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Tutte le novità di Glibc 2.10

Link copiato negli appunti

Urlich Drepper, uno dei più attivi programmatori GNU nello sviluppo della libreria C, ha comunicato sul suo blog tutte le novità dell´imminente glibc 2.10 (GNU LibC 2.10).

I cambiamenti principali riguardano per lo più cinque aspetti della libreria: conformità POSIX, algoritmo di look-up della libreria DNS NSS, estensioni della funzione printf, malloc su sistemi multicore, e gestione on-fly del codice macchina ottimizzato. Sembrerebbero poche modifiche, ma bisogna pur sempre tenere conto della loro complessità.

Con questa versione della libc sembra ci si sia allineati definitivamente allo standard POSIX 2008. A detta di Urlich Drepper molto del lavoro era già stato fatto col precedente rilascio 2.9, e con questa versione si è dovuto solo certificare la conformità allo standard.

La nuova libreria DNS NSS consentirà il look-up in parallelo degli indirizzi IPV4 e IPV6 per uno stesso host. Il meccanismo tuttavia può presentare ancora problemi, e questo non certamente a causa della libreria C ma piuttosto a causa della configurazione di rete in cui il codice viene eseguito. Si è notato, infatti, che alcune delle tipiche configurazioni di rete domestiche possono presentare problemi a causa di "accodamenti" delle richieste effettuate dal router di accesso alla rete Internet. Questo si traduce in un ritardo di look-up talvolta percepito anche dall´utente finale.

Su richiesta di un gruppo di sviluppatori è stata aggiunta la possibilità di poter estendere la funzione printf allocando dei propri specificatori di formato. Per intenderci sarà possibile affiancare ai tradizionali specificatori %d, %ld,... dei propri costrutti. Per chi è incuriosito da questa nuova funzionalità può consultare anche gli esempi forniti da U.Drepper.

La funzione malloc, e parte del sistema di allocazione della memoria, è stato riscritto per superare alcuni limiti della libreria sui sistemi multicore. Queste modifiche eviteranno problemi soprattutto nel caso di applicazioni multithread eseguite sui processori moderni, evitando il problema del "false sharing".

Infine, ma non certamente di poco conto, è da riportare la possibilità di poter utilizzare run-time il codice macchina ottimizzato. In pratica, grazie ad alcune aggiunte al formato ELF e ad alcune modifiche nella libreria C e nel loader, sarà possibile a tempo di esecuzione capire Qual è per una data funzione l´implementazione migliore da eseguire.

Ti consigliamo anche