UNIVERSIDAD DE MAGALLANES FACULTAD DE INGENIERÍA DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN. Cálculo de Índice de Similidud Estructural

Tamaño: px
Comenzar la demostración a partir de la página:

Download "UNIVERSIDAD DE MAGALLANES FACULTAD DE INGENIERÍA DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN. Cálculo de Índice de Similidud Estructural"

Transcripción

1 UNIVERSIDAD DE MAGALLANES FACULTAD DE INGENIERÍA DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN Cálculo de Índice de Similidud Estructural Manuel Cruz Pillancari 2010

2 La presente Memoria de Titulación ha sido aprobada con la siguiente calificación: Manuel Cruz Pillancari Memoria : Exámen de Título : Nota Final : Sr. Eduardo Peña Jaramillo Director Departamento De Ingeniería en Computación 21 de diciembre de 2010.

3 UNIVERSIDAD DE MAGALLANES FACULTAD DE INGENIERÍA DEPARTAMENTO DE INGENIERÍA EN COMPUTACIÓN Cálculo de Índice de Similidud Estructural Trabajo de titulación presentado en conformidad a los requisitos para obtener el título de Ingeniero Civil en Computación e Informática. Profesor Guía: Sr. Dr. Pedro Alberti Villalobos. Profesor Co-Guía: Sr. Dr. Sergio Soza Amigo. Manuel Cruz Pillancari 2010

4 A mis padres, Manuel y Ana

5 Resumen Este trabajo tiene como finalidad la de resolver el problema del Cálculo de Índice de Similitud Estructural, el cual tiene relación con el área económica, por medio del diseño e implementación de un algoritmo paralelo que permita la optimización del tiempo de ejecución del problema a resolver. Para dar solución al problema antes mencionado se optó por utilizar un modelo de memoria compartida y para trabajar en esta arquitectura de computación paralela, se utilizó la tecnología multi-núcleo utilizando la librería de programación OpenMP, con lo que en el fondo se logra distribuir las operaciones necesarias para resolver el problema de índice de similitud estructural, entre los distintos núcleos disponibles de la máquina utilizada y de esta manera que estos cálculos puedan ser realizados de manera simultánea. También se puede mencionar que la aplicación desarrollada permitirá presentar los resultados obtenidos sobre la similitud estructural encontrada, para su posterior interpretación y análisis en lo relativo a esta temática. i

6 Índice general I. Introducción Objetivos Objetivo General Objetivos Específicos Descripción de los Capítulos II. Marco Teórico Computación Paralela Clasificación de Arquitecturas Paralelas Modelos de Comunicación Aplicaciones de la Computación Paralela Librerías para Computación Paralela Teoría de Algoritmos Paralelos Factores que Afectan a la Computación en Paralelo ii

7 Cluster de Computadores Análisis Input-Output Modelo de Input-Output Matrices de Coeficientes Técnicos Indicador de Lemasne III. Desarrollo Comparativa entre Memoria Distribuida y Compartida Librería OpenMP Directivas Funciones Herramientas de Programación Lenguajes de Programación Diseñador de Interfaz Gráfica Aplicaciones de Prueba Utilizando OpenMP Utilizando Perl Utilizando Glade Construcción de la Aplicación Entrada de Datos iii

8 Cálculo de Similitud Estructural Salida de Datos Menú de la Aplicación Pruebas Equipo Computacional Pruebas para Matrices de Coeficientes Pruebas para Indicador de Lemasne IV. Conclusión Conclusión Trabajos Futuros A. Módulos de Perl 60 A.1. Instalación de Módulos de Perl B. Manual de Usuario 62 B.1. Formato de Entrada B.2. Ventana de Entrada

9 Índice de figuras 2.1. Modelo de Memoria Distribuida Modelo de Memoria Compartida Cluster de Computadores Modelo Fork-Join Código Fuente del Programa prueba.c Ejecución del Programa prueba.c Código Fuente del Programa for.c Ejecución del Programa for.c Código que permite leer datos en archivo excel Código que permite escribir datos en archivo excel Ventana realizada con el programa Glade Diagrama de Bloques de la Aplicación Formato de tabla Input-Output utilizada Diagrama para la obtención de Matriz asociada a la Producción v

10 3.12. Diagrama para la obtención de Matriz asociada a la Distribución Diagrama para la obtención del Indicador de Lemasne Indicador de Lemasne de Similitud Global con funciones de Producción Indicador de Lemasne de Similitud Global con funciones de Distribución Matriz de diferencias asociada a las funciones de Producción Matriz de diferencias asociada a las funciones de Distribución Interfáz Gráfica de la Aplicación Gráfico Matrices de Producción Gráfico Speedup Matrices de Producción Gráfico Matrices de Distribución Gráfico Speedup Matrices de Distribución Gráfico Indicador de Lemasne Gráfico Speedup Indicador de Lemasne A.1. Instalación Módulo de Perl B.1. Archivo Excel con los Datos de Entrada B.2. Ventana de Entrada

11 Índice de tablas 2.1. Tabla de Input-Output Tiempos (en milisegundos) obtenidos en Matrices de Producción Speedup obtenido en Matrices de Producción Tiempos (en milisegundos) obtenidos en Matrices de Distribución Speedup obtenido en Matrices de Distribución Tiempos (en milisegundos) obtenidos con el Indicador de Lemasne Speedup obtenido en Indicador de Lemasne

12 Capítulo I Introducción Fundamentalmente este trabajo de título se enfoca en el desarrollo e implementación de un algoritmo paralelo, para dar solución al problema del Cálculo de Índice de Similitud Estructural. Con respecto al Cálculo de Similitud Estructural se puede mencionar que tiene como objetivo la detección de los parecidos que presentan las distintas economías y también permite observar qué economía es más o menos desarrollada en términos de su estructura económica. Para calcular este índice de similitud se realiza por medio del indicador que propuso Le Masne, el cual permite obtener las semejanzas que presenten las diversas economías analizadas. Para la realización de este trabajo primeramente se realizó un análisis sobre los distintos modelos y alternativas de computación paralela existentes. Para posteriormente seleccionar uno de ellos y continuar con el análisis y diseño del algortimo a desarrollar. Una vez terminada la implementación del algoritmo paralelo se realizaron las pruebas correspondientes, para poder evaluar en base a diferentes métricas de rendimiento, el desempeńo del algoritmo realizado.

13 CAPÍTULO I. INTRODUCCIÓN Objetivos Objetivo General Realizar un algoritmo paralelo que permita resolver el problema de Cálculo de Similitud Estructural y además minimizar el tiempo de ejecución al realizar estas operaciones Objetivos Específicos Los objetivos específicos son los siguientes: Investigar y estudiar sobre el área de análisis input-output, con el fin de entender con mayor claridad el problema a resolver. Analizar los distintos modelos y alternativas de sistemas de computación paralela para llevar a cabo la implementación del algoritmo. Conocer y analizar la teoría asociada a la construcción de algoritmos Paralelos. Implementación y realización de pruebas sobre el algoritmo propuesto Descripción de los Capítulos La estructura de este Trabajo de Título se describe a continuación: Capítulo I: En esta sección se realiza una introducción del proyecto a desarrollar, indicando los objetivos tanto generales como específicos a alcanzar. Capítulo II: Corresponde al marco teórico del proyecto, se entregarán aquellos conceptos relacionados con la Computación Paralela y el Análisis Input-Output, con el fin de aportar los conocimientos necesarios para abordar el tema de estudio.

14 CAPÍTULO I. INTRODUCCIÓN 3 Capítulo III: Se muestra principalmente cómo se realizó la construcción del algoritmo paralelo y las pruebas respectivas para evaluar el rendimiento del algoritmo realizado. Capítulo IV: En este capítulo se encuentran las conclusiones respectivas de este proyecto de título y además se mencionan algunos trabajos futuros que pueden llevarse a cabo.

15 Capítulo II Marco Teórico

16 CAPÍTULO II. MARCO TEÓRICO Computación Paralela La computación paralela es una técnica de programación en la que muchas instrucciones se ejecutan simultáneamente. Se basa en el principio de que los problemas grandes se pueden dividir en partes más pequeñas que pueden resolverse de forma concurrente (en paralelo). Existen varios tipos de computación paralela: paralelismo a nivel de bit, paralelismo a nivel de instrucción, paralelismo de datos y paralelismo de tareas. Durante muchos años, la computación paralela se ha aplicado en la computación de altas prestaciones, pero el interés en ella ha aumentado en los últimos años debido a las restricciones físicas que impiden el escalado en frecuencia. Los programas para computadores paralelos son más difíciles de escribir que los secuenciales porque la concurrencia introduce nuevos tipos de errores de software, siendo las condiciones de carrera las más comunes. La comunicación y la sincronización entre las diferentes subtareas son típicamente las grandes barreras para conseguir un buen rendimiento de los programas paralelos Clasificación de Arquitecturas Paralelas En 1966, Flynn propuso una clasificación de arquitecturas de computadoras: S=Single, I=Instruction (o programa), M=Multiple, D=Data stream (secuencia de datos) SISD: Corresponde a uniprocesadores, se ejecuta un sólo flujo de instrucciones, para operar sobre datos almacenados en una única memoria. SIMD: Instrucciones o programas que se aplican simultáneamente a muchos datos. Ejemplos son procesadores vectoriales y Graphical Processing Units (GPUs).

17 CAPÍTULO II. MARCO TEÓRICO 6 MISD: Diferentes instrucciones operan sobre los mismos datos en paralelo. Arquitecturas no muy comunes. Usadas generalmente para proveer redundancia de hardware para aumentar la confiabilidad. Ejemplos: computador de transbordador espacial. MIMD: Diferentes instrucciones actuando simultáneamente sobre diferentes datos. Esta es la arquitectura típica de un multiprocesador Modelos de Comunicación Los procesadores pueden comunicarse de diferentes formas. Los modelos mas usados son: Memoria Distribuida Existe un mecanismo de comunicación entre procesadores. Este mecanismo generalmente toma la forma de instrucciones del tipo send y receive. Estas instrucciones requieren de algunas otras adicionales como por ejemplo identificación inequívoca de procesadores y del número de procesadores existentes. Figura 2.1: Modelo de Memoria Distribuida

