• No se han encontrado resultados

Aplicación compilador 1 Modo stand-alone

Capítulo 6. Evidencias de implementación del Ambiente Distribuido para Manufactura de Productos (ADMP)

6.2 Aplicación compilador 1 Modo stand-alone

En este apartado se mostrarán en orden cronológico los elementos y las etapas de ejecución del compilador de modo stand-alone.

En la figura 6.12 se muestra el directorio y los archivos que hacen posible la ejecución del componente compilador. En la sección 4.2.2.2 del capítulo 4, se definieron las funciones de cada uno de ellos. Lo importante a recalcar aquí es que la forma de ejecución es mediante ventana de comandos. El archivo “compilador” (ver la figura 6.12) es el binario ejecutable que lleva a cabo la compilación de los programas de CNC. La sintaxis de ejecución se muestra en al figura 6.13, en la cual se aprecia que seguido del nombre del “compilador” va el nombre del archivo a ejecutar, en el caso que muestra esta figura se observa que se denomina “arco-linea-arco-linea.program”. Al final de la compilación se generan dos archivos de salida: “programa.txt” y “errores.txt”, mismos que son señalados en la figura

Figura 6.11 Pantalla del cliente SPP-CNC para ver los resultados.

6.2 Aplicación compilador 6.2.1 Modo stand-alone

En este apartado se mostrarán en orden cronológico los elementos y las etapas de ejecución del compilador de modo stand-alone.

En la figura 6.12 se muestra el directorio y los archivos que hacen posible la ejecución del componente compilador. En la sección 4.2.2.2 del capítulo 4, se definieron las funciones de cada uno de ellos. Lo importante a recalcar aquí es que la forma de ejecución es mediante ventana de comandos. El archivo “compilador” (ver la figura 6.12) es el binario ejecutable que lleva a cabo la compilación de los programas de CNC. La sintaxis de ejecución se muestra en al figura 6.13, en la cual se aprecia que seguido del nombre del “compilador” va el nombre del archivo a ejecutar, en el caso que muestra esta figura se observa que se denomina “arco-linea-arco-linea.program”. Al final de la compilación se generan dos archivos de salida: “programa.txt” y “errores.txt”, mismos que son señalados en la figura

6.14. El contenido del archivo de entrada (arco-linea-arco-linea.program) puede verse en la figura 6.15; el de los archivos resultantes (programa y errores) puede verse en las figuras 6.16 y 6.17 respectivamente.

Figura 6.12 Archivos que forman parte del compilador.

Figura 6.14 Archivos resultantes de la compilación.

Figura 6.16 Estructura del archivo resultante “programa.txt”.

Figura 6.17 Estructura del archivo resultante “errores.txt”.

6.2.2 Modo distribuido

En este apartado se mostrarán en orden cronológico los elementos y las etapas de ejecución del compilador de manera distribuida.

Al igual que en la aplicación SPP-CNC y como paso inicial de toda aplicación distribuida construida con ICE, el primer paso es definir la interfaz de comunicación entre cliente y servidor. Para el caso del compilador se usa la interfaz expuesta en la figura 6.18. Se define

un módulo llamado “Demo”, un tipo de datos denominado “datos” que será mapeado como vector en C++. El nombre de la interfaz es “Compiler” y contiene tres métodos:

x string printString(string s) – Método que permite el envío de cadenas del cliente al

servidor. El archivo a compilar se descompone en cadenas y se envía línea por línea al servidor. El servidor cada que recibe una cadena contesta con otra que el cliente interpreta como señal para enviar la siguiente. Cada vez que el servidor recibe una cadena la almacena en un vector y luego crea un archivo en un directorio específico. Así se transportan, primero el archivo que el cliente desea compilar y envía al servidor, y al finalizar el proceso de compilación los archivos resultantes (programa.txt y errores.txt).

x string compila(string archivo) – Método que el cliente invoca para pedirle al servidor

que realice la compilación. El servidor acude hasta la ubicación donde se encuentra el archivo binario “compilador” (por ejemplo el de la figura 6.12), le pide que se ejecute y le pasa como parámetro el archivo de compilación enviado por cliente.

x datos enviaCompilado() – Método que sirve para enviar los resultados de la

compilación del servidor al cliente.

Figura 6.18 Interfaz definida para la aplicación compilador.

La figura 6.19 muestra la lista de archivos construidos para conformar la aplicación servidor del componente compilador. En este aspecto las aplicaciones servidor de cada aplicación no varían mucho. Existen archivos “.ice”, “.cpp”, “.h” que definen la interfaz y que son generados con la herramienta slice. Se encuentra también el Server.cpp que es el

código fuente del componente servidor y por último el binario que debe ser ejecutado. Para este caso el ejecutable se llama “server”. En la figura 6.20 se ven dos consolas sobrepuestas; en la de atrás se está ejecutando el servidor y en la de enfrente se está mandando a ejecutar la aplicación cliente mediante la cual se invocarán los métodos del servidor.

La figura 6.21 muestra la ventana que es constante en todas las aplicaciones aquí presentadas, la que sirve para ingresar la Ip del servidor con el que desea conectarse.

Figura 6.20 Forma de ejecutar la parte cliente del compilador.

La figura 6.22 muestra la interfaz gráfica que se le presenta al cliente para que pueda mandar a compilar sus programas de CNC. En la figura 6.23 se muestra la forma en la que el cliente, a través de su interfaz gráfica, selecciona de un directorio el archivo que quiere compilar. Una vez seleccionado el programa, el contenido se despliega en un área de la interfaz del usuario, esto para ayudar al usuario a asegurarse que es el archivo indicado el que realmente desea compilarse (ver figura 6.24). Una vez que está seguro del archivo a compilar puede proceder a ejecutar la compilación. Esto lo hace presionando el botón “Do compilation”. Durante la compilación una barra de estado indicará el porcentaje de avance del proceso, así como en la parte inferior de la interfaz se irán desplegando los eventos sucedidos en cada etapa de la compilación. Al final de la compilación la interfaz gráfica desplegará un botón denominado “results” (ver figura 6.25). Al oprimir este botón se desplegará una nueva ventana en la que a través del uso de pestañas puede observarse el contenido de los archivos resultantes de la compilación (figuras 6.26 y 6.27).

Para corroborar la correcta transmisión del archivo a compilar y los archivos resultantes puede acudirse a los directorios en los que se encuentran los binarios, tanto del cliente como del servidor y verificar la existencia de los mismos. Las figuras 6.28 y 6.29 muestran que los archivos existen en los directorios indicados, lo cual quiere decir que si se enviaron/recibieron con éxito.

Figura 6.22 Interfaz gráfica del usuario para ejecutar una compilación remota.

Figura 6.24 Despliegue del contenido del archivo a compilar.

Figura 6.26 Despliegue del resultado contenido en “programa.txt”.

Figura 6.28 Archivos resultantes del lado del servidor al ejecutar la compilación.

6.3 Aplicación interpolador

Documento similar