Ottimizzazione del codice firmware

Le skills dello sviluppatore non sono solo le abilità nello scrivere codice sorgente, ma un bravo sviluppatore deve possedere anche capacità di analisi critica su ciò che sta progettando, realizzando. La tecnica di ottimizzazione più efficace, infatti, è l’individuazione a priori dei colli di bottiglia del proprio software/firmware. A maggior ragione quando stiamo lavorando ad un firmware per una applicazione embedded o real-time, dove le risorse a disposizione sono limitate e bisogna sempre tener d’occhio i costi del prodotto.

Introduzione

Capire quale porzione di codice consuma maggiormente le risorse a disposizione non è un compito facile, anzi è molto arduo e per affrontarlo è necessario avere una buona conoscenza dell’architettura dell’unità di elaborazione con cui si sta lavorando (i microcontrollori dei diversi produttori hanno architetture anche molto diverse tra loro in termini di ALU e coprocessori matematici). In alcuni casi si adoperano tecniche o tool ad hoc per profilare il codice e valutare effettivamente le porzioni di codice più lente. Tralasciando tali tool, in questo articolo saranno illustrate le tecniche maggiormente diffuse per l’ottimizzazione del codice ai fini di  incrementare la velocità o ridurre l’utilizzo di memoria per firmware scritti in C. [...]

ATTENZIONE: quello che hai appena letto è solo un estratto, l'Articolo Tecnico completo è composto da ben 2335 parole ed è riservato agli ABBONATI. Con l'Abbonamento avrai anche accesso a tutti gli altri Articoli Tecnici e potrai fare il download in formato PDF eBook e Mobi per un anno. ABBONATI ORA, è semplice e sicuro.

Scrivi un commento