18 CAPÍTULO II. MARCO TEÓRICO 7 Memoria Compartida Todos los procesadores acceden a una memoria común por lo cual se rehúsan los mecanismos que se encuentran en un uniprocesador. Los procesadores además pueden tener memoria local, es decir una memoria privada para cada procesador. La memoria compartida por todos los procesadores generalmente se denomina memoria global. Figura 2.2: Modelo de Memoria Compartida Aplicaciones de la Computación Paralela Los avances en el área computacional y en especial en el poder de procesamiento de los computadores ha permitido la aparición de nuevos dominios de aplicación en el ámbito de la computación paraleala. Algunos de los principales dominios de aplicación son: Ingeniería y diseño: sistemas con altos requerimientos de cálculo numérico para simulación de sistemas físicos como dinámica de fluidos (ej: aerodinámica), diseño de circuitos electrónicos, análisis de estructuras, etc. Computación científica: aplicaciones en bioinformática como secuenciación de genes, diseño y análisis de estructuras de genes y proteínas, diseño de drogas, etc. Aplicaciones en áreas de la física y la química permiten el desarrollo de nuevos materiales. Simulaciones de la atmósfera permiten a los meteorólogos realizar predicciones del tiempo.

19 CAPÍTULO II. MARCO TEÓRICO 8 Aplicaciones comerciales: los grandes volúmenes de datos y transacciones que requieren algunas organizaciones, generalmente con aplicaciones en Internet. Ejemplos: Google, Amazon, etc. Ciencias de la Computación: herramientas de análisis de programas, como modelchecking y deducción automática requieren de un gran poder computacional para poder aplicarse a sistemas reales. Entretenimiento: la industria de juegos y realidad virtual desarrollan aplicaciones con altos requerimientos de procesamiento numérico y gráfico. A menudo existen requerimientos de tiempo real (ej: animación). La industria del cine animado ha requerido soluciones que sólo pueden ser resueltas por aplicaciones paralelas Librerías para Computación Paralela MPI (Interfaz de Paso de Mensajes) Es un estándar que define la sintaxis y la semántica de las funciones contenidas en una biblioteca de paso de mensajes diseñada para ser usada en programas que exploten la existencia de múltiples procesadores. El esquema de pase de mensajes está basado en la suposición de que cada proceso tiene una memoria local privada, y que puede comunicarse con los otros procesos a través de la transferencia de mensajes. La mayoría de las implementaciones de MPI se realizan en una combinación de C, C++ y el lenguaje ensamblador. Sin embargo, el idioma y la aplicación de usuario final son, en principio, siempre desasociado.

20 CAPÍTULO II. MARCO TEÓRICO 9 PVM (Máquina Virtual Paralela) La Máquina Virtual Paralela (conocida como PVM por sus siglas en inglés de Parallel Virtual Machine) es una biblioteca para el cómputo paralelo en un sistema distribuido de computadores. Está diseñado para permitir que una red de computadores heterogénea comparta sus recursos de cómputo (como el procesador y la memoria RAM) con el fin de aprovechar esto para disminuir el tiempo de ejecución de un programa al distribuir la carga de trabajo en varios computadores. La biblioteca PVM fue desarrollada por la Universidad de Tennessee, el Laboratorio Nacional Oak Ridge y la Universidad Emory. La primera versión fue escrita en ORNL en 1989, y después de ser modificado por la Universidad de Tennessee, fue lanzada la versión 2 en marzo de La versión 3 fue lanzada en marzo de 1993 con mejoras en la tolerancia a fallas y portabilidad. OpenMP Es una interfaz de programación de aplicaciones (API) para la programación multiproceso de memoria compartida en múltiples plataformas. Permite añadir concurrencia a los programas escritos en C, C++ y Fortran sobre la base del modelo de ejecución fork-join. Está disponible en muchas arquitecturas, incluidas las plataformas de Unix y de Microsoft Windows. Se compone de un conjunto de directivas de compilador, rutinas de biblioteca, y variables de entorno que influencian el comportamiento en tiempo de ejecución. OpenMP es un modelo de programación portable y escalable que proporciona a los programadores una interfaz simple y flexible para el desarrollo de aplicaciones paralelas para las plataformas que van desde las computadoras de escritorio hasta las supercomputadoras.

21 CAPÍTULO II. MARCO TEÓRICO 10 POSIX Threads La librería de hilos POSIX (que significa Portable Operating System Interface for Unix) es una API para C/C++. La cual permite generar un nuevo flujo de procesos concurrentes. Es más efectivo en multi-procesadores o sistemas multi-núcleo, donde el flujo del proceso programado pueda ejecutarse en otro núcleo o procesador por lo que se estaría ganando velocidad a través del procesamiento paralelo o distribuido. Todos los hilos dentro de un proceso comparten el mismo espacio de direcciones. Un hilo se genera mediante la definición de una función y sus argumentos que serán tratados en el hilo. El propósito de utilizar la libería de hilos POSIX en el desarrollo de software es para minimizar el tiempo de ejecución de la aplicación Teoría de Algoritmos Paralelos Método de Diseño de Algoritmos Paralelos Par el desarrollo de algoritmos paralelos, generalmente se parte desde un algoritmo secuencial, sobre el cual se realizan diferentes tipos de descomposiciones, para luego llegar a hacer un análisis del algoritmo obtenido. El método más comúnmente usado en el proceso de desarrollo de algoritmos paralelos se basa en la realización de los siguientes cuatro pasos: Descomposición: Particionado del algoritmo secuencial en diferentes piezas o tareas. Comunicación: Definición de cómo serán los patrones de comunicación entre las tareas. Aglomeración: Combinación de tareas en tareas compuestas, con el objetivo de minimizar la comunicación y lograr un mayor rendimiento. Mapping: Asignación de tareas a procesos o procesadores del sistema de computación.

22 CAPÍTULO II. MARCO TEÓRICO 11 Medidas de Rendiemiento de Programas Paralelos A continuación se presentarán algunas definiciones útiles de medidas de rendimiento que podrán ser usadas para hacer un análisis de rendimiento teórico en el proceso de desarrollo o análisis de programas paralelos. Aceleración (speedup): Donde: S = T s /T p (2.1) T s representa el tiempo del algoritmo secuencial. T p representa el tiempo del algoritmo paralelo. Teóricamente, la aceleración S nunca puede execeder el número de procesos. La aceleración ideal es p, aunque difícilmente alcanzable en la práctica debido a que las tareas paralelas realizan cómputos extras o sufren esperas para lograr sincronizarse y/o comunicarse. Eficiencia: Donde: E = S/p (2.2) S es la aceleración o Speedup. p representa el número de procesadores. La eficiencia es un valor, por lo general entre cero y uno, que representa una estimación de la utilización correcta de los procesadores en la solución del problema, en comparación con el gran esfuerzo que se desperdicia en la comunicación y sincronización.

23 CAPÍTULO II. MARCO TEÓRICO 12 Escalabilidad La escalabilidad es la propiedad que tienen algunos algoritmos de mantener constante la eficiencia al aumentar el número de procesadores, aunque para ello haya que aumentar el tamaño del problema. Dicho en terminos simples, se dirá que un problema es escalable si al aumentar el número de procesadores empleados para resolverlo, el hecho de incrementar el tamaño del problema se logra que todos sigan teniendo trabajo, de forma que se mantenga la eficiencia. La escalabilidad responde a la pregunta de si se puede aprovechar la potencia aportada al aumentar el número de procesadores, aunque para ello haya que aumentar el problema. Si un problema no es escalable, aunque se aumente el número de procesadores, no se conseguirá incrementar ni mantener la eficiencia, con lo que cada vez se irá aprovechando menos la potencia de los procesadores Factores que Afectan a la Computación en Paralelo La forma de programar en máquinas paralelas es dependiente del tipo de plataforma de que se trate. En cualquiera de ellas, sin embargo, es muy importante maximizar la reutilización de los datos mas cercanos al procesador, tener en cuenta la jerarquía de memorias, al igual que se hace en computación secuencial. En la computación en paralelo, juegan un papel fundamental las redes de interconexión. Especialmente, en el caso de los cluster de computadores con memoria distribuida en que aparecen mensajes que pueden ser de longitud variable, características de la red como la latencia (tiempo de establecimiento de la comunicación) o la tasa de transmisión afectan directamente a las prestaciones de los programas paralelos ejecutados en esas máquinas. Tambien puede ocurrir la situación en la que el tiempo de latencia sea muy alto, aunque una vez establecida la comunicación, la tasa de envío del mensaje sea rápida. En estos casos, un programa paralelo de grano fino tendra unas malas prestaciones. Habrá que utilizar programas de grano grueso (muchas operaciones entre comunicaciones, aunque estas comunica-

24 CAPÍTULO II. MARCO TEÓRICO 13 ciones sean de más datos). Otro de los factores, muy importante, que afecta a las prestaciones de los programas paralelos es la distribución de los datos. La forma en que los datos estén distribuidos entre los diferentes procesadores, marcará en gran medida las comunicaciones que haran falta durante el programa, y entre qué procesadores. Por lo general, convendrá repartir los datos uniformemente entre todos los procesadores, porque esto suele suponer una distribución equilibrada de la carga Cluster de Computadores El término se aplica a un conjunto de computadores construidos mediante la utilización de componentes de hardware comunes y que se comportan como si fuesen un único computador. Figura 2.3: Cluster de Computadores

