PARADIGMA y LENGUAJES DE PROGRAMACIÓN
|
|
|
- Irene Arroyo Camacho
- hace 8 años
- Vistas:
Transcripción
1 CATEDRA CARRERA: PARADIGMA y LENGUAJES DE PROGRAMACIÓN LICENCIATURA EN SISTEMAS DE INFORMACION FACULTAD DE CIENCIAS EXACTAS QUIMICAS Y NATURALES UNIVERSIDAD NACIONAL DE MISIONES Año do Cuatrimestre
2 PARADIGMA y LENGUAJES DE PROGRAMACIÓN UNIDAD I: Programación Concurrente Algoritmos concurrentes, distribuidos y paralelos. Motivación y aspectos de la programación distribuida UNIDAD II: Metodología de programación paralela. Descomposición, asignación de procesadores. Modelos de sistemas paralelos. Modelos de programación paralela. Evaluación de rendimiento. UNIDAD III: Programación paralela. Computación orientada a redes. Variantes de sistemas cliente/servidor. La interfaz MPI. Programación en hebras con OpenMP. Introducción a la programación de hardware gráfico paralelo: CUDA
3 PARADIGMA y LENGUAJES DE PROGRAMACIÓN UNIDAD IV: Programación Funcional El paradigma funcional. Tipos de datos. Intervalos. Operadores Listas. Árboles. Evaluación perezosa. Estrategia y técnicas de la evaluación perezosa. Introducción al lenguaje Haskell UNIDAD V: Programación Lógica. El paradigma Lógico. Sintaxis y semántica. Lógica de primer Orden. Grafos, evaluación de expresiones. Unificación. Clausula Horn resolución SLD. Introducción al lenguaje Prolog.
4 UNIDAD I: Programación Concurrente La concurrencia es el acaecimiento de varios sucesos al mismo tiempo. Desde el punto de vista de la programación concurrente, se dice que dos sucesos son concurrentes si uno sucede entre el comienzo y el fin de otro.
5 UNIDAD I: Programación Concurrente La forma de ejecutar un programa concurrente puede variar en función del hardware disponible: Multiprogramación Sistemas con un único procesador. Los procesos deben compartir el tiempo de cómputo.
6 UNIDAD I: Programación Concurrente Multiproceso Sistemas donde hay varios procesadores. Es posible asignar diferentes procesadores a diferentes procesos.
7 Programación Concurrente IMPORTANTE: Notar que aunque se disponga de varios procesadores, es posible que el número de procesos de los programas que deben ejecutarse en ellos sobrepase el número de procesadores disponibles. En tal caso, podría necesitarse multiprogramación incluso aunque existiera multiproceso.
8 Programación Concurrente
9 En las ciencias de la computación, un algoritmo paralelo, es el que puede ser ejecutado por partes en el mismo instante de tiempo por varias unidades de procesamiento, para finalmente unir todas las partes y obtener el resultado.
10 Ejercicio: Realiza el producto escalar de dos vectores de forma paralela. El producto escalar de dos vectores se define la sumatoria del producto entre los elementos del vector
11 Solución:
12 Ejercicio: Crear un algoritmo que calcule todos los números primos entre 1 y 100
13 Ejercicio: Crear un algoritmo que calcule todos los números primos entre 1 y 100 Se podría dividir los números originales en subconjuntos y calcular los primos para cada uno de los subconjuntos de los números originales; al final, uniríamos todos los resultados y tendríamos la solución final del algoritmo.
14 Algunos algoritmos son fácilmente divisibles en partes, por el contrario, a veces los problemas no son tan fácilmente paralelizables (Metodologías)
15 Instrucciones atómicas e intercalación Los procesos se definen de forma similar a un procedimiento. Un proceso puede recibir parámetros, tanto por valor como por referencia. Estos últimos pueden ser compartidos por diferentes procesos (si la misma referencia es pasada a todos ellos). Por ejemplo, el siguiente fragmento de código en PascalFC define un proceso que escribe por pantalla el valor de una variable:
16 Instrucciones atómicas e intercalación Una vez definido un proceso es posible declarar una o varias variables de tipo proceso en la sección de declaración de variables del programa principal. En el ejemplo anterior, se podría considerar declarar dos variables de tipo proceso print, p1 y p2 de la siguiente manera:
17 Instrucciones atómicas e intercalación En ejecución, se crearán dos procesos que ejecutarán la misma secuencia de instrucciones. Éste no tiene porqué ser siempre el caso, y como se verá más adelante un programa puede contener procesos que ejecutan acciones diferentes. P.P. P1 P2
18 Instrucciones atómicas e intercalación Es importante notar que el orden en el que aparecen los procesos dentro de este bloque no es importante: los procesos se iniciarán en orden aleatorio. La ejecución del bloque no termina hasta que todos los procesos hayan terminado. A continuación se presenta el programa completo: P.P. P2 P1
19 Instrucciones atómicas e intercalación
20 Instrucciones atómicas e intercalación Cuando se desarrollan programas concurrentes es especialmente importante conocer la secuencia de instrucciones que se ejecutan. En el ejemplo anterior, el hecho de que los procesos p1 y p2 se ejecuten concurrentemente quiere decir que sus instrucciones pueden ejecutarse en cualquier orden. En principio, dado que cada uno de ellos ejecuta solamente una instrucción, podría pensarse que el programa sólo puede producir dos salidas diferentes:
21 Instrucciones atómicas e intercalación Sin embargo, este programa puede producir en total cuatro salidas diferentes: Como se puede observar, en las dos últimas ejecuciones se intercalan las salidas de los procesos. Esto se debe a que la instrucción write, cuando recibe dos (o más) argumentos, se ejecuta realmente como dos (o más) instrucciones de escritura.
22 Instrucciones atómicas e intercalación En cambio, la instrucción write con un sólo argumento se ejecuta como una instrucción atómica.
23
24 Instrucciones atómicas e intercalación Las instrucciones atómicas son aquellas que son ejecutadas completamente antes de que se ejecute cualquier otra instrucción de cualquier otro proceso del programa. Por tanto, podemos estar seguros de que la cadena Soy el proceso se escribirá completamente en pantalla antes de que cualquier otra instrucción puede ejecutarse.
25 Instrucciones atómicas e intercalación La única manera de saber qué resultados puede producir un programa paralelo es estudiar todas las posibles intercalaciones, es decir, todas las posibles secuencias de instrucciones atómicas de los procesos que se pueden dar. En el programa anterior, el número de intercalaciones es relativamente pequeño, pero en programas más grandes esta opción puede no ser viable. Programación Paralela
26 Instrucciones atómicas e intercalación A la hora de construir algoritmos paralelos es especialmente importante, conocer qué instrucciones del lenguaje son realmente instrucciones atómicas y cuáles no.
27 Con algoritmos paralelos es más rápido tratar grandes tareas de computación que mediante técnicas secuenciales.
28 Esta es la forma en que se trabaja en el desarrollo de los procesadores modernos, ya que es más difícil incrementar la capacidad de procesamiento con un único procesador que aumentar su capacidad de cómputo mediante la inclusión de unidades en paralelo, logrando así la ejecución de varios flujos de instrucciones dentro del procesador. VS.
29 Pero hay que ser cauto con la excesiva paralelización ya que cada algoritmo paralelo tiene una parte secuencial y debido a esto, los algoritmos paralelos puedes llegar a un punto de saturación (Ley de Amdahl). Por todo esto, a partir de cierto nivel de paralelismo, añadir más unidades de procesamiento puede sólo incrementar el costo (planificación, comunicación).
30 El coste o complejidad de los algoritmos secuenciales se estima en términos del espacio (memoria) y tiempo (ciclos de procesador) que requiera. Los algoritmos paralelos también necesitan optimizar la comunicación entre diferentes unidades de procesamiento. Esto se consigue mediante la aplicación de dos paradigmas de programación y diseño de procesadores distintos: Memoria compartida. Paso de mensajes.
31
32 La técnica memoria compartida necesita del uso de semáforos o cerrojos en los datos para impedir que se modifique simultáneamente por dos procesadores, por lo que se produce un costo extra en ciclos de CPU. También obliga a serializar alguna parte del algoritmo. La técnica paso de mensajes usa canales y mensajes pero esta comunicación añade un costo, memoria adicional para las colas y los mensajes, así como la latencia en el mensaje.
33 Algoritmos distribuidos Una subclase de los algoritmos paralelos, son los algoritmos distribuidos. Estos están diseñados para trabajar en entornos tipo clusters y de computación distribuida, donde se usan otras técnicas, fuera del alcance de los algoritmos paralelos clásicos.
34 Algoritmos distribuidos Por lo general son procesadores geográficamente situados en diferentes lugares o un conjunto de maquinas independientes conectadas por una red. Estas entidades concurrentes tienen las siguientes características: - No comparten memoria - Sincronización en torno a comunicación - Son sistemas altamente escalables
35 Algoritmos distribuidos Conexión de ordenadores mediante red de interconexión. Multicomputadores. Cada ordenador con su memoria local y su propio espacio de direcciones. Como ejemplos de implementación de programas distribuidos podemos citar a los modelos de paso de mensajes con primitivas de comunicación send/receive:
36 Algoritmos distribuidos Conexión de ordenadores de uso convencional (monoprocesador o multiprocesador) mediante una red de interconexión de alta velocidad donde el conjunto se ve como un único ordenador.
37 Algoritmos distribuidos Otra propuesta de programación distribuida es Modelo RMI (Remote method invocation), que permite al programador invocar procedimientos remotos.
38 GUIA TP UNIDAD I Ejercicio 1 a) Que diferencia existe entre la multiprogramación y el multiproceso? b) Describa que es una instrucciones atómica y que es la intercalación? c) Considera a:=a+1 una instrucción atómica? Justifique la respuesta. d) Que podría pasar si dos procesos ejecutaran en paralelo la instrucción a:=a+1. Ejercicio 2 Investigar como instalar lenguaje PascalFC en su sistema operativo. Lectura recomendada por la cátedra: página del Ing. John Coppens
39 GUIA TP UNIDAD I Ejercicio 3 a) Implemente el ejercicio de la diapositiva 10 en PascalFC b) Al ejecutarlo varias veces que sucede con la salida del mismo? Ejercicio 4 Investigar: a) Que son los Semáforos en la programación paralela? b) Para que sirven? c) Cuales son sus instrucciones y para que se utiliza cada una? Ejercicio 5 Investigue e implemente una solución en PascalFC con semáforos al problema de la salida detectada en el ejercicio 3.
40 REFERENCIAS Libro Francisco Gortázar Bellas y otros. Lenguajes de Programación y Procesadores. Capitulo 3.5 Aula Virtual Daniel Guerrero Martínez. Universidad de Granada España. Disponible en: Página del Ing. John Coppens. Disponible en:
Programación Concurrente y Paralela. Unidad 1 Introducción
Programación Concurrente y Paralela Unidad 1 Introducción Contenido 1.1 Concepto de Concurrencia 1.2 Exclusión Mutua y Sincronización 1.3 Corrección en Sistemas Concurrentes 1.4 Consideraciones sobre el
Evolución del software y su situación actual
Evolución del software y su situación actual El software es el conjunto de programas que permite emplear la PC, es decir, es el medio de comunicación con la computadora, el control de sus funciones y su
Concurrencia. Concurrencia
Concurrencia Procesos y hebras Concurrencia Programación concurrente Por qué usar hebras y procesos? Ejecución de procesos Ejecución de hebras Hebras vs. Procesos Creación y ejecución de hebras La prioridad
Con estas consideraciones, Flynn clasifica los sistemas en cuatro categorías:
Taxonomía de las arquitecturas 1 Introducción Introducción En este trabajo se explican en detalle las dos clasificaciones de computadores más conocidas en la actualidad. La primera clasificación, es la
Arquitectura de Computadoras. Clase 9 Procesamiento paralelo
Arquitectura de Computadoras Clase 9 Procesamiento paralelo Introducción al procesamiento paralelo Sea cual sea el nivel de prestaciones, la demanda de máquinas de mayor rendimiento seguirá existiendo.
Hilos Secciones Stallings:
Capítulo 4 Hilos Secciones Stallings: 4.1 4.3 Contenido Procesos e hilos. Hilos a nivel de núcleo y a nivel de usuario. Multiprocesador simétrico (SMP). Micronúcleos. 1 Proceso Unidad de propiedad de los
TEMA 9. SISTEMAS OPERATIVOS DISTRIBUIDOS
TEMA 9. SISTEMAS OPERATIVOS DISTRIBUIDOS Introducción Hardware Software Aspectos de diseño 1 Introducción Aparecen en los 80 Desarrollo de Microprocesadores LAN Sistemas Distribuidos: Gran nº de procesadores
Introducción a los Sistemas Operativos
Introducción a los Sistemas Operativos Pedro Corcuera Dpto. Matemática Aplicada y Ciencias de la Computación Universidad de Cantabria [email protected] 1 Índice General Conceptos sobre ordenadores Concepto
Lusitania. Pensando en Paralelo. César Gómez Martín
Lusitania Pensando en Paralelo César Gómez Martín [email protected] www.cenits.es Esquema Introducción a la programación paralela Por qué paralelizar? Tipos de computadoras paralelas Paradigmas de
Tema 12: El sistema operativo y los procesos
Tema 12: El sistema operativo y los procesos Solicitado: Tarea 06 Arquitecturas de una computadora y el funcionamiento del software M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com [email protected]
Sistemas Operativos- Evolución Histórica
Esquema Primeros Computadores Accesos por operador Secuencia automática de trabajos Mejora del rendimiento Multiprogramación Proceso distribuído Multiproceso Primeros Computadores Lenguaje Máquina Monoprogramación
Tipos de Diseño. Ing. Elizabeth Guerrero V.
Tipos de Diseño Ing. Elizabeth Guerrero V. Tipos de Diseño Tipos de diseño de Procesos: Centralizado, Distribuido y Cooperativo Procesos Centralizados Un sistema centralizado está formado por un computador
Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria
1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo
Diseño de algoritmos paralelos
Diseño de algoritmos paralelos Curso 2011-2012 Esquema del capítulo Visión general de algunos algoritmos serie. Algoritmo paralelo vs. Formulación paralela Elementos de un Algoritmo paralelo Métodos de
Tema: Herencia en C#.
Programación II. Guía No. 8 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Herencia en C#. Objetivos Crear clases a través de la herencia de clases existentes. Describir
de Gran Canaria Centro de Tecnología Médica Programación Concurrente
Universidad de Las Palmas de Gran Canaria Centro de Tecnología Médica http://www.ctm.ulpgc.es Tema 1: Introducción a la Escuela Técnica Superior de Ingenieros de Telecomunicación Conceptos Fundamentales
UNIDAD II Metodología de programación paralela. Lic. Jesús Germán Andrés PAUTSCH - FCEQyN - UNaM
UNIDAD II Metodología de programación paralela UNIDAD II: Metodología de programación paralela Metodología de programación paralela Algunos conceptos que nos ayudarán a entender mejor el tema. Modelos
Sistemas Operativos. Un sistema operativo es un conjunto de programas de computadora diseñados especialmente para cubrir los siguientes objetivos:
Qué es un Sistema Operativo? Sistemas Operativos Un sistema operativo es un conjunto de programas de computadora diseñados especialmente para cubrir los siguientes objetivos: 1. Servir como interfaz entre
TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL
1 TECNICO SUPERIOR EN INFORMÁTICA EMPRESARIAL MÓDULO INTRUCCIONAL TECNOLOGÍA DE LA COMPUTADORA FACILITADOR: PARTICIPANTE: DAVID, CHIRIQUÍ 2015 2 Qué es un programa? Un programa informático es un conjunto
Es un conjunto de palabras y símbolos que permiten al usuario generar comandos e instrucciones para que la computadora los ejecute.
Los problemas que se plantean en la vida diaria suelen ser resueltos mediante el uso de la capacidad intelectual y la habilidad manual del ser humano. La utilización de la computadora en la resolución
Las optimizaciones pueden realizarse de diferentes formas. Las optimizaciones se realizan en base al alcance ofrecido por el compilador.
Unidad III: Optimización Las optimizaciones pueden realizarse de diferentes formas. Las optimizaciones se realizan en base al alcance ofrecido por el compilador. La optimización va a depender del lenguaje
Unidad VII Optimización. M.C. Juan Carlos Olivares Rojas
Unidad VII Optimización M.C. Juan Carlos Olivares Rojas Agenda 7.1 Tipos de optimización. 7.1.1 Locales. 7.1.2 Bucles. 7.1.3 Globales. 7.1.4 De mirilla. 7.2 Costos. 7.2.1 Costo de ejecución. 7.2.2 Criterios
Modelos de computadores paralelos
Modelos de computadores paralelos Domingo Giménez Departamento de Informática y Sistemas Universidad de Murcia, Spain dis.um.es/~domingo Universidad de Murcia 1 Contenido Programación paralela Modelos
Concurrencia y paralelismo
Introducción a los Sistemas Operativos Concurrencia y paralelismo 1. Ejecución de programas. Procesos. 2. Multiprogramación Bibliografía Silberschatz and Galvin Sistemas Operativos. Conceptos fundamentales.
1. Introducción 2. S.O. de Red. NFS 3. S.O. Distribuidos 4. Características de Diseño. Tema5: Sistemas Operativos Distribuidos
Tema 5: Sistemas Operativos Distribuidos 1. Introducción 2. S.O. de Red. NFS 3. S.O. Distribuidos 4. Características de Diseño 1 1. Introducción Sistema Informático Distribuido: Colección de S.I. autónomos
INDICE 1. Introducción 2. Entrada / Salida: Principios y Programación 3. Procesos
INDICE Prólogo XV 1. Introducción 1 1.1. Evolución de los sistemas operativos 2 Procesamiento en serie 3 Procesamiento por lotes 4 Multiprogramación 7 1.2. Tipos de Sistemas Operativos 9 Sistemas operativos
Universidad Autónoma del Estado de México Facultad de Medicina
Universidad Autónoma del Estado de México Facultad de Medicina Licenciatura en Bioingeniería Médica Unidad de Aprendizaje: Algoritmos y programación básica Unidad 3: Estructuras de control de flujo en
TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O
TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO Definición y objetivos de un S.O Definición y objetivos del sistema operativo Estructura, componentes y servicios de un S.O Llamadas al sistema
Introducción a los sistemas operativos. Ing Esp Pedro Alberto Arias Quintero
Introducción a los sistemas operativos Ing Esp Pedro Alberto Arias Quintero Unidad 1: Conceptos generales de Sistemas Operativos. Tema 1: Introducción: 1.1 Introducción: Qué es un sistema operativo?. 1.2
La Máquina de Acceso Aleatorio (Random Access Machine)
La Máquina de Acceso Aleatorio (Random Access Machine) Nuestro modelo de cómputo secuencial es la máquina de acceso aleatorio (RAM, Random Access Machine) mostrada en la Figura 2.1, y que consiste de:
Introducción a la programación: Contenido. Introducción
Introducción a la programación: Contenido Introducción a la programación:... 1 Introducción... 1 1. Procesamiento automatizado de información... 1 2. Concepto de algoritmo.... 2 3. Lenguajes de programación....
Herramientas Informáticas I Software: Sistemas Operativos
Herramientas Informáticas I Software: Sistemas Operativos Facultad de Ciencias Económicas y Jurídicas Universidad Nacional de La Pampa Sistemas Operativos. Es el software base que permite trabajar como
Sistemas Operativos. Introducción. Tema 6
Sistemas Operativos Introducción Qué es un sistema operativo? Ubicación de un sistema operativo en un computador Descripción de un sistema operativo: Funcional Estructural Realización Funciones de los
Unidad 4 - Procesamiento paralelo. Arquitectura de computadoras. D o c e n t e : E r n e s t o L e a l. E q u i p o : J e s s i c a F i e r r o
Unidad 4 - Procesamiento paralelo. D o c e n t e : E r n e s t o L e a l E q u i p o : J e s s i c a F i e r r o L u i s N a v e j a s Arquitectura de computadoras Introducción Cuestionario Conclusiones
Tecnología de software para sistemas de tiempo real
1 dit UPM Tecnología de software para sistemas de tiempo real Juan Antonio de la Puente DIT/UPM Motivación Las herramientas y la tecnología de software que se usan para construir otros tipos de sistemas
IFCD0111 Programación en Lenguajes Estructurados de Aplicaciones de Gestión
IFCD0111 Programación en Lenguajes Estructurados de Aplicaciones de Gestión 1. MÓDULO 1. MF0223_3 SISTEMAS OPERATIVOS Y APLICACIONES INFORMÁTICAS UNIDAD FORMATIVA 1. UF1465 COMPUTADORES PARA BASES DE DATOS
Sistemas Operativos. Dr. Wenceslao Palma M.
Sistemas Operativos Dr. Wenceslao Palma M. www.inf.ucv.cl/~wpalma/so Introducción a los Sistemas Computacionales Un vistazo de alto nivel caracteriza a un sistema computacional
Programación Distribuida y Tiempo Real
Programación Distribuida y Tiempo Real Año 2016 Carrera: Licenciatura en Informática Plan 2015 Año: 3 Duración: Semestral Profesor: Fernando G. Tinetti FUNDAMENTACION: Se presenta el contexto y los conceptos
Programación de Ordenadores
Programación de Ordenadores Ingeniería Química David Pelta Depto de Ciencias de la Computación e I.A. Universidad de Granada Índice Resolución de Problemas con Ordenadores Algoritmo Metodología de la programación
Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales.
Capítulo 2. Sistemas Operativos. Elementos, estructura y funciones generales. 1. Concepto de Sistema Operativo. 2. Evolución histórica. 3. Tipos de Sistemas Operativos. 4. Estructura de un Sistema Operativo.
Unidad I: Organización del Computador. Ing. Marglorie Colina
Unidad I: Organización del Computador Ing. Marglorie Colina Arquitectura del Computador Atributos de un sistema que son visibles a un programador (Conjunto de Instrucciones, Cantidad de bits para representar
Métodos para escribir algoritmos: Diagramas de Flujo y pseudocódigo
TEMA 2: CONCEPTOS BÁSICOS DE ALGORÍTMICA 1. Definición de Algoritmo 1.1. Propiedades de los Algoritmos 2. Qué es un Programa? 2.1. Cómo se construye un Programa 3. Definición y uso de herramientas para
Programación concurrente
Programación concurrente Master de Computación I Conceptos y recursos para la programación concurrente: I.1 Motivación de la programación concurrente. J.M. Drake M. Aldea Motivación de la programación
ARQUITECTURA DE VON NEUMANN Y HARVARD
ARQUITECTURA DE VON NEUMANN Y HARVARD ARQUITECTURA VON NEUMANN En esta arquitectura se observa que las computadoras utilizan el mismo dispositivo de almacenamiento para datos e instrucciones conectados
Fundamentos PHP. El término puntuación nos referimos a la sintaxis usada en PHP para la terminación de una línea de código (;)
Tags Fundamentos PHP La Sintaxis de PHP se deriva de muchos lenguajes de programación principalmente de C pero Perl también ha tenido mucha influencia en esta sintaxis Con las últimas incorporaciones agregadas,
TAREA 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS.
1 TAREA 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS. 1- Cuáles son las principales funciones de un sistema operativo? Los Sistemas Operativos tienen como objetivos o funciones principales lo siguiente; Comodidad;
Planificación con prioridades
dit UPM Planificación con prioridades Juan Antonio de la Puente DIT/UPM Copyright 2007, Juan Antonio de la Puente Planificación El objetivo de los métodos de planificación (scheduling) es repartir el tiempo
UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO
UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO LICENCIATURA EN PRODUCCIÓN INDUSTRIAL. UNIDAD DE APRENDIZAJE: PROGRAMACIÓN Créditos institucionales de la UA: 6 Material visual: Diapositivas Unidad de competencia
PREGUNTAS INFORMÁTICA MONITOR UPB EXAMEN 1
PREGUNTAS INFORMÁTICA MONITOR UPB EXAMEN 1 1. Cuál de los siguientes componentes no forma parte del esquema general de un ordenador? A Memoria Principal B Disco Duro C Unidad de Control D Unidad Aritmético
Programación MODULAR: Subalgoritmos - funciones y procedimientos
Programación MODULAR: Subalgoritmos - funciones y procedimientos Uno de los métodos fundamentales para resolver un problema es dividirlo en problemas más pequeños, llamados subproblemas. Estos problemas
MINUTA: Taller en UAEMEX, Toluca. Construcción de Tecnología HPC
MINUTA: Taller en UAEMEX, Toluca Construcción de Tecnología HPC de MESA: Taller DE construcción de Tacnología HPC Sesión: # 1 a la 5 INFORMACIÓN GENERAL FECHA: 213 al 17 de julio 2015 Construcción de Tecnología
CAPITULO ALGORITMOS Y PROGRAMAS CONTENIDO
CAPITULO 1 ALGORITMOS Y PROGRAMAS CONTENIDO 1.1. Los sistemas de procesamiento de la información. 1.2. Concepto de algoritmo. 1.3. Los lenguajes de programación. 1.4. Datos, tipos de datos y operaciones
Cómputo paralelo con openmp y C
Cómputo paralelo con openmp y C Sergio Ivvan Valdez Peña Guanajuato, México. 13 de Marzo de 2012 Sergio Ivvan Valdez Peña Cómputo Guanajuato, paralelo conméxico. openmp y () C 13 de Marzo de 2012 1 / 27
Memoria. Organización de memorias estáticas.
Memoria 1 Memoria Organización de memorias estáticas. 2 Memoria En memoria físicas con bus de datos sea bidireccional. 3 Memoria Decodificación en dos niveles. 4 Necesidad de cantidades ilimitadas de memoria
Procesamiento Paralelo
Procesamiento Paralelo Arquitecturas de Computadoras Paralelas Javier Iparraguirre Universidad Tecnológica Nacional, Facultad Regional Bahía Blanca 11 de Abril 461, Bahía Blanca, Argentina [email protected]
Arquitecturas cliente/servidor
Arquitecturas cliente/servidor Creación de Sockets Cliente Servidor 1 Creación de Sockets Cliente/Servidor Sockets en TCP Concepto de Hilos Definición de DAEMON Sockets en UDP 2 THREADS 3 Qué es un thread?
Algoritmos y programas. Algoritmos y Estructuras de Datos I
Algoritmos y programas Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2012 Departamento de Computación - FCEyN - UBA Programación funcional - clase 1 Funciones Simples - Recursión - Tipos de
1. Secuencia y temporalización de los contenidos.
1. Secuencia y temporalización de los contenidos. Secuencia de los contenidos Bloque 1. La sociedad de la información y el ordenador Las tecnologías de la información y la comunicación. Campos de aplicación.
EVOLUCIÓN DE LOS PROCESADORES
EVOLUCIÓN DE LOS PROCESADORES Lecturas recomendadas: * Tanembaum, A. Organización de computadoras. Cap. 1 * Stallings, W. Organización y arquitectura de computadores. Cap. 2 Arquitectura de una computadora
Sistemas Distribuidos. Soporte de Sistemas Operativos
Soporte de Sistemas Operativos Soporte de Sistemas Operativos Soporte de Sistemas Operativos Soporte de Sistemas Operativos Tareas principales de un SO: Administrar recursos Proveer abstracciones de los
ESTRUCTURAS CICLICAS
ESTRUCTURA DE CONTENIDOS 1.ESTRUCTURAS CICLICAS 1.1. La Estructura Cíclica PARA. 1.2. La Estructura Cíclica MIENTRAS. 1.3. La Estructura Cíclica REPITA. 2. Armando el rompecabezas con estructuras de programación
Tema 1: Programación Multiproceso. Curso
Tema 1: Programación Multiproceso. Curso 2012-2013 1 Patricia Hurtado Sayas Índice de contenidos: 1. Elementos funcionales de un SI. Repaso. 2. Concepto de Proceso o Tarea. 1. PCB, Bloque de Control de
Sesión 7. Cálculo Paralelo en Elmer
Sesión 7. Cálculo Paralelo en Elmer M. Meis y F. Varas Departamento de Matemática Aplicada II Universidad de Vigo Introducción a Elmer, sofware libre de simulación numérica multifísica A Coruña, 27 de
Clasificación n de los Sistemas Operativos. Clasificación de los SO Estructuras de los SO Modos de procesamiento
Clasificación n de los Sistemas Operativos Contenidos Clasificación de los SO Estructuras de los SO Modos de procesamiento Se pueden clasificar en Sistemas monolíticos Sistemas por capas Sistemas cliente/servidor
Capítulo 3. Procesos concurrentes 3.1. Conceptos de programación concurrente La computación concurrente es la simultaneidad en la ejecución de
Capítulo 3. Procesos concurrentes 3.1. Conceptos de programación concurrente La computación concurrente es la simultaneidad en la ejecución de múltiples tareas interactivas. Estas tareas pueden ser un
Hoja de respuestas. Examen tipo A
Hoja de respuestas. Examen tipo A Cuestiones 1. La memoria virtual nos permite: Emular la RAM mediante la utilización de los dispositivos de almacenamiento Tener una memoria de capacidad infinita en nuestro
Convivencia Introducción
Convivencia Introducción Dra. Carolina Mañoso Dpto. Informática y Automática.UNED Definición (1/3) El sistema operativo como máquina virtual o extendida: Un sistema operativo es una serie de componentes
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN I
TECNOLOGÍAS DE LA INFORMACIÓN Y LA COMUNICACIÓN I MATERIALES: Como referencia para el seguimiento de la asignatura se utilizará el texto de la editorial ANAYA. Título: Tecnologías de la Información y la
Programación en Lenguajes Estructurados de Aplicaciones de Gestión. Certificados de profesionalidad
Programación en Lenguajes Estructurados de Aplicaciones de Gestión Certificados de profesionalidad Ficha Técnica Categoría Informática y Programación Referencia 33002-1404 Precio 170.36 Euros Sinopsis
Paradigma de paso de mensajes
Paradigma de paso de mensajes Curso 2011-2012 Índice Visión lógica del paradigma de paso de mensajes. Operaciones básicas en paso de mensajes. Operaciones bloqueantes. Operaciones no bloqueantes. MPI:
TEMA 1: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS
TEMA 1: INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS 1. Definición, funciones y objetivos de un SO. 1.1. Sistema Informático 1.2. Definiciones de Sistema Operativo 1.3. Objetivos y/o funciones de un SO 1.4.
Facultad de Ingeniería Industrial y de Sistemas v1.1 Pre Maestría LENGUAJES DE PROGRAMACION
LENGUAJES DE PROGRAMACION Preparado por: Angel Chata Tintaya ([email protected]) I. LENGUAJES DE PROGRAMACION 1. El hombre se comunica en su sociedad mediante el lenguaje natural; hablado, escrito,
I.S.F.T. Nº 38 Programación I página 1
Programación I página 1 Una persona piensa y se comporta obedeciendo a un secuencial lógico. Un computador realiza tareas y maneja datos en memoria obedeciendo a una secuencia de pasos lógicos para lo
Guía práctica de estudio 05: Diagramas de flujo
Guía práctica de estudio 05: Diagramas de flujo Elaborado por: M.C. Edgar E. García Cano Ing. Jorge A. Solano Gálvez Revisado por: Ing. Laura Sandoval Montaño Guía práctica de estudio 05: Diagramas de
RECORDAR TIPOS DE DATOS
RECORDAR TIPOS DE DATOS VARIABLES: OBJETO CUYO valor cambia: A510 nombres NOTAS Int A=0; float B=1; CONSTANTES: OBJETO cuyo valor no cambia PI= 3.14159 LAS COMAS NO SE PERMITEN Int PI=3.1415 EXPRESIONES:
UNIVERSIDAD NACIONAL FEDERICO VILLARREAL FACULTAD DE INGENIERÍA ELECTRÓNICA E INFORMÁTICA SÍLABO
SÍLABO ASIGNATURA: SISTEMAS OPERATIVOS CODIGO: 8E0003 I. DATOS GENERALES: 1.1 Departamento Académico : Ingeniería Electrónica e Informática 1.2 Escuela Profesional : Ingeniería Informática 1.3 Ciclo de
Fundamentos de Sistemas Operativos Licenciatura en Administración de Tecnologías de Información y Comunicaciones
Fundamentos de Sistemas Operativos Licenciatura en Administración de Tecnologías de Información y Comunicaciones Rafael Vázquez Pérez Unidad 2 Administración de la Memoria Asignación de memoria paginada
Pontificia Universidad Católica del Ecuador
1. DATOS INFORMATIVOS: FACULTAD DE INGENIERÍA ESCUELA DE SISTEMAS MATERIA O MÓDULO: Sistemas Operativos CÓDIGO: IS603.a CARRERA: INGENIERÍA DE SISTEMAS NIVEL: TERCERO No. CRÉDITOS: 4 CRÉDITOS TEORÍA: 4
Sistemas operativos. Hasta ahora hemos visto. Relación programa-sistema operativo Gestión de memoria
Sistemas operativos UPCO ICAI Departamento de Electrónica y Automática 1 Hasta ahora hemos visto Relación programa-sistema operativo Gestión de memoria Reserva para la ejecución Pilas, heap, memoria de
1.1. Modelos de arquitecturas de cómputo: clásicas, segmentadas, de multiprocesamiento.
1.1. Modelos de arquitecturas de cómputo: clásicas, segmentadas, de multiprocesamiento. Arquitecturas Clásicas. Estas arquitecturas se desarrollaron en las primeras computadoras electromecánicas y de tubos
Técnicas de Programación
Técnicas de Programación 2.1.- Introducción: unos conceptos previos y primeros conceptos de la API Introducción La resolución de un problema con medios informáticos implica generalmente la siguiente secuencia
Introducción a la programación
Introducción a la programación Conceptos Básicos El objetivo fundamental de éste curso es enseñar a resolver problemas mediante una computadora. El programador de computadoras es antes que nada una persona
Funcionamiento de la computadora
Funcionamiento de la computadora La computadora es una maquina destinada a procesar datos. Este procesamiento involucra dos flujos de información: el de datos y el de instrucciones. Se parte del flujo
Planificaciones Algoritmos y Programación I. Docente responsable: AZCURRA DIEGO ANDRES. 1 de 5
Planificaciones 7540 - Algoritmos y Programación I Docente responsable: AZCURRA DIEGO ANDRES 1 de 5 OBJETIVOS Objetivos estratégicos: -Desarrollar el concepto algorítmico. -Aplicar técnicas de programación
Tema 1: Principios de Java
Tema 1: Principios de Java 0 Definición de java Java (del idioma indonesio: JAWA) Isla más poblada del archipiélago indonesio. Una variedad del grano de café producido en la isla de Java. Lenguaje de programación
Tema: Clases y Objetos en C#. Parte II.
Programación II. Guía No. 5 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Clases y Objetos en C#. Parte II. Objetivos Implementar clases, objetos, propiedades, métodos y
