Fiabilidad y Tolerancia a Fallos
|
|
|
- Alicia Farías Díaz
- hace 9 años
- Vistas:
Transcripción
1 Fiabilidad y Tolerancia a Fallos Los sistemas empotrados es usual que presenten requerimientos de fiabilidad y seguridad Cada vez mas se utilizan sistemas de control de tiempo real en sistemas críticos Fuentes de error: Especificaciones inadecuadas Errores de diseño en los componentes software Errores introducidos por fallos hardware Fallos producidos por interferencias Se requieren facilidades para la TF en los lenguajes No se requiere la tolerancia de fallos al 100%, pero si una respuesta controlada Programación (III) 1
2 Definiciones Fiabilidad: Una medida de los sucesos en los cuales el sistema se ajusta al comportamiento definido en unas determinadas especificaciones que se dan como válidas Avería: Comportamiento del sistema que se desvía del indicado en las especificaciones Error: La parte del estado del sistema que lo diferencia de un estado válido Fallo: Defecto o imperfección, físico o de diseño, en algún elemento del sistema En ocasiones se usan indistintamente los conceptos de fallo y error. Programación (III) 2
3 Tolerancia a fallos Consideramos un sistema como un conjunto de estados internos y externos Un estado interno no especificado se puede considerar un error El estado de un sistema formado por un conjunto de componentes será el estado de sus componentes Los errores en los componentes puede que se propaguen, o no, a los componentes más externos Los errores en los componentes que no se traducen en averías del sistema se dice que quedan enmascarados La tolerancia a fallos consiste en detectar los errores internos y evitar que se traduzcan en averías del sistema Programación (III) 3
4 Técnicas de programación para la TF Basadas en la redundancia Componentes extra para detectar y recuperar los fallos Se persigue conseguir la máxima fiabilidad con la mínima redundancia Nos centraremos en la redundancia software Tipos de redundancia Estática: Programación de N-versiones Ejecución simultánea Mecanismo de votación Dinámica: La recuperación se realiza en un paso posterior Hacia atrás: Vuelta a un estado correcto Hacia delante: Corrección del fallo Programación (III) 4
5 Bloques de Recuperación Redundancia dinámica hacia atrás Son bloques en el sentido usual de los lenguajes La entrada corresponde a un punto de recuperación En la salida se realiza un test de aceptación Funcionamiento Primero se guarda el estado y ejecuta un modulo primario Si falla el test se restaura el estado y se ejecuta un módulo alternativo Así sucesivamente hasta el número de módulos definidos Programación (III) 5
6 Bloques de Recuperación - Sintaxis ensure <test de aceptación> by <modulo primario> else by <modulo alternativo> else by <modulo alternativo>... else by <modulo alternativo> else error Programación (III) 6
7 Excepciones Redundancia dinámica hacia delante Una excepción la podemos definir como la aparición de un error, que puede desencadenar una avería Nomenclatura: Aparición: raise (levantar), signal (señalizar), throw (lanzar) Respuesta: handler (manejador), catch (captura) Se pueden usar para realizar recuperación hacia atrás: Las distintas alternativas se ejecutan en un bucle Antes de entrar se guarda el estado Si se produce una excepción se restaura el estado y se ejecuta otra alternativa Programación (III) 7
8 Componente Ideal Tolerante a Fallos Petición de servicio Respuesta normal Excepción de interfaz Excepción de error Componentes superiores Actividad normal Recuperación de error Excepción interna Manejadores de excepciones Componentes inferiores Petición de servicio Respuesta normal Excepción de interfaz Excepción de error Programación (III) 8
9 Manejo de excepciones (requerimientos) Debe ser fácil de entender y de utilizar El código no debe dificultar la compresión del programa funcionado sin errores No introducir sobrecarga si no hay excepciones Tratar de forma uniforme las excepciones detectadas por el entorno y las lanzadas por la aplicación Permitir la programación de acciones de recuperación Programación (III) 9
10 Representación de las excepciones Clasificación por el retraso introducido Síncrona: Se activa inmediatamente después de producirse el error Asíncrona: Se lanza algún tiempo después Clasificación según quién la activa El propio proceso Un proceso distinto o el entorno Las excepciones asíncronas también se denominan señales. No son adecuadas para al tolerancia a fallos Nos centraremos en las excepciones síncronas Modelos de declaración: Etiqueta (Ada), Objeto (C++) Programación (III) 10
11 Dominio de un manejador Una excepción puede tener varios manejadores El dominio de un manejador de excepción es la zona de código en que se activa si se produce en ella la excepción que controla En los lenguajes estructurados, el dominio coincide con un bloque de programación Un manejador se puede definir para una excepción o para varias Programación (III) 11
12 Dominio de un manejador (ejemplos) En ADA procedure resultado_aceptable is declare subtype temperatura is integer range ; begin -- lectura del sensor de temperatura y calculo del valor exception -- manejador de la excepción de fuera de rango end En C++ trye { // Lectura de la temperatura y calculo del valor // Control del rango y lanzamiento de la excepcion // usando throw } catch ( excepcio_fuera_de_rango ) { // Manejador de la excepcion } Programación (III) 12
13 Propagación de las excepciones Define que ocurre cuando una excepción se produce en un bloque que no tiene definido su manejador El compilador produce un error irrecuperable Buscar el manejador en la cadena de llamadas a la función o procedimiento (propagación dinámica) Buscar el manejador en la jerarquía de bloques (propagación estática) Si no se encuentra el manejador el programa aborta Se puede permitir definir un manejador por defecto que capture las excepciones sin manejador (catch all) Programación (III) 13
14 Modelo de reanudación y terminación Reanudación (o notificación): La ejecución continua donde se ha producido la excepción Terminación (o escape): Al terminar el manejador la ejecución continua a la salida del bloque en que se produce Algunos lenguajes permiten repetir la ejecución del bloque Con la reanudación se debe reparar el error. Si no es posible se debe usar el modelo de terminación Modelo híbrido: el manejador puede decidir si continuar la ejecución con el modelo de reanudación Programación (III) 14
15 Uso del tiempo Se necesitan facilidades para poder tener percepción del tiempo y usarlo en la aplicación La noción del tiempo es necesaria para: Representar los requerimientos temporales Satisfacer los requerimientos temporales Interacción con el tiempo Propiedades matemáticas del tiempo: Lineal: x, y : x < y o y < x o x = y Transitivo: x, y, z : (x < y y y < z) x<z Irreflexivo: x : no (x < x) Denso: x, y : x < y z : (x < z < y) Se suele asumir un tiempo discreto en lugar de denso Programación (III) 15
16 Acceso a un reloj Medida del paso del tiempo Accediendo al marco temporal del entorno Utilizando un reloj interno Se usa más el reloj interno, basado en una interrupción periódica, aunque ofrece un modelo discreto El periodo de la interrupción será la resolución temporal del sistema Se puede mejorar la medida del tiempo accediendo al contador interno del timer que provoca la interrupción Programación (III) 16
17 El reloj en Ada Reloj calendario en la primera versión de Ada Paquete Calendar Tipo abstracto para el tiempo Time y la función Clock para obtener el tiempo Subprogramas para convertir el tiempo a la hora real: Years, Months, Days y Seconds El tipo Duration es un tipo real de coma fija que permite realizar cálculos de tiempo. Su granularidad es Duration Small que no debe ser mayor de 20 mseg Ofrece operadores aritméticos entre los tipos Time y Duration, así como operadores de comparación para el tipo Time Programación (III) 17
18 El reloj en Ada (continuación) Reloj para tiempo real en Ada-95 Paquete Real_Time Ofrece mayor granularidad pero no tiene relación con la hora real (reloj monotónico) Usa los tipo Time y Time_Span La constante Time_Unit es la cantidad menor de tiempo que se puede representar y su valor no debe ser mayor que 1 ms. El rango de Time debe ser mayor de 5 años El tiempo avanza a intervalos de la constante Tick Programación (III) 18
19 El reloj en C y POSIX Define un tipo de tiempo básico time_t y varias rutinas para manejar variables de este tipo Permite usar varios relojes en una aplicación, distinguidos por un identificador del tipo clockid_t. Al menos debe existir el CLOCK_REALTIME La representación del tiempo se hace con la estructura que contiene la hora en segundos desde el 1/1/1970 y la fracción de segundo en nanosegundos La resolución mínima del reloj debe ser de 20 mseg Programación (III) 19
20 El reloj en C y POSIX (interfaz) #define CLOCK_REALTIME...; struct timespec { time_t tv_sec; /* Numero de segundos */ time_t tv_nsec; /* Numero de nanosegundos */ }; typedef... clockid_t; int clock_settime(clockid_t clock_id, const struct timespec *tp) int clock_gettime(clockid_t clock_id, struct timespec *res) int nanosleep(const struct timespec *rqtp, struct timespec *rmtd); Programación (III) 20
21 Retardos Tipos de retardos: Relativos. Suspensión durante un tiempo Absolutos. Suspensión hasta una hora La mayoría de los lenguajes ofrecen un retardo absoluto. Atención al retardo (hora absoluta hora actual) Factores que pueden alterar el tiempo de retardo Diferencia entre la expresión y la precisión del tiempo Tiempo de inhibición de interrupciones Tiempo para pasar del estado Listo a Ejecutando Los retardos relativos en bucles puede producir errores acumulativos Ada dispone de las sentencias delay y delay until Programación (III) 21
22 Factores que afectan a los retardos Tiempo de espera indicado en el programa Diferencia entre la granularidad del reloj y la representación del tiempo Interrupciones desactivadas Proceso listo en espera de ejecución Proceso ejecutándose Programación (III) 22
23 Time-Outs Permiten controlar la no ocurrencia de un suceso que está esperando un proceso En POSIX los time-out se pueden controlar utilizando señales También se pueden usar en las variables condición de los pthreads En el lenguaje Ada se usa una construcción select select delay 0.1; then abort -- sentencias del calculo end select; Programación (III) 23
TEMA 3. Gestión de tiempo y relojes. Gestión del Tiempo. Gestión del Tiempo. Facilidades de tiempo real. Tiempo. Noción de Tiempo. Objetivos.
Gestión del TEMA 3 Gestión de y relojes Objetivos Entender el papel que desempeña el en el diseño de sistemas de real Temas Definición de Relojes Retardos Requisitos temporales 1 2 Gestión del Facilidades
Programación Concurrente
Master en Computación Programación Concurrente Bloque II: Programación concurrente en POSIX Tema 1. Introducción al estándar POSIX Tema 2. Sistema Operativo MaRTE OS Tema 3. Gestión de Threads Tema 5.
Gestión del tiempo en POSIX
dit UPM Gestión del tiempo en POSIX Juan Antonio de la Puente DIT/UPM Relojes en C / POSIX Hay dos tipos de relojes Reloj calendario (ANSI C) Proporciona valores de tiempo con resolución de 1s Relojes
SISTEMAS EN TIEMPO REAL
SISTEMAS EN TIEMPO REAL Año académico: 2006/07 Centro: Escuela Politécnica Superior Estudios: Ingeniero Técnico en Informática de Sistemas Asignatura: Sistemas en Tiempo real Ciclo: 1º Curso: 3º Cuatrimestre:
T E M A 7. Interrupciones
T E M A 7 Interrupciones 7-1 Interrupciones INDICE 7.- Introducción al Tema 7-2 7.1 Interrupciones 7-2 7.1.1 Tipos de Interrupciones 7-2 a).- Interrupciones de Programa 7-2 b).- Interrupciones de Llamada
Tiempo real. Juan Antonio de la Puente DIT/UPM. Tiempo real. Comprender el papel del tiempo en el diseño y realización de sistemas de tiempo real
dit UPM Tiempo real Juan Antonio de la Puente DIT/UPM Tiempo real Objetivo Comprender el papel del tiempo en el diseño y realización de sistemas de tiempo real Contenido: Sistemas de referencia de tiempo
RELOJES DE TIEMPO REAL ÍNDICE
de Real de Real Conceptos Conceptos Teóricos Teóricos del del Real Denso Real Denso Discreto Discreto en Pulsos en Pulsos Ideales Ideales Propiedades Propiedades Métricas Métricas de de Sistemas Sistemas
Gestión del tiempo en Ada
dit UPM Gestión del tiempo en Ada Juan Antonio de la Puente DIT/UPM El tiempo en Ada La gestión del tiempo en Ada está integrada en el lenguaje y en el modelo de tareas relojes relojes de tiempo de ejecución
1. Introducción y objetivos 2. Prevención y tolerancia de fallos 3. Redundancia estática y dinámica. 4. Seguridad, fiabilidad y confiabilidad
Tema 13. Fiabilidad y tolerancia de fallos 1. Introducción y objetivos 2. Prevención y tolerancia de fallos 3. Redundancia estática y dinámica a. Programación con N versiones b. Bloques de recuperación
2.2 Nombres, Ligado y Ámbito
2.2 Nombres, Ligado y Ámbito Ligado estático y dinámico, reglas de ámbito y prueba de tipos. Conceptos Nombres e Identificadores Variables Tipos Ámbito Constantes Nombres Identificador que designa en el
Fiabilidad y tolerancia de fallos
dit UPM Fiabilidad y tolerancia de fallos Juan Antonio de la Puente DIT/UPM Transparencias basadas en el capítulo 5 del libro de A. Burns y A. Wellings Real-Time Systems and Programming Languuages, 3ª
Test SITR Temas: Planificación, Sincronización, Comunicación entre Procesos, Relojes, Señales, Temporizadores (TestSITR_T4 T9)
Test SITR Temas: Planificación, Sincronización, Comunicación entre Procesos, Relojes, Señales, Temporizadores (TestSITR_T4 T9) Temas: Planificación Sincronización y Comunicación entre Procesos Funciones
SISTEMAS EN TIEMPO REAL. Fiabilidad y Tolerancia a Fallos en Sistemas en Tiempo Real
SISTEMAS EN TIEMPO REAL Fiabilidad y Tolerancia a Fallos en Manuel Agustín Ortiz López Área de Arquitectura y Tecnología de Computadores Departamento de Arquitectura de Computadores, Electrónica y Tecnología
Introducción a PL/SQL
Introducción a PL/SQL Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2011 Objetivos de este tema Conocer PL/SQL. PL/SQL
Tema 5 Corrección y Robustez Excepciones en Java
Tema 5 Corrección y Robustez Excepciones en Java Parte II: Excepciones en Java Programación Orientada a Objetos Curso 2013/2014 Contenido Introducción Excepciones comprobadas Caso de estudio Tratamiento
Procesadores de lenguaje Tema 5 Comprobación de tipos
Procesadores de lenguaje Tema 5 Comprobación de tipos Departamento de Ciencias de la Computación Universidad de Alcalá Resumen Sistemas de tipos. Expresiones de tipo. Equivalencia de tipos. Sobrecarga,
TEMA 4. EXCEPCIONES Y MANEJO DE EXCEPCIONES.
TEMA 4. EXCEPCIONES Y MANEJO DE EXCEPCIONES. 4.1. Introducción. 4.2. Tratamiento de excepciones. 4.2.1. Excepciones en lenguajes tradicionales. 4.2.2. Tratamiento de excepciones moderno. 4.3. Tratamiento
Centro Asociado Palma de Mallorca. Antonio Rivero Cuesta
Centro Asociado Palma de Mallorca Antonio Rivero Cuesta Excepciones... 5 Excepciones de uso frecuente... 8 Excepciones no comprobadas... 13 Excepciones comprobadas... 14 La clase Runtime Exception...
Tema 5. Soporte lógico de computadoras.
Tema 5. Soporte lógico de computadoras. 5.1 Conceptos generales Como se ha visto previamente, un ordenador consta de dos partes, una la parte física, conocida como "Hardware" y otra, la parte lógica denominada
Procedimientos Almacenados. Miguel Angel Garduño Cordova Isaac Méndez Hernández
Reporte Procedimientos Almacenados Catedrático: Alumnos: Ing. María Elena Reyes Castellanos Miguel Angel Garduño Cordova Isaac Méndez Hernández Índice General Índice de tablas 2 Introducción 4 Objetivo
Los procedimientos almacenados son nuevas funcionalidades de la versión de MySQL 5.0. Un procedimiento
PROCEDIMIENTOS ALMACENADOS Los procedimientos almacenados son nuevas funcionalidades de la versión de MySQL 5.0. Un procedimiento almacenado es un conjunto de comandos SQL que pueden almacenarse en el
Elementos de un programa en C
Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución
Tema 4: Corrección y Robustez en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle
Tema 4: Corrección y Robustez en C++ Programación Orientada a Objetos Curso 2008/2009 Begoña Moros Valle Contenido Asertos en C++ Mecanismo de excepciones: Declaración de excepciones Lanzar excepciones
INF 473 Desarrollo de Aplicaciones en Java
INF 473 Desarrollo de Aplicaciones en Java Sección V Otras características de Java Prof. José Miguel Rubio [email protected] [email protected] PUCV Marzo 2008 1 Paquetes Conjunto de clases definidas
MANEJO DE EXCEPCIONES en C++ Dr. Oldemar Rodríguez R. Escuela de Informática Universidad Nacional
MANEJO DE EXCEPCIONES en C++ Dr. Oldemar Rodríguez R. Escuela de Informática Universidad Nacional C++ posee un mecanismo de gestión de errores incorporado que se denomina manejo de excepciones. La utilización
ESTRUCTURAS DE CONTROL
ESTRUCTURAS DE CONTROL En lenguajes de programación, las estructuras de control permiten modificar el flujo de ejecución de las instrucciones de un programa. Con las estructuras de control se puede: De
Apunte Laboratorio ALPI - El lenguaje de programación Pascal
Apunte Laboratorio ALPI - El lenguaje de programación Pascal 1 2 ÍNDICE GENERAL Índice 1. Estructura de un Programa en Pascal 3 2. Sintaxis de Pascal 4 2.1. Uso de mayúsculas.....................................
Eventos e interrupciones
Programación Concurrente en Linux Eventos e interrupciones Alberto Lafuente, Dep. KAT/ATC de la UPV/EHU, bajo Licencia Creative Commons 1 Contenido 1. Interacción en un programa: entrada/ salida 2. Eventos
Todo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Módulo. = Asignación = = Comp. de igualdad!= Com. de desigualdad <= Comp. menor o igual >= Comp. mayor o igual AND lógico OR lógica.
EQUIVALENCIAS BÁSICAS ENTRE PASCAL Y C A continuación se presentan algunas equivalencias básicas entre estos lenguajes de programación : Operadores en lenguaje C: Operador Descripción % Módulo = Asignación
Introducción a los sistemas de tiempo real
1 dit UPM Introducción a los sistemas de tiempo real Juan Antonio de la Puente DIT/UPM Transparencias basadas en el capítulo 1 del libro de A. Burns y A. Wellings Real-Time Systems and Programming Languuages,
Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN
Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN - Introducción - Sintaxis - Semántica básica - Tipos de datos - Expresiones y enunciados - Procedimientos y ambientes - Tipos abstractos de datos y módulos
GENERACIÓN DE CÓDIGO ORIENTADO A OBJETOS
GENERACIÓN DE CÓDIGO ORIENTADO A OBJETOS A.- ASPECTOS FUNDAMENTALES DEL CÓDIGO ORIENTADO A OBJETOS MÓDULOS DE CÓDIGO: El código en Visual Basic se almacena en módulos. Hay tres tipos de módulos: de formulario,
Tareas Periódicas en POSIX
Temporizadores POSIX Uso de Señales, Temporizadores y Threads para ejecutar tareas periódicas en POSIX 1 Tareas Periódicas en POSIX POSIX no implementa un mecanismo directo para especificar tareas periódicas
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
Modelos de calidad. Técnicas de prueba del software Estrategias de prueba del software. Calidad del software. Factores de Calidad. producto.
Técnicas de prueba del software Estrategias de prueba del software 1 Modelos de calidad Calidad del software Factores de Calidad Criterios de calidad del proceso producto Métricas del proceso producto
Lenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III
República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III Lenguaje C 1 Puntos previos Los códigos fuentes generados en C requieren ser compilados
Capítulo 3. Subprogramas. 3.1 Subprogramas FUNCTION
Capítulo 3 Subprogramas Con lo explicado hasta aquí se pueden escribir programas sencillos y no demasiado largos. Pero varias razones justifican la necesidad de disponer de otro tipo de recursos. Por una
Parte I: Programación en un lenguaje orientado a objetos
Parte I: Programación en un lenguaje orientado a objetos 1. Introducción a los lenguajes de programación 2. Datos y expresiones 3. Estructuras algorítmicas 4. Datos compuestos 5. Modularidad 6. Tratamiento
Base de Datos Oracle 10g: Programación con PL/SQL Código: D Duración: 5 días (40 horas)
Base de Datos Oracle 10g: Programación con PL/SQL Código: D17214 - Duración: 5 días (40 horas) Lo que aprenderá Esta clase es aplicable para los usuarios de Oracle8i, Oracle9i y Oracle Database 10g. Este
Fundamentos de Programación
Fundamentos de Programación COMENTARIOS Microsoft Visual Basic interpreta que todo lo que está a la derecha del carácter ( ) en una línea cualquiera de programa es un comentario y no ejecuta acción alguna.
Contenido 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS PROCESOS Prólogo...
1 Prólogo... xv 1. INTRODUCCIÓN A LOS SISTEMAS OPERATIVOS... 1 1.1. Conceptos generales sobre sistemas operativos... 2 1.1.1. Funciones del sistema operativo... 2 1.1.2. Componentes del sistema operativo...
1.- Necesidad de los sistemas tolerantes a fallos. 2.- Definición de garantía de funcionamiento. 3.- Arbol de la garantía de funcionamiento
Tema 1: Introducción: Conceptos básicos y definiciones 1.- Necesidad de los sistemas tolerantes a fallos 2.- Definición de garantía de funcionamiento 3.- Arbol de la garantía de funcionamiento 4.- Definición
Introducción a PL/SQL
22/11/2016 Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla Noviembre 2014 Objetivos de este tema Conocer el lenguaje procedimental
Contenido. Prefacio Orígenes de la programación orientada a objetos... 1
Prefacio... xv 1. Orígenes de la programación orientada a objetos... 1 1.1 La crisis del software... 1 1.2 Evolución del software... 3 1.3 Introducción a la programación orientada a procedimientos... 4
ALGORÍTMICA. Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid.
ALGORÍTMICA Dpto. Ingeniería de Sistemas y Automática Facultad de Ciencias Universidad de Valladolid. Indíce Algoritmo Elementos de un algoritmo: Variables, Constantes, Expresiones Datos: Definición y
Control de Flujo. Estructuras de Control! Experiencia Educativa de Algorítmica CONTROL DE FLUJO
Control de Flujo Estructuras de Control Experiencia Educativa de Algorítmica 1 Introducción El estilo de como escribimos y analizamos un algoritmo se convierte en una de las principales características
Estructuras de control selectivas
Práctica 3 Estructuras de control selectivas Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 2.0.2 Concepto de sentencia y estructura de control El cuerpo de los métodos
Seminario de Programación en Ada
Seminario de Programación en Ada Bloque II Programación de tiempo real GRUPO DE COMPUTADORES Y TIEMPO REAL Michael González, J. Javier Gutiérrez, Héctor Pérez 19 Programación de Tiempo Real El Ada soporta
Programación Inicial. Requisitos previos. Objetivos. Próximos Inicios. Modalidad a Distancia. Costo y formas de pago. Resumen de Contenidos
Programación Inicial con Java y Oracle Requisitos previos Para realizar esta capacitación el único requisito previo es contar con un amplio dominio del manejo del entorno Windows, además de utilizar programas
Agradecimientos. Nota de los autores. 1 Problemas, algoritmos y programas 1
Prologo Agradecimientos Nota de los autores Índice general I III V VII 1 Problemas, algoritmos y programas 1 1.1 Programas y la actividad de la programación.................... 4 1.2 Lenguajes y modelos
Actividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE
Actividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE 1. Qué es un bucle? 2. A que se denomina cuerpo de un bucle? 3. Define iteración de un bucle. 4. Cuál es el cuerpo de un bucle? 5. Qué es
Programación Orientada a Objetos en C#.NET CAPÍTULO 8 EXCEPCIONES. Ing. Bruno López Takeyas, M.C.
CAPÍTULO 8 EXCEPCIONES 2 http://www.itnuevolaredo.edu.mx/takeyas 1 Preguntas detonadoras Cómo se controlan los posibles errores que ocurran durante la ejecución de una aplicación? Un programador, puede
TEMA 8. Agenda. Excepciones
TEMA 8 Excepciones V1.0 28/05/06 Manuel Pereira González Agenda 1 Introducción Mecanismo para el control y gestión de errores basado en objetos llamados Excepciones Una Excepción es una condición anormal
Herramientas computacionales para la matemática MATLAB: Estructuras de control
Herramientas computacionales para la matemática MATLAB: Estructuras de control Verónica Borja Macías Mayo 2012 1 Estructuras de control ESTRUCTURAS DE REPETICIÓN: BUCLES Los bucles permiten repetir las
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
Introducción a los Sistemas Operativos S.O.
Introducción a los Sistemas Operativos S.O. Contenido 1. Conceptos 2. Evolución de los Sistemas Operativos 3. Administración del Entorno de Hardware 1. CONCEPTOS 1.1. Definición de Sistema Operativo Es
Algoritmos. Medios de expresión de un algoritmo. Diagrama de flujo
Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten
Programación Estructurada. Sesión 4:Estructuras de control
Programación Estructurada Sesión 4:Estructuras de control Contextualización En la sesión anterior vimos las estructuras condicionales, mediante éstas somos capaces de elegir qué expresiones usaremos, pero
Sistemas Operativos. Daniel Rúa Madrid
Sistemas Operativos Daniel Rúa Madrid Qué es? Es un programa que administra el hardware de una computadora. También proporciona las bases para los programas de aplicación y actúa como intermediario entre
Analizador Léxico. Programación II Margarita Álvarez. Analizador Léxico - Funciones
Analizador Léxico Programación II Margarita Álvarez Analizador Léxico - Funciones Función Principal Leer carácter por carácter de la entrada y elaborar como salida una secuencia de componentes léxicos
WHILE Y DO WHILE BREAK EN LENGUAJE C. BUCLES MIENTRAS. FORZAR SALIDA O TERMINACIÓN. EJEMPLO (CU00534F)
Bucles en lenguaje C Bucle while y forzar detención con break APRENDERAPROGRAMARCOM WHILE Y DO WHILE BREAK EN LENGUAJE C BUCLES MIENTRAS FORZAR SALIDA O TERMINACIÓN EJEMPLO (CU00534F) Sección: Cursos Categoría:
Unidad V Análisis Semántico. M.C. Juan Carlos Olivares Rojas
Unidad V Análisis Semántico M.C. Juan Carlos Olivares Rojas Agenda 5.1 Analizador semántico 5.2 Verificación de tipos en expresiones. 5.3 Conversión de tipos. 5.4 Acciones agregadas en un analizador sintáctico
INTRODUCCION A LA PROGRAMACION (C.U.) PROGRAMACION (T.I.G.)
INTRODUCCION A LA PROGRAMACION (C.U.) PROGRAMACION (T.I.G.) PRESENTACION: Lic. Jaquelina Jallés Comisión 1: Lunes 8-10 OBJETIVOS: Martes 10-12 Jueves 8-12 A) Desarrollar el pensamiento lógico y estructurado
Programación Estructurada
Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 4 Nombre: Estructuras de control Contextualización En la actualidad los programas buscan un objetivo común, que es: Automatizar tareas de
ANÁLISIS DE SISTEMAS. Prof. Eliz Mora
ANÁLISIS DE SISTEMAS Prof. Eliz Mora Programa Fundamentos del Análisis de Sistemas Estilos Organizacionales y su impacto en los Sistemas de Información Rol del Analista de Sistema Determinación de Factibilidad
Alcalde #1822 Col. Miraflores C.P Guadalajara, Jal. Mexico MX 01 (33) y USA 001 (619)
Tu Sitio de Automatización! PLC con 32 variables de E/S: 20 entradas digitales y 12 salidas de relevador Características PLC FBs-32MCU Alta velocidad Máximo de entradas/salidas digitales 256 Conexión en
La resolución de un problema
CAP. 2. ALGORITMOS Y PROGRAMAS 2.1. Solución de problemas por computadora La resolución de problemas por computadora, es importante para que las personas o usuarios aprendan a programar de manera general,
INTRODUCCIÓN...9 CAPÍTULO 1. ELEMENTOS DE UN PROGRAMA INFORMÁTICO...11
Índice INTRODUCCIÓN...9 CAPÍTULO 1. ELEMENTOS DE UN PROGRAMA INFORMÁTICO...11 1.1 PROGRAMA Y LENGUAJESDE PROGRAMACIÓN...12 1.1.1 EL LENGUAJE JAVA...13 1.1.2 EL JDK...15 1.1.3 LOS PROGRAMAS EN JAVA...16
3. TÉCNICAS DE DISEÑO
3. TÉCNICAS DE DISEÑO 3.1 Top Down También conocida como de arriba-abajo y consiste en establecer una serie de niveles de mayor a menor complejidad (arriba-abajo) que den solución al problema. Consiste
Cadena de caracteres Numéricas Fecha y hora Booleanas Tipo registro Tipo cursor
Cadena de caracteres Numéricas Fecha y hora Booleanas Tipo registro Tipo cursor Declaración de variables Inicialización de variables Declaración de constantes Asignación de valores a variables Tipo Nombre_var
SISTEMAS DIGITALES VHDL
SD SISTEMAS DIGITALES VHDL Fredy Hernán Riascos Campiño Practica 1a: Implementación de un incrementador: Se he de implementar un modulo incrementador (INC), Este modulo no es mas que un sumador y un registro
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
CLASE 11: PRUEBAS DE SOFTWARE. Unversidad Simón Bolívar. Prof. Ivette Carolina Martínez
CLASE 11: PRUEBAS DE SOFTWARE Unversidad Simón Bolívar. Prof. Ivette Carolina Martínez Pruebas: Definición Prueba de Software es la ejecución del código usando combinaciones de entradas, en un determinado
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
Manual de turbo pascal
Universidad Nacional Experimental De Los Llanos Occidentales Ezequiel Zamora UNELLEZ-Barinas Manual de turbo pascal Bachilleres: Martinez Ninibeth C.I:20.867.002 Mora Yaco C.I:17.205.073 Estructura de
Tema 3 - Modelado con HDL a nivel RTL
- Modelado con HDL a nivel RTL Eduardo Rodríguez Martínez Departamento de Electrónica División de Ciencias Básicas e Ingeniería Universidad Autónoma Metropolitana Unidad Azcapotzalco Email: [email protected]
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
Área: INFORMÁTICA. Saber- Saber: Identificar DFD como herramienta para escribir los algoritmos de forma lógica.
Guía No: 2 Subdirección de Educación Departamento de Educación Contratada Colegio CAFAM Bellavista CED GUIA DE APRENDIZAJE Docente: Luz del Carmen Barrera Área: INFORMÁTICA Fecha: II BIMESTRE 2014 Grado:
III. Generación de Código orientado a objetos
III. Generación de Código orientado a objetos UNIDAD III Aspectos fundamentales Del código orientado a objetos. MÓDULOS DE CÓDIGO 1 DE FORMULARIO Almacenan el código en VB 2 ESTÁNDAR 3 DE CLASE Contiene
ENTRADA-SALIDA. 2. Dispositivos de Carácter: Envía o recibe un flujo de caracteres No es direccionable, no tiene operación de búsqueda
Tipos de Dispositivos ENTRADA-SALIDA 1. Dispositivos de Bloque: Almacena información en bloques de tamaño fijo (512b hasta 32Kb) Se puede leer o escribir un bloque en forma independiente 2. Dispositivos
Estructura de los sistemas de cómputo
Estructura de los sistemas de cómputo Introducción Elementos básicos de un computador Registro del procesador Ejecución de las instrucciones Interrupciones Hardware de protección Introducción Qué es un
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
Curso Completo de Visual Basic 6.0
CURSO Curso Completo de Visual Basic 6.0 Escuela Superior de Ingenieros Industriales UNIVERSIDAD DE NAVARRA Javier García de Jalón José Ignacio Rodríguez Alfonso Brazález Patxi Funes Eduardo Carrasco Jesús
VHDL: Código Secuencial. Arquitectura del Computador 2017
VHDL: Código Secuencial Arquitectura del Computador 2017 PROCESSES, FUNCTIONS y PROCEDURES Solo se ejecuta secuencialmente el código que se encuentra dentro de PROCESSES, FUNCTIONS o PROCEDURES. Cualquiera
Fundamentos de programación
Fundamentos de programación Estructuras de Control Estructuras de control Estructuras de control Estructura secuencial Estructura alternativa Sentencias if, if else Sentencias if else anidadas El operador
Compiladores: Análisis Semántico. Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inès Alvarez V.
Compiladores: Análisis Semántico Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inès Alvarez V. Verificaciòn de tipos Se puede hacer en forma Estàtica: en tiempo