25 CAPÍTULO II. MARCO TEÓRICO 14 De un cluster se espera que presente combinaciones de los siguientes servicios: Alto rendimiento Alta disponibilidad Balanceo de carga Escalabilidad La construcción de los computadores del cluster es más fácil y económica debido a su flexibilidad: pueden tener todos la misma configuración de hardware y sistema operativo (cluster homogéneo), diferente rendimiento pero con arquitecturas y sistemas operativos similares (cluster semi-homogéneo), o tener diferente hardware y sistema operativo (cluster heterogéneo), lo que hace más fácil y económica su construcción. Para que un cluster funcione como tal, no basta solo con conectar entre sí los computadores, sino que es necesario proveer un sistema de manejo del cluster, el cual se encargue de interactuar con el usuario y los procesos que corren en él para optimizar el funcionamiento. Clasificación de los Clusters Alto rendimiento: Son clusters en los cuales se ejecutan tareas que requieren de gran capacidad computacional, grandes cantidades de memoria, o ambos a la vez. El llevar a cabo estas tareas puede comprometer los recursos del cluster por largos periodos de tiempo. Alta disponibilidad: Son clusters cuyo objetivo de diseño es el de proveer disponibilidad y confiabilidad. Estos clusters tratan de brindar la máxima disponibilidad de los servicios que ofrecen. La confiabilidad se provee mediante software que detecta fallos y permite recuperarse frente a los mismos, mientras que en hardware se evita tener un único punto de fallos. Alta eficiencia: Son clusters cuyo objetivo de diseño es el ejecutar la mayor cantidad de tareas en el menor tiempo posible. Existe independencia de datos entre las tareas individuales. El retardo entre los nodos del cluster no es considerado un gran problema.

26 CAPÍTULO II. MARCO TEÓRICO 15 Componentes de un Cluster En general, un cluster necesita de varios componentes de software y hardware para poder funcionar. A saber: Nodos Almacenamiento Sistemas Operativos Conexiones de Red Protocolos de Comunicación y servicios Aplicaciones Ambientes de Programación Paralela Sistemas para Cluster Rocks Cluster Es una distribución de Linux para cluster de computadores de alto rendimiento. Rocks se basó inicialmente en la distribució Red Hat Linux, sin embargo las versiones más modernas de Rocks están basadas en CentOS, con un instalador anaconda modificado, que simplifica la instalación en masa en muchos computadores. Rocks incluye muchas herramientas (tales como MPI) que no forman parte de CentOS pero son los componentes integrales que hacen un grupo de computadores en un cluster. Es una de las distribuciones más empleadas en el ámbito de clusters, por su facilidad de instalación e incorporación de nuevos nodos. Otra de sus grandes facilidades es que incorpora gran cantidad de software para el mantenimiento y monitorización del cluster, lo que a su vez podría suponer en algunos casos una limitación.

27 CAPÍTULO II. MARCO TEÓRICO 16 PelicanHPC PelicanHPC es un Live CD que permite configurar un clúster de alto rendimiento en pocos minutos. Un cluster Pelican permite hacer uso de la computación paralela en MPI. El nodo frontend arranca desde el Live CD. En el arranque PXE de los nodos esclavos, usando el nodo frontend como el servidor. Pelican es creado usando Debian Live. Utiliza LAM- MPI e implementaciones de MPI que ya vienen instaladas. ABC GNU/Linux Esta distribución está basada en Ubuntu y esta dedicada a crear clusters de alto rendimiento con tan solo arrancar en uno de ellos el sistema en modo live. o siendo instalado en su disco duro. Los nodos arrancan a través de PXE. Usa como gestor de ventanas Gnome. Integra el monitor de recursos Ganglia. Desarrollado por Iker Castaños Chavarri en el Departamento de Ingeniería de Sistemas y Automática de la EUITI de Bilbao, Universidad del País Vasco. Condor Es un proyecto de la Universidad de Wisconsin-Madison (UWMadison). Esta ideado para aprovechar al máximo la capacidad computacional de una red de computadores. Normalmente solo se dispone de la potencia del computador que estamos utilizando para ejecutar nuestros trabajos. Condor permite ejecutar nuestro trabajo en tantas máquinas como haya disponibles, por lo que, en el mejor de los casos, nuestro trabajo finalizará en el tiempo que tarda en ejecutarse el mas lento de los procesos. Además permite: Conocer el estado de nuestros trabajos en cada momento. Implementar nuestras propias políticas de orden de ejecución. Mantener un registro de la actividad de nuestros trabajos. Añadir tolerancia a fallos a nuestros trabajos.

28 CAPÍTULO II. MARCO TEÓRICO Análisis Input-Output El Análisis Input-Output permite el conocimiento de la estructura económica y productiva de un sistema económico a un nivel de detalle máximo, con la coherencia que todo sistema mantiene entre sus elementos y relaciones. Se trata, por tanto, de una herramienta de incuestionable utilidad en estudios tanto regionales como de ámbito nacional. El desarrollo moderno del Análisis Input-Output tiene su punto de partida en los trabajos de Leontief desarrollados en los años 30 y, en particular, en la construcción del conocido modelo Input-Output clásico. Sin embargo, el esquema conceptual o marco teórico se remonta a los estudios de los teoricistas Quesnay (1758), al crear el instrumento analítico conocido como tableau economique, y Walras (1877), que representa matemáticamente las interdependencias de un sistema económico, planteadas bajo la hipótesis de existencia de un equilibrio general de los mercados. El desarrollo de metodologías de ajuste y proyección de matrices input-output permiten obtener, adicionalmente, una enriquecedora visión dinámica del funcionamiento interno de este sistema de relaciones económico productivas Modelo de Input-Output Puesto que en un modelo de insumo-producto se suele incorporar un gran número de industrias, su esquema es por fuerza bastante complicado. Para simplificar el problema se adoptan las siguientes hipótesis o supuestos económicos: Cada sector produce solo una mercancía homogénea. Cada sector usa una relación fija de insumo para la obtención de su producto La producción en cada sector está sujeta a rendimientos constantes a escala.

29 CAPÍTULO II. MARCO TEÓRICO 18 Se puede expresar una tabla input-output o de transacciones interindustriales de la manera siguiente: Compras Ventas Tabla 2.1: Tabla de Input-Output demanda intermedia I II III... N Total Ventas Sector I x 11 x 12 x x 1N nj=1 x 1j Sector II x 21 x 22 x x 2N nj=1 x 2j Sector III x 31 x 32 x x 3N nj=1 x 3j Sector N x N1 x N2 x N3... x NN nj=1 x Nj Total Compras ni=1 x i1 ni=1 x i2 ni=1 x i3... ni=1 x in Esta tabla muestra como se interrelacionan todas las industrias, en el sentido de que cada una adquiere productos fabricados por las demás, a fin de llevar a cabo su propio proceso. Cada elemento x ij dentro del cuerpo de la tabla representa en valor monetario las compras que las empresas del sector i han efectuado a otras empresas del sector j. Se puede observar que: x ij con i j representa las compras de un sector con respecto a otro distinto. x ij con i = j representa las compras de un sector con respecto al mismo sector. Se lee: Horizontalmente: La fila de una clase o sector muestra el valor de las ventas por cada comprador y el valor total de las ventas en términos monetarios. Verticalmente: La columna de cada clase o sector representa el valor de las compras por cada vendedor y el valor total de las compras, en términos monetarios.

30 CAPÍTULO II. MARCO TEÓRICO 19 Por último las compras y ventas totales son iguales para cada clase. Se ha admitido hasta el momento el supuesto de expresar la tabla de transferencias interindustriales en términos monetarios y no físicos, ya que este último traería una complejidad al momento de sumar y obtener la última linea. Suma Horizontal, o por filas; es posible ya que representa las ventas de un mismo sector destinadas a satisfacer los requerimientos de los sectores y por lo tanto se expresan en la misma unidad de medida. Suma Vertical, o por columnas; no tiene sentido, ya que cada cifra representa una compra efectuada a otro sector de producción y por lo tanto esta expresada en diversas unidades de medida Matrices de Coeficientes Técnicos Matriz de Coeficientes Técnicos asociada a la Producción En base a la información proporcionada por la Tabla de Input-Output puede elaborarse la Tabla de Coeficientes Técnicos asociadas a la producción que toma el valor que representa cada uno de los inputs sobre la producción final de cada sector. Relacionando cada x ij con la producción total X i se efectúa el cuociente x ij /X i el cual define el COEFICIENTE TÉCNICO ASOCIADO A LA PRODUCCIÓN a ij. Y por ende se puede contruir la matriz de coeficientes técnicos asociado a la producción. A = a 11 a 12 a 1n a 21 a 22 a 2n a n1 a n2 a nn

31 CAPÍTULO II. MARCO TEÓRICO 20 Matriz de Coeficientes Técnicos asociada a la Distribución Al igual que la matriz de coeficientes anterior, también es necesario utilizar la información proporcionada por la Tabla de Input-Output para construir la Tabla de Coeficientes Técnicos asociados a la distribución que en este caso toma el valor que representa cada uno de los outputs sobre la distribución total de cada sector. Referenciando cada x ij con la distribución total X j se realiza el cuociente x ij /X j el cual define el COEFICIENTE TÉCNICO ASOCIADO A LA DISTRIBUCIÓN b ij. Y por lo tando se puede contruir la matriz de coeficientes técnicos asociado a la distribución. B = b 11 b 12 b 1n b 21 b 22 b 2n b n1 b n2 b nn Indicador de Lemasne El Índice de Similitud Estructural que propuso Le Masne en 1988 permite lograr la detección de los parecidos que presentan distintas economías, el cual permite una comparación en base al cómo se hacen y distribuyen los distintos insumos y servicios. Y que tiene la siguiente expresión: n Sj 1 0 = 100(1 0, 5 a 1 ij a 0 ij ) (2.3) i=1

32 CAPÍTULO II. MARCO TEÓRICO 21 Donde 1 y 0 indican los periodos (o las regiones) que se comparan, n es el número de sectores de la tabla y a 1 ij y a0 ij son los coeficientes técnicos de cada periodo (o de cada región). Este índice varía entre 0 y 100, de modo que cuanto más próximo a 100 se encuentre el índice mayor es el grado de similitud entre los dos periodos (o las dos regiones) que se comparan.

33 Capítulo III Desarrollo

