Herramientas y programas de utilidad

Esta sección proporciona una visión general de las herramientas y programas de utilidad que puede utilizar para desarrollar programas de lenguaje compilado C.

Se proporcionan muchas herramientas para ayudarle a desarrollar programas compilados en C. Las herramientas proporcionan ayuda con las siguientes tareas de programación:

Se proporcionan subrutinas y mandatos de shell para su uso en un programa compilado en C.

Especificación de un programa en el sistema

El sistema tiene un editor de línea denominado ed para utilizarlo al entrar un programa en un archivo. El sistema también tiene el editor de pantalla completa denominado vi, que muestra una pantalla completa de datos a la vez y permite la edición interactiva de un archivo.

Comprobación de un programa

Utilice los mandatos siguientes para comprobar la coherencia y precisión del formato de un programa:

Mandatos Descripción
cb Reformatea un programa fuente de lenguaje C en un formato coherente que utiliza niveles de sangría para mostrar la estructura del programa.
flujo Genera un diagrama del flujo lógico de un programa fuente de lenguaje C.
cxref Genera una lista de todas las referencias externas para cada módulo de un programa fuente de lenguaje C, incluyendo dónde se resuelve la referencia (si se resuelve en el programa).
línea Comprueba si hay errores de sintaxis y de tipo de datos en un programa fuente de lenguaje C. El mandato lint puede comprobar estas áreas de un programa con más cuidado que el compilador de lenguaje C y muestra muchos mensajes que indican posibles problemas.

Para convertir el código fuente en un programa que el sistema pueda ejecutar, debe procesar el archivo fuente con un compilador y un editor de enlaces.

Un compilador es un programa que lee texto de un archivo y cambia el lenguaje de programación de dicho archivo a un formato que el sistema entiende. El editor de enlaces conecta los módulos de programa y determina cómo poner el programa finalizado en la memoria. Para crear esta forma final del programa, el sistema hace lo siguiente:

  1. Si un archivo contiene código fuente de compilador, el compilador lo convierte en código de objeto.
  2. Si un archivo contiene lenguaje ensamblador, el ensamblador lo convierte en código de objeto.
  3. El editor de enlaces enlaza los archivos de objeto creados en el paso anterior con cualquier otro archivo de objeto especificado en el mandato de compilador.

Otros lenguajes de programación disponibles para su uso en el sistema operativo son+ +, FORTRAN, COBOL y Assembler y otros lenguajes de compilador.

Puede escribir partes de un programa en diferentes idiomas y tener una llamada de rutina principal e iniciar las rutinas separadas para ejecutar. También puede utilizar el programa compilador para crear código de objeto y enlazar el programa.

Corrección de errores en un programa

Puede utilizar las siguientes herramientas de depuración que se proporcionan con el sistema operativo base:

  • El programa de depuración simbólica dbx le permite depurar programas escritos en lenguajes C, C++, FORTRAN, COBOL y Assembler.
  • El programa de depuración adb proporciona submandatos que puede utilizar para examinar, depurar y reparar archivos binarios ejecutables y para examinar archivos de datos no ASCII.
  • Mandato KDB Kernel Debugger y kdb puede ayudarle a determinar los errores en el código que se ejecuta en el kernel. Puede utilizar este programa de depuración para depurar controladores de dispositivo y extensiones de kernel.
  • El recurso de rastreo ayuda a aislar los problemas del sistema supervisando los sucesos del sistema seleccionados.

Cuando se descubren errores de sintaxis o incoherencias de denominación de parámetros en un archivo de programa, puede utilizar un editor de texto o programas de búsqueda de series y edición de series para localizar y cambiar series en el archivo. Los programas de búsqueda de series y edición de series incluyen grep, sed, y mandatos awk . Para realizar muchos cambios en uno o más archivos de programa, puede incluir los mandatos en un programa shell y, a continuación, ejecutar el programa shell para localizar y cambiar el código en los archivos.

Creación y mantenimiento de un programa

Los recursos siguientes le ayudan a controlar los cambios de programa y a crear un programa a partir de muchos módulos fuente. Estos recursos pueden ser especialmente útiles en entornos de desarrollo de software en los que se producen muchos módulos de origen.
  • El mandato make crea un programa a partir de módulos fuente. Puesto que el mandato make sólo compila los módulos cambiados desde la última compilación, su uso puede reducir el tiempo de compilación cuando se deben procesar muchos módulos de origen.
  • El sistema de control de código fuente (SCCS) le permite mantener versiones separadas de un programa sin almacenar copias separadas y completas de cada versión. El uso de SCCS puede reducir los requisitos de almacenamiento y ayudar en el seguimiento del desarrollo de un proyecto que requiere mantener muchas versiones de programas grandes.

Subrutinas

Las subrutinas de las bibliotecas del sistema manejan muchas situaciones de programación complejas o repetitivas para que pueda concentrarse en situaciones de programación exclusivas.

Mandatos de shell

Puede incluir las funciones de muchos de los mandatos de shell en un programa de lenguaje C. Cualquier mandato de shell utilizado en un programa debe estar disponible en todos los sistemas que utilizan el programa.

A continuación, puede utilizar las subrutinas fork y exec en un programa para ejecutar el mandato como un proceso en una parte del sistema que está separada del programa. La subrutina sistema también ejecuta un mandato de shell en un programa, y la subrutina popen utiliza filtros de shell.