..


Enlaces patrocinados

Estático de código en C + +

Artículo escrito por Damián Verda
Página 1 de 2

Podemos definir el proceso de análisis estático de código fuente como un procedimiento por el cual se identifican las partes de código no seguro sin que la ejecución real del programa.

Análisis estático "S se puede realizar de forma automática, es decir, por sus propias herramientas útiles específicos para apoyar el proceso de prueba. Observar cómo la fase de pruebas de software, en su totalidad, es un proceso muy complejo y por lo general realizado por los programadores que deciden especializarse en esta área en particular. Herramientas de software dedicada al "análisis de código estático ayudar así a reducir tiempo y costes, proporcionando un primer indicio de lo que las secciones de código que se requiere para revisar con más cuidado.

Los tipos de errores detectados por los instrumentos mencionados son la actualización de varias y continuas, desarrollo de negocios, de hecho, este tipo de software va a gran ritmo durante mucho tiempo ahora.

Importante en este sentido el valor histórico de un programa como pelusa , lanzado en 1979, que se ejecuta en Linux y dedicado al lenguaje de programación C . Lint es un verdadero hito para el software de verificación de código estático, a veces se identifica como "como pelusa-herramientas", o "pelusa como las herramientas."

Los analizadores estáticos modernos también son capaces de verificar el código diseñado para ejecutarse en paralelo, realizar sugerencias específicas para dichas aplicaciones.

En este artículo nos centramos en este tipo de instrumento, tratando de ofrecer un breve panorama de las posibilidades en el código estático de los programas en ejecución en paralelo del lenguaje C + + (los más populares y versátiles en la naturaleza). Para comenzar, vamos a examinar un software genérico y flexible como un PC-Lint .

PC-Lint

PC-Lint está diseñado para proporcionar un rendimiento óptimo en el análisis de los programas que utilizan los hilos POSIX , pero puede ser utilizado con eficacia en un caso genérico. No quiero decir que el análisis realizado por el software está en todas las formas automáticas.

Parece necesario especificar manualmente las funciones que el programa se ejecutará de forma paralela (o incluso al mismo tiempo), por lo que PC-Lint puede proceder a "análisis estático de la justicia (eso sí, automática) sólo en estas secciones. Para lograr esto, debe utilizar la opción-siempre sobre la ejecución de la línea de comandos de PC-Lint. Por ejemplo, la declaración:

 



 pelusa sem (func, hilo)

 
comunica con el PC-Lint es necesario analizar la función func, ya que se ejecutan simultáneamente. Ahora recibirá mensajes de error relacionados con la función teniendo en cuenta que también deberá controlar la ejecución en paralelo de la misma, a continuación, señalando, por ejemplo, si una variable compartida es utilizada o modificada sin definición adecuada de una sección crítica.

Fue en este sentido, si la exclusión mutua y primitivas de sincronización se implementan utilizando hilos POSIX típico del formalismo, o, por ejemplo, pthread_mutex_lock y pthread_mutex_unlock, no tendrá que especificar nada al respecto de la línea de comandos. De lo contrario, las directrices se utilizarán:






 -Sem (acceso, thread_lock)







 -Sem (liberación, thread_unlock)



para indicar que el acceso a la sección crítica se hace a través de una función llamada el acceso y la liberación de esa sección es utilizar la función de liberación.

Si, por un análisis estático de nuestro código, pero queríamos tener una herramienta un poco más potente e independiente de la PC-Lint, VivaMP podría ser una buena opción.

En la misma categoría ...
E-Learning
E-commerce con ASP (Ebook) E-commerce con ASP (Ebook)
Comercio Electrónico y Compras con ASP. Sólo 35 €.
Grabación de CDs y DVDs (Ebook) Grabación de CDs y DVDs (Ebook)
Guía para grabar CDs y DVDs con programas gratuitos. A tan sólo 25 €.
MS Access (Avanzado) MS Access (Avanzado)
Aprenda a crear y gestionar bases de datos rápida y fácilmente. A partir de 29 €.
Enlaces patrocinados