34 CAPÍTULO III. DESARROLLO Comparativa entre Memoria Distribuida y Compartida Latencia en el acceso a memoria El tiempo de acceso a memoria es mayor en cluster de computadores que en multiprocesadores debido a: No localidad de los módulos de memoria. Necesidad de acceder a los módulos de memoria a través de la red. Conflictos de acceso a memoria por varios procesadores. Mecanismos de comunicación La comunicación en multiprocesadores se realiza implícitamente con instrucciones de carga y almacenanmiento del procesador. La comunicación en cluster de computadores se realiza mediante un software que permita copiar datos entre módulos de memoria de diferentes procesadores a través de la red de interconexión (comunicación básica uno-a-uno soportado por la red y su interfaz). Mecanismos de sincronización En el cluster de computadores se aprovecha el mencanismo de comunicación para implementar la sincronización (Ej: recepción bloqueante). En multiprocesadores se utilizan implementaciones de software tales como semáforos, monitores, etc.

35 CAPÍTULO III. DESARROLLO 24 Herramientas de programación En un cluster de computador hay que distribuir la carga a un módulo de memoria local antes de empezar a trabajar (balanceo de carga para la mejora de prestaciones). En multiprocesadores no se reparte la carga de trabajo. Degradación de prestaciones ante reparto de carga estático en cluster de computadores. Compiladores y herramientas de programación más sofisticadas en cluster de computadores. Programación La programación en cluster de computadores es más compleja por la implicación del programador en la distribución de datos y asignación de trabajo. Sin embargo, la programación en multiprocesadores puede resultar complicada en los casos en los que una sincronización errónea no es trivialmente detectada. Elección del modelo a utilizar Teniendo en cuenta la comparativa anterior, para el desarrollo de esta tesis se optó por la utilización de un modelo de programación de memoria compartida. Enfocándose en ciertos factores, de mayor importancia para el tesista, como la facilidad de programación de este modelo en comparación al distribuido con respecto a la distribución de la carga y en la comunicación, ya que en el modelo distribuido es necesario enviar datos a través de una red de interconexión. También sería recomendable mencionar el hecho de que la tecnología multi-núcleo, presenta una nueva gama de posibilidades para el desarrollo de aplicaciones por medio del cómputo paralelo, ya que ofrece nuevos niveles de desempeño, velocidad y eficiencia.

36 CAPÍTULO III. DESARROLLO Librería OpenMP En base a la utilización de un modelo de memoria compartida, se decidió trabajar con OpenMP, el cual es un modelo de programación portable y escalable que proporciona una interfaz simple y flexible para el desarrollo de aplicaciones paralelas para las plataformas que van desde los computadores de escritorio hasta los supercomputadores. Cuando se incluye una directiva OpenMP esto implica que se incluye una sincronización obligatoria en todo el bloque. En el fondo, el bloque de código se enmarcará dentro de una región paralela y se lanzarán hilos según las características que nos dé la directiva, y al final de ella habrá una barrera para la sincronización de los diferentes hilos. Este tipo de ejecución se denomina fork-join. Figura 3.1: Modelo Fork-Join

37 CAPÍTULO III. DESARROLLO Directivas A continuación se presentarán algunas directivas de compilación (o pragmas), que proporciona OpenMP para la construcción de una región paralela: parallel: Esta directiva nos indica que la parte de código que la comprende puede ser ejecutada por varios hilos. single: La parte de código que define esta directiva, sólo la puede ejecutar un único hilo de todos los lanzados, y no tiene que ser obligatoriamente el hilo padre. for: Esta directiva permite que las iteraciones del ciclo asociado sean ejecutadas en paralelo. critical: Sólo un hilo puede estar en esta sección. Sirve para definir regiones críticas Funciones También se presentarán algunas funciones propias de OpenMP para el desarrollo de aplicaciones paralelas: omp set num threads: Fija el número de hilos simultáneos. omp get num threads: Devuelve el número de hilos en ejecución. omp get thread num: Devuelve el número que identifica al thread (este valor está entre 0 y omp get num threads()-1). omp get max threads: Devuelve el número máximo de hilos que lanzará nuestro programa en las zonas paralelas.

38 CAPÍTULO III. DESARROLLO Herramientas de Programación A continuación se mencionarán las herramientas que fueron necesarias para poder desarrollar la aplicación propuesta para esta tesis Lenguajes de Programación Con respecto al uso de la librería de programación paralela OpenMP, solo permite añadir concurrencia a los programas escritos en los lenguajes de programación C, C++ y Fortran. Por ende fue necesario seleccionar alguno de los lenguajes mencionados para la construcción de la aplicación. Se ha optado por el uso del lenguaje C para la paralelización de la aplicación a realizar y por medio del uso de la librería OpenMP. Se eligió este lenguaje porque es más conocido por el tesista, y además de contar con una amplia documentación y bibliografía. Lenguaje C Es un lenguaje de programación de propósito general de nivel medio que ofrece economía sintáctica, control de flujo, estructuras sencillas y un buen conjunto de operadores. Dentro de sus características se pueden destacar: Un núcleo del lenguaje simple, con funcionalidades añadidas importantes, como funciones matemáticas y de manejo de archivos, proporcionadas por liberías. Es un lenguaje muy flexible que permite programar con múltiples estilos. Uno de los más empleados es el estructurado. Un sistema de tipos que impide operaciones sin sentido. Acceso a memoria de bajo nivel mediante el uso de punteros.

39 CAPÍTULO III. DESARROLLO 28 Un conjunto reducido de palabras clave. Cabe mencionar que para el desarrollo de la aplicación fue necesario trabajar con archivos en formato de Microsoft Excel (.xls o.xlsx), tanto para la entrada como la salida de datos. Y como el lenguaje C no permite de forma nativa trabajar con estos archivos, se optó por utilizar el lenguaje de programación Perl, ya que provee de módulos específicos para el manejo de este tipo de archivos. Lenguaje Perl Es un lenguaje de programación que toma características del lenguaje C, del lenguaje interpretado shell (sh), AWK, sed, Lisp y, en un grado inferior, de muchos otros lenguajes de programación. Perl es un lenguaje imperativo, con variables, expresiones, asignaciones, bloques de código delimitados por llaves, estructuras de control y subrutinas. Los módulos de Perl (ver Anexo A para la instalacion de los módulos de Perl) que permiten el manejo de archivos en formato de microsoft excel son los siguientes: Spreadsheet::Read: Permite leer datos de las hojas de cálculo. Spreadsheet::XLSX: Permite leer archivos en el formato de Microsoft Excel Spreadsheet::Write: Permite la escritura en archivos CSV or XLS (Microsoft Excel). Spreadsheet::WriteExcel: Permite la escritura mulit-plataforma en archivos Excel.

40 CAPÍTULO III. DESARROLLO Diseñador de Interfaz Gráfica También se consideró apropiado el diseño de una interfaz gráfica con la finalidad de proveer al usuario final, de una interfaz simple e intuitiva para poder interactuar con la aplicación de manera transparente y cómoda. Y por ello para la construcción de la interfaz gráfica se decidió ocupar como manejador de interfaces el programa Glade. Glade Glade (o Glade Interface Designer) es una herramienta de desarrollo visual de interfaces gráficas mediante GTK/GNOME. Es independiente del lenguaje de programación y predeterminadamente, ya que no genera código fuente sino un archivo xml. La posibilidad de generar automáticamente código fuente fue discontinuada desde Glade-3. Algunas características de esta herramienta son: Deshacer y rehacer disponible para todas las operaciones. Permite abrir varios proyectos simultáneamente. Ayuda contextual mediante DevHelp. Las herramientas de Glade (paleta, editor, etc.) son implementadas como widgets.

41 CAPÍTULO III. DESARROLLO Aplicaciones de Prueba Previo a empezar con el desarrollo de la aplicación es conveniente realizar en un principio programas de prueba, con el fin de familiarizarse poco a poco con las herramientas de programación necesarias para la construcción de la aplicación. A continuación se mostrarán algunos ejemplos de prueba realizados con los lenguajes utilizados: Utilizando OpenMP Con respecto al uso de esta librería se trabajó con libgomp, la cual es una implementación de la GNU para la API (interfaz de programación de aplicaciones) de OpenMP. Forma de Compilación También se utilizó el compilador gcc el cual agrupa un conjunto de compiladores creados por el proyecto GNU. GCC es software libre y lo distribuye la FSF bajo la licencia GPL. El comando de compilación de acuerdo a la implementación utilizada es el siguiente: gcc -fopenmp nombre archivo.c Al momento de compilar debe ser usada la bandera fopenmp como se puede apreciar en el comando anterior. Ya que esto permite el uso de las directivas de OpenMP. Posteriormente se mostrará el código fuente de un ejemplo realizado y su correspondiente ejecución, donde se lanzan dos hilos dentro de la región paralela y cada uno de ellos imprime por pantalla su identificador.

42 CAPÍTULO III. DESARROLLO 31 Figura 3.2: Código Fuente del Programa prueba.c Figura 3.3: Ejecución del Programa prueba.c A continuación se presentará otro ejemplo con su respectivo código fuente y su ejecución, pero esta vez, al crear la región paralela se utilizó un constructor for que especifica que

43 CAPÍTULO III. DESARROLLO 32 las iteraciones del ciclo asociado deben ser ejecutadas en paralelo. Y además se agregó la cláusula schedule la cual especifica cuántas iteraciones del ciclo for son divididas entre el número de hilos, para este caso el número de iteraciones es de tamaño fijo ya que se usó la categoría static. Y para este ejemplo se ejecutarán dos iteraciones simultáneas y el número de iteraciones que atenderá cada hilo será de dos, tomando un ciclo que en total realiza cuatro iteraciones. Figura 3.4: Código Fuente del Programa for.c

44 CAPÍTULO III. DESARROLLO 33 Figura 3.5: Ejecución del Programa for.c Utilizando Perl En esta sección se mostrarán algunos ejemplos realizados con el lenguaje Perl, que permiten tanto la lectura como escritura de datos sobre archivos excel. Para el caso de la lectura de un archivo excel, primeramente es necesario incluir los módulos de perl que permiten la lectura de estos datos, para posteriormente abrir el archivo excel con la función ReadData y de esta forma se puede acceder a cualquiera de las celdas de la hoja de cálculo. En el código que se mostrará a continuación se presenta la manera de accesar y leer el contenido de una celda en un fichero excel.

45 CAPÍTULO III. DESARROLLO 34 Figura 3.6: Código que permite leer datos en archivo excel Teniendo en cuenta el caso de la escritura en un archivo excel, también es necesario incluir los módulos de perl que permiten la escritura de estos datos, para posteriormente crear un archivo excel con el método new del módulo Spreadsheet::WriteExcel y con el uso del método write que permite acceder a cualquiera de las celdas de la hoja de cálculo para escribir en ella. En el código que se mostrará a continuación se presenta la creación de un archivo excel y su posterior escritura de datos en el.

46 CAPÍTULO III. DESARROLLO 35 Figura 3.7: Código que permite escribir datos en archivo excel Forma de ejecución Para la ejecución de scripts hechos en perl, se deberá ejecutar el siguiente comando: perl nombre archivo.pl Utilizando Glade La finalidad del uso del diseñador de interfaces Glade como se mencionó anteriormente consiste en brindar al usuario final, de una interfaz gráfica simple e intuitiva para interactuar con la aplicación.

47 CAPÍTULO III. DESARROLLO 36 A continuación se mostrará un ejemplo bastante sencillo, en el cual se crea una ventana, un contenedor y además se agrega una etiqueta dentro de la misma con el texto Hola Mundo. Figura 3.8: Ventana realizada con el programa Glade Una vez realizada la interfaz gráfica de la aplicación es necesario generar el código fuente de la misma, lo cual se realiza por medio del programa Glade, este código es producido en lenguaje C por lo que después se deberá compilar y de esta manera se podrá obtener el archivo ejecutable para poder interactuar con la interfaz realizada.

48 CAPÍTULO III. DESARROLLO Construcción de la Aplicación En breve se explicará como se desarrolló la aplicación que permitirá obtener el Cálculo de Índice de Similitud Estructural. Para ello se tratarán las fases de mayor importancia para la construcción de la aplicación. Antes de comenzar se presentará un diagrama de bloques, en el cual se podrán apreciar las tareas principales que se llevaron a cabo para el desarrollo de la aplicación. Figura 3.9: Diagrama de Bloques de la Aplicación Como se puede ver en el diagrama de la Figura 3.9, básicamente la aplicación consta de tres procesos, donde en los extremos por medio de scripts realizados en lenguaje Perl se leen y escriben los datos de los archivos en formato excel y en el centro del diagrama el programa en lenguaje C se encarga de tomar estos datos para realizar las operaciones pertinentes para la obtención de los resultados asociados al Cálculo de Similitud Estructural. La comunicación entre los procesos se realiza por medio de tuberías o Pipes, las cuales permiten que entre los procesos conectados la salida de cada elemento de un proceso pase a ser la entrada del siguiente.

49 CAPÍTULO III. DESARROLLO Entrada de Datos Para la entrada de datos se debe trabajar con tablas de input-output. La información de estas tablas se encuentran dentro de un archivo excel y donde cada tabla ocupa una hoja dentro del archivo. Figura 3.10: Formato de tabla Input-Output utilizada Cálculo de Similitud Estructural En lo referente a la parte de cálculos cabe mencionar que primeramente se realizó el algortimo secuencial, para tener mayor claridad de las operaciones que se necesitan para obtener el Cálculo de Índice de Similitud Estructural. Y también para reconocer que operaciones se podrían paralelizar. Con respecto a la obtención de las matrices de coeficientes técnicos, cabe mencionar que estas matrices deben calcularse para cada tabla de input-output existente, o sea cada tabla va a tener asociada una matriz de coeficientes técnicos con respecto a las funciones de producción y distribución.

50 CAPÍTULO III. DESARROLLO 39 Obtención Matriz de Coeficientes asociada a la Producción A continuación se explicará como se paralelizó esta tarea, utilizando un diagrama para ver como se distribuyó el trabajo entre los hilos, para el cálculo de la matriz de coeficientes técnicos asociado a la producción. Figura 3.11: Diagrama para la obtención de Matriz asociada a la Producción Como se puede ver en la Figura 3.11, cada hilo trabaja de forma simultánea sobre una columna de una tabla de input-output y se encarga de efectuar las operaciones correspondientes para obtener la matriz de coeficientes técnicos de la producción. Para explicar en mayor detalle lo anterior se tomará como referencia el hilo T k, donde 0 k N 1. El hilo representado por T k en particular se mueve por la columna k y va efectuando el siguiente cuociente, x ik /X k (donde el valor de k se mantiene y el valor de i varía entre 1 i n y además n representa el total de sectores) y de esta forma este hilo obtiene los coeficientes de la columna k pertenecientes a la matriz asociada a la producción.

51 CAPÍTULO III. DESARROLLO 40 Obtención Matriz de Coeficientes asociada a la Distribución Para el caso de la obtención de la matriz de coeficientes técnicos asociada a la distribución, también se utilizará un diagrama para explicar el trabajo que realizan los hilos para completar esta tarea. Figura 3.12: Diagrama para la obtención de Matriz asociada a la Distribución Como se puede apreciar en la Figura 3.12, cada hilo trabaja de forma simultánea sobre una fila de una tabla de input-output y se encarga de efectuar las operaciones correspondientes para obtener la matriz de coeficientes técnicos de distribución. Al igual que el diagrama anterior se tomará como referencia el hilo T k para explicar esta tarea en profundidad, donde 0 k N 1. El hilo referenciado por T k en este caso se mueve por la fila k y va efectuando el siguiente cuociente, x kj /X k (donde el valor de k se mantiene y el valor de j varía entre 1 j n y además n representa el total de sectores) y de esta forma este hilo obtiene los coeficientes de la fila k pertenecientes a la matriz asociada a la distribución.

52 CAPÍTULO III. DESARROLLO 41 Obtención del Indicador de Lemasne Una vez calculadas las matrices de coeficientes técnicos, se puede proceder a realizar el Cálculo de Similitud Estructural, por medio del indicador de Lemasne. Previo a la explicación de la obtención del indicador de Lemasne cabe recalcar el hecho de que este cálculo es simétrico, o sea que si se calcula la similitud entre las matrices de coeficientes A i y A j (con i j) nos entrega el mismo resultado que entre A j y A i, con lo que se puede reducir el número de comparaciones a la mitad. Como se mencionaba anteriormente se debe realizar la comparación entre todas las matrices de coeficientes del mismo tipo (ya sean las de producción o distribución). Para conocer el número de comparaciones que deben realizarse tanto para las matrices de producción y distribución, se puede obtener de la siguiente combinatoria: Donde: N k = N! (N k)!k! (3.1) N representa el total de tablas de input-output. k para este caso toma el valor 2 ya que la comparación se realiza de a pares. Para explicar con mayor claridad la obtención de este cálculo, se presentará un digrama para mostrar como se paralelizó esta tarea.

4. Programación Paralela

4. Programación Paralela 4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios

Más detalles

Capítulo 5. Cliente-Servidor.

Capítulo 5. Cliente-Servidor. Capítulo 5. Cliente-Servidor. 5.1 Introducción En este capítulo hablaremos acerca de la arquitectura Cliente-Servidor, ya que para nuestra aplicación utilizamos ésta arquitectura al convertir en un servidor

Más detalles

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN Tabla de Contenidos LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN... 1 Tabla de Contenidos... 1 General... 2 Uso de los Lineamientos Estándares...

Más detalles

"Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios

Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios "Diseño, construcción e implementación de modelos matemáticos para el control automatizado de inventarios Miguel Alfonso Flores Sánchez 1, Fernando Sandoya Sanchez 2 Resumen En el presente artículo se

Más detalles

PRACTICA NO.24: CLUSTER

PRACTICA NO.24: CLUSTER PRACTICA NO.24: CLUSTER Jose Arturo Beltre Castro 2013-1734 ING. JOSE DOÑE Sistemas Operativos III Cluster El término clúster se aplica a los conjuntos o conglomerados de computadoras construidos mediante

Más detalles

Trabajo TICO Unidad 2: Sistemas Operativos. Guillermo Jarne Bueno.

Trabajo TICO Unidad 2: Sistemas Operativos. Guillermo Jarne Bueno. Un Sistema Operativo es el software encargado de ejercer el control y coordinar el uso del hardware entre diferentes programas de aplicación y los diferentes usuarios. Es un administrador de los recursos

Más detalles

computadoras que tienen este servicio instalado se pueden publicar páginas web tanto local como remotamente.

computadoras que tienen este servicio instalado se pueden publicar páginas web tanto local como remotamente. Investigar Qué es un IIS? Internet Information Services o IIS es un servidor web y un conjunto de servicios para el sistema operativo Microsoft Windows. Originalmente era parte del Option Pack para Windows

Más detalles

Arquitectura de sistema de alta disponibilidad

Arquitectura de sistema de alta disponibilidad Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los

Más detalles

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS 4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia

Más detalles

Introducción a la Firma Electrónica en MIDAS

Introducción a la Firma Electrónica en MIDAS Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento

Más detalles

Sistemas Operativos Windows 2000

Sistemas Operativos Windows 2000 Sistemas Operativos Contenido Descripción general 1 Funciones del sistema operativo 2 Características de 3 Versiones de 6 Sistemas Operativos i Notas para el instructor Este módulo proporciona a los estudiantes

Más detalles

Vielka Mari Utate Tineo 2013-1518. Instituto Tecnológico de las Américas ITLA. Profesor José Doñé PRATICA NO. 24, CLUSTER

Vielka Mari Utate Tineo 2013-1518. Instituto Tecnológico de las Américas ITLA. Profesor José Doñé PRATICA NO. 24, CLUSTER Vielka Mari Utate Tineo 2013-1518 Instituto Tecnológico de las Américas ITLA Profesor José Doñé PRATICA NO. 24, CLUSTER CREAR UN HOWTO CON EL PROCEDIMIENTO NECESARIO PARA LA IMPLEMENTACION DE CLUSTER DE

Más detalles

Nicolás Zarco Arquitectura Avanzada 2 Cuatrimestre 2011

Nicolás Zarco Arquitectura Avanzada 2 Cuatrimestre 2011 Clusters Nicolás Zarco Arquitectura Avanzada 2 Cuatrimestre 2011 Introducción Aplicaciones que requieren: Grandes capacidades de cómputo: Física de partículas, aerodinámica, genómica, etc. Tradicionalmente

Más detalles

DISCOS RAID. Se considera que todos los discos físicos tienen la misma capacidad, y de no ser así, en el que sea mayor se desperdicia la diferencia.

DISCOS RAID. Se considera que todos los discos físicos tienen la misma capacidad, y de no ser así, en el que sea mayor se desperdicia la diferencia. DISCOS RAID Raid: redundant array of independent disks, quiere decir conjunto redundante de discos independientes. Es un sistema de almacenamiento de datos que utiliza varias unidades físicas para guardar

Más detalles

1.1 EL ESTUDIO TÉCNICO

1.1 EL ESTUDIO TÉCNICO 1.1 EL ESTUDIO TÉCNICO 1.1.1 Definición Un estudio técnico permite proponer y analizar las diferentes opciones tecnológicas para producir los bienes o servicios que se requieren, lo que además admite verificar

Más detalles

Guía de uso del Cloud Datacenter de acens

Guía de uso del Cloud Datacenter de acens guíasdeuso Guía de uso del Cloud Datacenter de Calle San Rafael, 14 28108 Alcobendas (Madrid) 902 90 10 20 www..com Introducción Un Data Center o centro de datos físico es un espacio utilizado para alojar

Más detalles

Entre los más conocidos editores con interfaz de desarrollo tenemos:

Entre los más conocidos editores con interfaz de desarrollo tenemos: Herramientas de programación Para poder programar en ensamblador se precisa de algunas herramientas básicas, como un editor para introducir el código, un ensamblador para traducir el código a lenguaje

Más detalles

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA

Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Propuesta de Portal de la Red de Laboratorios Virtuales y Remotos de CEA Documento de trabajo elaborado para la Red Temática DocenWeb: Red Temática de Docencia en Control mediante Web (DPI2002-11505-E)

Más detalles

CAPITULO IV. HERRAMIENTAS DE CÓDIGO ABIERTO

CAPITULO IV. HERRAMIENTAS DE CÓDIGO ABIERTO CAPITULO IV. HERRAMIENTAS DE CÓDIGO ABIERTO En la actualidad la mayoría de las grandes empresas cuentan con un sin número de servicios que ofrecen a sus trabajadores y clientes. Muchos de estos servicios

Más detalles

Decisión: Indican puntos en que se toman decisiones: sí o no, o se verifica una actividad del flujo grama.

Decisión: Indican puntos en que se toman decisiones: sí o no, o se verifica una actividad del flujo grama. Diagrama de Flujo La presentación gráfica de un sistema es una forma ampliamente utilizada como herramienta de análisis, ya que permite identificar aspectos relevantes de una manera rápida y simple. El

Más detalles

CAPÍTULO 1 Instrumentación Virtual

CAPÍTULO 1 Instrumentación Virtual CAPÍTULO 1 Instrumentación Virtual 1.1 Qué es Instrumentación Virtual? En las últimas décadas se han incrementado de manera considerable las aplicaciones que corren a través de redes debido al surgimiento

Más detalles

Utilización del sistema operativo GNU/ Linux en las netbooks

Utilización del sistema operativo GNU/ Linux en las netbooks Utilización del sistema operativo GNU/ Linux en las netbooks El sistema operativo es la pieza de software básica de un sistema, que permite manejar los recursos de la computadora, abrir programas, manejar

Más detalles

Fundamentos del diseño 3ª edición (2002)

Fundamentos del diseño 3ª edición (2002) Unidades temáticas de Ingeniería del Software Fundamentos del diseño 3ª edición (2002) Facultad de Informática necesidad del diseño Las actividades de diseño afectan al éxito de la realización del software

Más detalles

SISTEMAS DE INFORMACIÓN II TEORÍA

SISTEMAS DE INFORMACIÓN II TEORÍA CONTENIDO: EL PROCESO DE DISEÑO DE SISTEMAS DISTRIBUIDOS MANEJANDO LOS DATOS EN LOS SISTEMAS DISTRIBUIDOS DISEÑANDO SISTEMAS PARA REDES DE ÁREA LOCAL DISEÑANDO SISTEMAS PARA ARQUITECTURAS CLIENTE/SERVIDOR

Más detalles

Microsoft Office 2010 Illustrated. Tipos de Software

Microsoft Office 2010 Illustrated. Tipos de Software Microsoft Office 2010 Illustrated Tipos de Software SOFTWARE Conjunto de instrucciones que le indican a la computadora que hacer. Existen tres tipos de software: Sofware de Aplicacion Sofware de Programacion

Más detalles

http://www.statum.biz http://www.statum.info http://www.statum.org

http://www.statum.biz http://www.statum.info http://www.statum.org ApiaMonitor Monitor de Infraestructura BPMS Por: Ing. Manuel Cabanelas Product Manager de Apia Manuel.Cabanelas@statum.biz http://www.statum.biz http://www.statum.info http://www.statum.org Abstract A

Más detalles

Utilidades de la base de datos

Utilidades de la base de datos Utilidades de la base de datos Desde esta opcion del menú de Access, podemos realizar las siguientes operaciones: Convertir Base de datos Compactar y reparar base de datos Administrador de tablas vinculadas

Más detalles

App para realizar consultas al Sistema de Información Estadística de Castilla y León

App para realizar consultas al Sistema de Información Estadística de Castilla y León App para realizar consultas al Sistema de Información Estadística de Castilla y León Jesús M. Rodríguez Rodríguez rodrodje@jcyl.es Dirección General de Presupuestos y Estadística Consejería de Hacienda

Más detalles

Arquitectura: Clusters

Arquitectura: Clusters Universidad Simón Bolívar Arquitectura: Clusters Integrantes: - Aquilino Pinto - Alejandra Preciado Definición Conjuntos o conglomerados de computadoras construidos mediante la utilización de hardware

Más detalles

CI Politécnico Estella

CI Politécnico Estella PROGRAMACIÓN DEL /ASIGNATURA DEPARTAMENTO: Informática GRUPO/CURSO: 1º AS / 2.014-2.015 / ASIGNATURA: ISOP (IMPLANTACIÓN DE SISTEMAS OPERATIVOS) PROFESOR: Mikel Villanueva Erdozain 1. SÍNTESIS DE LA PROGRAMACIÓN

Más detalles

Maxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd

Maxpho Commerce 11. Gestión CSV. Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd Maxpho Commerce 11 Gestión CSV Fecha: 20 Septiembre 2011 Versión : 1.1 Autor: Maxpho Ltd Índice general 1 - Introducción... 3 1.1 - El archivo CSV... 3 1.2 - Módulo CSV en Maxpho... 3 1.3 - Módulo CSV

Más detalles

Adelacu Ltda. www.adelacu.com Fono +562-218-4749. Graballo+ Agosto de 2007. Graballo+ - Descripción funcional - 1 -

Adelacu Ltda. www.adelacu.com Fono +562-218-4749. Graballo+ Agosto de 2007. Graballo+ - Descripción funcional - 1 - Graballo+ Agosto de 2007-1 - Índice Índice...2 Introducción...3 Características...4 DESCRIPCIÓN GENERAL...4 COMPONENTES Y CARACTERÍSTICAS DE LA SOLUCIÓN...5 Recepción de requerimientos...5 Atención de

Más detalles

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática

Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción

Más detalles

CAPÍTULO 3 VISUAL BASIC

CAPÍTULO 3 VISUAL BASIC CAPÍTULO 3 VISUAL BASIC 3.1 Visual Basic Microsoft Visual Basic es la actual y mejor representación del viejo lenguaje BASIC, le proporciona un sistema completo para el desarrollo de aplicaciones para

Más detalles

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos.

No se requiere que los discos sean del mismo tamaño ya que el objetivo es solamente adjuntar discos. RAIDS MODO LINEAL Es un tipo de raid que muestra lógicamente un disco pero se compone de 2 o más discos. Solamente llena el disco 0 y cuando este está lleno sigue con el disco 1 y así sucesivamente. Este

Más detalles

Capítulo 1 Documentos HTML5

Capítulo 1 Documentos HTML5 Capítulo 1 Documentos HTML5 1.1 Componentes básicos HTML5 provee básicamente tres características: estructura, estilo y funcionalidad. Nunca fue declarado oficialmente pero, incluso cuando algunas APIs

Más detalles

Introducción a las redes de computadores

Introducción a las redes de computadores Introducción a las redes de computadores Contenido Descripción general 1 Beneficios de las redes 2 Papel de los equipos en una red 3 Tipos de redes 5 Sistemas operativos de red 7 Introducción a las redes

Más detalles

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas:

Los mayores cambios se dieron en las décadas de los setenta, atribuidos principalmente a dos causas: SISTEMAS DISTRIBUIDOS DE REDES 1. SISTEMAS DISTRIBUIDOS Introducción y generalidades La computación desde sus inicios ha sufrido muchos cambios, desde los grandes equipos que permitían realizar tareas

Más detalles

Bases de datos en Excel

Bases de datos en Excel Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Bases de datos en Excel Hojas de cálculo Tema 5 Bases de datos en Excel Hasta ahora hemos usado Excel básicamente para realizar cálculos

Más detalles

CAPÍTULO 2 Sistemas De Base De Datos Multiusuarios

CAPÍTULO 2 Sistemas De Base De Datos Multiusuarios CAPÍTULO 2 Sistemas De De Multiusuarios Un sistema multiusuario es un sistema informático que da servicio, manera concurrente, a diferentes usuarios mediante la utilización compartida sus recursos. Con

Más detalles

Workflows? Sí, cuántos quiere?

Workflows? Sí, cuántos quiere? Workflows? Sí, cuántos quiere? 12.11.2006 Servicios Profesionales Danysoft Son notables los beneficios que una organización puede obtener gracias al soporte de procesos de negocios que requieran la intervención

Más detalles

1 ÍNDICE... 3 Instalación... 4 Proceso de instalación en red... 6 Solicitud de Código de Activación... 11 Activación de Licencia... 14 2 3 REQUERIMIENTOS TÉCNICOS E INSTALACIÓN Requerimientos Técnicos

Más detalles

SEGURIDAD Y PROTECCION DE FICHEROS

SEGURIDAD Y PROTECCION DE FICHEROS SEGURIDAD Y PROTECCION DE FICHEROS INTEGRIDAD DEL SISTEMA DE ARCHIVOS ATAQUES AL SISTEMA PRINCIPIOS DE DISEÑO DE SISTEMAS SEGUROS IDENTIFICACIÓN DE USUARIOS MECANISMOS DE PROTECCIÓN Y CONTROL INTEGRIDAD

Más detalles

http://www.nicasoft.com.ni

http://www.nicasoft.com.ni BSC-RH es un sistema automatizado de planificación estratégica y gestión, utilizado en empresas para direccionar las actividades del negocio a la visión y estrategia de la organización. Mejora la comunicación

Más detalles

Novedades en Q-flow 3.02

Novedades en Q-flow 3.02 Novedades en Q-flow 3.02 Introducción Uno de los objetivos principales de Q-flow 3.02 es adecuarse a las necesidades de grandes organizaciones. Por eso Q-flow 3.02 tiene una versión Enterprise que incluye

Más detalles

SCT3000 95. Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A. microtes@arrakis.es

SCT3000 95. Software para la calibración de transductores de fuerza. Versión 3.5. Microtest S.A. microtes@arrakis.es SCT3000 95 Versión 3.5 Software para la calibración de transductores de fuerza. Microtest S.A. microtes@arrakis.es Introducción El programa SCT3000 95, es un sistema diseñado para la calibración automática

Más detalles

Unidad III. Software para la administración de proyectos.

Unidad III. Software para la administración de proyectos. Unidad III Software para la administración de proyectos. 3.1 Herramientas de software para administrar proyectos. El software de administración de proyectos es un concepto que describe varios tipos de

Más detalles

Una computadora de cualquier forma que se vea tiene dos tipos de componentes: El Hardware y el Software.

Una computadora de cualquier forma que se vea tiene dos tipos de componentes: El Hardware y el Software. ARQUITECTURA DE LAS COMPUTADORAS QUE ES UNA COMPUTADORA (UN ORDENADOR)? Existen numerosas definiciones de una computadora, entre ellas las siguientes: 1) Una computadora es un dispositivo capaz de realizar

Más detalles

La Pirámide de Solución de TriActive TRICENTER

La Pirámide de Solución de TriActive TRICENTER Información sobre el Producto de TriActive: Página 1 Documento Informativo La Administración de Sistemas Hecha Simple La Pirámide de Solución de TriActive TRICENTER Información sobre las Soluciones de

Más detalles

Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre.

Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre. Alumna: Adriana Elizabeth Mendoza Martínez. Grupo: 303. P.S.P. Miriam De La Rosa Díaz. Carrera: PTB. en Informática 3er Semestre. Tema: Sistemas Subtema: Base de Datos. Materia: Manejo de aplicaciones

Más detalles

Módulos: Módulo 1. Hardware & Arquitectura de sistemas - 20 Horas

Módulos: Módulo 1. Hardware & Arquitectura de sistemas - 20 Horas Módulos: Módulo 1 Hardware & Arquitectura de sistemas - 20 Horas Este módulo permite conocer y configurar los elementos básicos del hardware del sistema, como también otros componentes adicionales como

Más detalles

Tema: INSTALACIÓN Y PARTICIONAMIENTO DE DISCOS DUROS.

Tema: INSTALACIÓN Y PARTICIONAMIENTO DE DISCOS DUROS. 1 Facultad: Ingeniería Escuela: Electrónica Asignatura: Arquitectura de computadoras Lugar de ejecución: Lab. de arquitectura de computadoras, edif. de electrónica. Tema: INSTALACIÓN Y PARTICIONAMIENTO

Más detalles

UNIVERSIDAD DE SALAMANCA

UNIVERSIDAD DE SALAMANCA UNIVERSIDAD DE SALAMANCA FACULTAD DE CIENCIAS INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS Resumen del trabajo práctico realizado para la superación de la asignatura Proyecto Fin de Carrera. TÍTULO SISTEMA

Más detalles

CAPÍTULO I. Sistemas de Control Distribuido (SCD).

CAPÍTULO I. Sistemas de Control Distribuido (SCD). 1.1 Sistemas de Control. Un sistema es un ente cuya función es la de recibir acciones externas llamadas variables de entrada que a su vez provocan una o varias reacciones como respuesta llamadas variables

Más detalles

Entidad Formadora: Plan Local De Formación Convocatoria 2010

Entidad Formadora: Plan Local De Formación Convocatoria 2010 Entidad Formadora: Enterprise Architect Comenzando Puede iniciar Enterprise Architect desde el ícono que se creó en su escritorio de Windows durante la instalación, o alternativamente: 1. Abrir el menú

Más detalles

Informática 4º ESO Tema 1: Sistemas Informáticos. Sistemas Operativos (Parte 2)

Informática 4º ESO Tema 1: Sistemas Informáticos. Sistemas Operativos (Parte 2) 1. Qué es un sistema operativo?...2 2. Funciones de los sistemas operativos...2 3. Windows...2 3.1. La interfaz gráfica...2 3.2. La administración y los usuarios...3 3.3. El sistema de archivos...3 3.4.

Más detalles

Análisis de los datos

Análisis de los datos Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Análisis de los datos Hojas de cálculo Tema 6 Análisis de los datos Una de las capacidades más interesantes de Excel es la actualización

Más detalles

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3

UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 INTRODUCCIÓN El elemento hardware de un sistema básico de proceso de datos se puede estructurar en tres partes claramente diferenciadas en cuanto a sus funciones:

Más detalles

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE

PRUEBAS DE SOFTWARE TECNICAS DE PRUEBA DE SOFTWARE PRUEBAS DE SOFTWARE La prueba del software es un elemento crítico para la garantía de la calidad del software. El objetivo de la etapa de pruebas es garantizar la calidad del producto desarrollado. Además,

Más detalles

Ingeniería de Software. Pruebas

Ingeniería de Software. Pruebas Ingeniería de Software Pruebas Niveles de prueba Pruebas unitarias Niveles Pruebas de integración Pruebas de sistema Pruebas de aceptación Alpha Beta Niveles de pruebas Pruebas unitarias Se enfocan en

Más detalles

Sistema de marketing de proximidad

Sistema de marketing de proximidad Dizan Vasquez Propuesta de proyecto Sistema de marketing de proximidad ACME México Dizan Vasquez Índice general 1. Descripción 3 2. Resúmen ejecutivo 4 2.1. Objetivo.................................................

Más detalles

Capítulo I. Definición del problema y objetivos de la tesis. En la actualidad Internet se ha convertido en una herramienta necesaria para todas

Capítulo I. Definición del problema y objetivos de la tesis. En la actualidad Internet se ha convertido en una herramienta necesaria para todas Capítulo I Definición del problema y objetivos de la tesis 1.1 Introducción En la actualidad Internet se ha convertido en una herramienta necesaria para todas las personas ya que nos permite realizar diferentes

Más detalles

IES Abyla. Departamento de Informática. Sistemas Operativos

IES Abyla. Departamento de Informática. Sistemas Operativos Sistemas Operativos Definición y funciones básicas El Sistema Operativo es el software que permite y simplifica el uso del ordenador (hardware). Sus funciones principales son: Arrancar el ordenador y controlar

Más detalles

CAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar

CAPITULO 4. Requerimientos, Análisis y Diseño. El presente capítulo explica los pasos que se realizaron antes de implementar CAPITULO 4 Requerimientos, Análisis y Diseño El presente capítulo explica los pasos que se realizaron antes de implementar el sistema. Para esto, primero se explicarán los requerimientos que fueron solicitados

Más detalles

Capítulo 12: Indexación y asociación

Capítulo 12: Indexación y asociación Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación

Más detalles

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y

Capítulo VI. Conclusiones. En este capítulo abordaremos la comparación de las características principales y Capítulo VI Conclusiones En este capítulo abordaremos la comparación de las características principales y de las ventajas cada tecnología Web nos ofrece para el desarrollo de ciertas aplicaciones. También

Más detalles

PROYECTOS, FORMULACIÓN Y CRITERIOS DE EVALUACIÓN

PROYECTOS, FORMULACIÓN Y CRITERIOS DE EVALUACIÓN PROYECTOS, FORMULACIÓN Y CRITERIOS DE EVALUACIÓN GESTIÓN DE PROYECTOS CON PLANNER AVC APOYO VIRTUAL PARA EL CONOCIMIENTO GESTIÓN DE PROYECTOS CON PLANNER Planner es una poderosa herramienta de software

Más detalles

ADMINISTRACIÓN CENTRALIZADA DELL POWERVAULT DL2000 CON TECNOLOGÍA SYMANTEC

ADMINISTRACIÓN CENTRALIZADA DELL POWERVAULT DL2000 CON TECNOLOGÍA SYMANTEC ADMINISTRACIÓN CENTRALIZADA DELL POWERVAULT DL2000 CON TECNOLOGÍA SYMANTEC RESUMEN EJECUTIVO Es un método ideal para que cualquier departamento de TI logre realizar respaldos y restauraciones más rápidas

Más detalles

Guia para examen de Sistemas Operativos Para primer parcial Febrero 2013 Revisión 2 Ing. Julio Cesar Gonzalez Cervantes

Guia para examen de Sistemas Operativos Para primer parcial Febrero 2013 Revisión 2 Ing. Julio Cesar Gonzalez Cervantes Guia para examen de Sistemas Operativos Para primer parcial Febrero 2013 Revisión 2 Ing. Julio Cesar Gonzalez Cervantes Qué es un software comercial? Es el software que las compañías cobran por su producto

Más detalles

Tema 4. Gestión de entrada/salida

Tema 4. Gestión de entrada/salida Tema 4. Gestión de entrada/salida 1. Principios de la gestión de E/S. 1.Problemática de los dispositivos de E/S. 2.Objetivos generales del software de E/S. 3.Principios hardware de E/S. 1. E/S controlada

Más detalles

Figura 1. Símbolo que representa una ALU. El sentido y la funcionalidad de las señales de la ALU de la Figura 1 es el siguiente:

Figura 1. Símbolo que representa una ALU. El sentido y la funcionalidad de las señales de la ALU de la Figura 1 es el siguiente: Departamento de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Antioquia Arquitectura de Computadores y Laboratorio ISI355 (2011 2) Práctica No. 1 Diseño e implementación de una unidad aritmético

Más detalles

I INTRODUCCIÓN. 1.1 Objetivos

I INTRODUCCIÓN. 1.1 Objetivos I INTRODUCCIÓN 1.1 Objetivos En el mundo de la informática, la auditoría no siempre es aplicada en todos las empresas, en algunos de los casos son aplicadas por ser impuestas por alguna entidad reguladora,

Más detalles

INFORMÁTICA IE. Términos a conocer y conceptos básicos. World Wide Web (WWW):

INFORMÁTICA IE. Términos a conocer y conceptos básicos. World Wide Web (WWW): INFORMÁTICA IE MÓDULO INTERNET Términos a conocer y conceptos básicos World Wide Web (WWW): Digamos, simplemente, que es un sistema de información, el sistema de información propio de Internet. Sus características

Más detalles

Formularios. Formularios Diapositiva 1

Formularios. Formularios Diapositiva 1 Formularios Crear un formulario utilizando el Asistente para formularios Modificación en vista Diseño Adición de Controles a un Formulario Adición de un Subformulario a un formulario Formularios Diapositiva

Más detalles

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente

Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.

Más detalles

K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2

K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2 K2BIM Plan de Investigación - Comparación de herramientas para la parametrización asistida de ERP Versión 1.2 Historia de revisiones Fecha VersiónDescripción Autor 08/10/2009 1.0 Creación del documento.

Más detalles

Sistema de SaaS (Software as a Service) para centros educativos

Sistema de SaaS (Software as a Service) para centros educativos Sistema de SaaS (Software as a Service) para centros educativos Definiciones preliminares: Qué es SaaS? SaaS (1) es un modelo de distribución del software que permite a los usuarios el acceso al mismo

Más detalles

QUERCUS PRESUPUESTOS MANUAL DEL USO

QUERCUS PRESUPUESTOS MANUAL DEL USO QUERCUS PRESUPUESTOS MANUAL DEL USO 2 Tabla de Contenido 1 Introducción 1 1.1 General 1 1.1.1 Que es Quercus Presupuestos? 1 1.1.2 Interfaz 1 1.1.3 Árbol de Navegación 2 1.1.4 Estructura de Datos de un

Más detalles

BASES DE DATOS OFIMÁTICAS

BASES DE DATOS OFIMÁTICAS BASES DE DATOS OFIMÁTICAS Qué es una Bases de Datos Ofimática?. En el entorno de trabajo de cualquier tipo de oficina ha sido habitual tener un archivo con gran parte de la información necesaria para el

Más detalles

Resolución de problemas en paralelo

Resolución de problemas en paralelo Resolución de problemas en paralelo Algoritmos Paralelos Tema 1. Introducción a la computación paralela (segunda parte) Vicente Cerverón Universitat de València Resolución de problemas en paralelo Descomposición

Más detalles

Software Computacional y su clasificación

Software Computacional y su clasificación Software Computacional y su clasificación Capítulo 5 El software En modo sencillo el software permite que las personas puedan contarle a la computadora cierto tipo de problemas y que ésta a su vez le ofrezca

Más detalles

Desarrollo de un cluster computacional para la compilación de. algoritmos en paralelo en el Observatorio Astronómico.

Desarrollo de un cluster computacional para la compilación de. algoritmos en paralelo en el Observatorio Astronómico. Desarrollo de un cluster computacional para la compilación de algoritmos en paralelo en el Observatorio Astronómico. John Jairo Parra Pérez Resumen Este artículo muestra cómo funciona la supercomputación

Más detalles

Studium, Campus Virtual de la Universidad de Salamanca.

Studium, Campus Virtual de la Universidad de Salamanca. Studium, Campus Virtual de la Universidad de Salamanca. Contenidos 1 Qué es Studium 2 Instalación de Studium en USAL 3 Atención a los usuarios 4 Instalación Moodle. MoodleWindowsInstaller 5 Moodle portable

Más detalles

1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE

1.4.1.2. Resumen... 1.4.2. ÁREA DE FACTURACIÓN::INFORMES::Pedidos...27 1.4.2.1. Detalle... 1.4.2.2. Resumen... 1.4.3. ÁREA DE MANUAL DE USUARIO DE ABANQ 1 Índice de contenido 1 ÁREA DE FACTURACIÓN......4 1.1 ÁREA DE FACTURACIÓN::PRINCIPAL...4 1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA...4 1.1.1.1. ÁREA DE FACTURACIÓN::PRINCIPAL::EMPRESA::General...4

Más detalles

Oficina Online. Manual del administrador

Oficina Online. Manual del administrador Oficina Online Manual del administrador 2/31 ÍNDICE El administrador 3 Consola de Administración 3 Administración 6 Usuarios 6 Ordenar listado de usuarios 6 Cambio de clave del Administrador Principal

Más detalles

Procesos. Bibliografía. Threads y procesos. Definiciones

Procesos. Bibliografía. Threads y procesos. Definiciones Procesos Prof. Mariela Curiel Bibliografía A. Tanembaum & M. Van Steen. Sistemas Distribuidos. Principios y Paradigmas. 2da. Edición. Smith & Nair. The Architecture of Virtual Machines. IEEE Computer.

Más detalles

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII GUIA DISPONIBLE EN: http://preparadorivan.blogspot.com/ - http://preparadormssi.50webs.com/inicio.html La World Wide Web o la Web, es una de las múltiples

Más detalles

Emerson Network Energy Center, ENEC Lite, es. Multilenguaje. Navegación intuitiva. Multiusuario. Seguridad. Mantenimiento y control

Emerson Network Energy Center, ENEC Lite, es. Multilenguaje. Navegación intuitiva. Multiusuario. Seguridad. Mantenimiento y control Emerson Network Energy Center, ENEC Lite, es una aplicación para la gestión remota y local de sistemas de energía, baterías, corriente alterna, grupos electrógenos, SAIs, sistemas de refrigeración y demás

Más detalles

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo. GLOSARIO Actor: Un actor es un usuario del sistema. Esto incluye usuarios humanos y otros sistemas computacionales. Un actor usa un Caso de Uso para ejecutar una porción de trabajo de valor para el negocio.

Más detalles

Soluciones innovadoras para optimizar su infraestructura TI. Virtualización con el sistema operativo i, PowerVM y Power Systems de IBM

Soluciones innovadoras para optimizar su infraestructura TI. Virtualización con el sistema operativo i, PowerVM y Power Systems de IBM Soluciones innovadoras para optimizar su infraestructura TI Virtualización con el sistema operativo i, PowerVM y Power Systems de IBM Características principales Tenga éxito en su negocio simplemente con

Más detalles

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10

CONCEPTOS BASICOS. Febrero 2003 Página - 1/10 CONCEPTOS BASICOS Febrero 2003 Página - 1/10 EL ESCRITORIO DE WINDOWS Se conoce como escritorio la zona habitual de trabajo con windows, cuando iniciamos windows entramos directamente dentro del escritorio,

Más detalles

forma de entrenar a la nuerona en su aprendizaje.

forma de entrenar a la nuerona en su aprendizaje. Sistemas expertos e Inteligencia Artificial,Guía5 1 Facultad : Ingeniería Escuela : Computación Asignatura: Sistemas expertos e Inteligencia Artificial Tema: SISTEMAS BASADOS EN CONOCIMIENTO. Objetivo

Más detalles

Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos:

Presentaciones. Con el estudio de esta Unidad pretendemos alcanzar los siguientes objetivos: UNIDAD 8 Presentaciones Reunión. (ITE. Banco de imágenes) as presentaciones son documentos formados por una sucesión de páginas, llamadas diapositivas, que transmiten información estructurada de manera

Más detalles

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio).

1 GLOSARIO. Actor: Es un consumidor (usa) del servicio (persona, sistema o servicio). 1 GLOSARIO A continuación se definen, en orden alfabético, los conceptos básicos que se han abordado a lo largo del desarrollo de la metodología para la gestión de requisitos bajo la Arquitectura Orientada

Más detalles

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA

TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA Programa: Algoritmo (secuencia no ambigua, finita y ordenada de instrucciones para la resolución de un determinado problema) traducido

Más detalles

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX

COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX En este manual se presenta el proceso de configuración de una Maquina Virtual en VirtualBox, que será utilizada para instalar un Servidor

Más detalles

Microsoft Dynamics Sure Step Fundamentos

Microsoft Dynamics Sure Step Fundamentos Fundamentos 22-09-2015/Serie Microsoft Dynamics Sure Step Fases Diagnóstico Análisis - Diseño/ Septiembre 2015 Rosana Sánchez CCRM: @rosana-sanchez-2 Twitter: @rosansasanchez6 Correo: ingrossanbar@hotmail.com

Más detalles

MACROS. Automatizar tareas a través del uso de las macros.

MACROS. Automatizar tareas a través del uso de las macros. OBJETIVOS MACROS Definiciones Automatizar tareas a través del uso de las macros. Grabar Ejecutar Manipular macros. Tipos de Macros en Excel Introducción Las operaciones tradicionales que se pueden realizar

Más detalles

Microsoft Access proporciona dos métodos para crear una Base de datos.

Microsoft Access proporciona dos métodos para crear una Base de datos. Operaciones básicas con Base de datos Crear una Base de datos Microsoft Access proporciona dos métodos para crear una Base de datos. Se puede crear una base de datos en blanco y agregarle más tarde las

Más detalles