ABRAZO MORTAL - DEADLOCK - INTERBLOQUEO
|
|
|
- Tomás Hernández del Río
- hace 8 años
- Vistas:
Transcripción
1 ABRAZO MORTAL - DEADLOCK - INTERBLOQUEO 1
2 DEFINICION DE DEADLOCK Un conjunto de procesos está en estado de "DEADLOCK" cuando cada proceso del conjunto está esperando por un evento que solo puede ser causado por otro proceso que está dentro de ese conjunto. 2
3 PROBLEMA Dos objetos (Procesos) desean hacer uso de un único recurso no compartible o un número finito de ellos, y cada uno de ellos posee la porción que el otro necesita. Ejemplo clásico: Dos procesos P(1) y P(2), cada uno de ellos tiene asignadas 2 unidades de cinta y cada uno de ellos necesita dos más, pero en el sistema existen sólo 4 unidades en total. Obviamente estamos en presencia de un deadlock, ya que P(1) espera recursos de P(2) y P(2) espera recursos de P(1). 3
4 CONDICIONES NECESARIAS PARA EL "DEADLOCK" Exclusión Mutua: debe haber recursos no compartidos de uso exclusivo. Espera y Retenido (Hold & Wait): un proceso retiene un recurso y espera por otro Sin Desalojo: no es posible quitarle el recurso retenido a un proceso. Lo libera voluntariamente. Espera circular: hay un ciclo de espera entre procesos 4
5 El modelo del sistema Tipos de recursos: R 1, R 2, R 3,... Cada tipo de recurso posee W i instancias Cada proceso utiliza un recurso de esta forma: Pedirlo : (REQUEST) si no puede ser satisfecho esperar. Será incluido en una cola en espera de ese recurso (Tablas). Usarlo : (USE) el proceso puede operar el recurso. Liberarlo : (RELEASE) el proceso libera el recurso que fue pedido y asignado 5
6 GRAFO DE ASIGNACIÓN DE Procesos RECURSOS (elementos) Tipo de Recurso con 4 instancias P i pide instancia of R j P i P i retiene una instancia de R j P i 6
7 GRAFO DE ASIGNACION DE RECURSOS Sea G = (V,E), donde V es el conjunto de vértices y E es el conjunto de flechas (arcos orientados). A su vez V está compuesto por 2 tipos: P = {p(1),p(2),...,p(n)} conjunto de Procesos R = {r(1),r(2),...,r(m)} conjunto de Recursos 7
8 GRAFO DE ASIGNACION DE RECURSOS Los elementos de E son: (p(i),r(j)) ======> p(i) está esperando una instancia del recurso r(j). (r(j),p(i)) ======> r(j) (una instancia de) está asignada al proceso p(i). 8
9 Un ejemplo de un grafo de asignación de recursos 9
10 Grafo de asignación de recursos con un Deadlock 10
11 GRAFO DE ASIGNACIÓN DE RECURSOS En caso de tipos de recursos con más de una instancia, la existencia de un ciclo cerrado es condición necesaria, pero no suficiente. CONCLUSION: Cuando no existe un ciclo no hay deadlock. Ahora si existe un ciclo puede o no haber deadlock. Ciclo: p(1) --> r(1)--> p(3)--> r(2)--> p(1). Si p(4) o p(2) liberan sus recursos se rompe el ciclo. 11
12 MANEJO DE DEADLOCK Existen dos maneras de manejar los Deadlocks: No permitir que ocurran ( Prevención - Evitarlo ). Permitirlo y luego recuperar (es caro y dificultoso). 12
13 EXCLUSIÓN MUTUA PREVENCIÓN No hay recursos exclusivos, permiso de acceso en concurrencia (todos leen), pero... ESPERA Y RETENIDO (Hold & Wait) Asignación Total al inicio(dos problemas, asignación sin uso, e inanición) Si tiene asignado un recurso para pedir otro debe liberar éste. SIN DESALOJO Permitirlo. Pérdida de recursos cuando se quiere acceder a uno no disponible. 13
14 PREVENCION ESPERA CIRCULAR Numeración de recursos Para asegurar que esta condición no se cumpla consideremos lo siguiente: A cada "tipo de recurso" le asignamos un número Natural único R = {r(1),r(2),...,r(n)} F: R --> N F(impresora)=1, F(disco)=5, F(cinta)=7 14
15 PREVENCIÓN Un proceso puede pedir un r(j) sii F(r(j)) > F(r(i)) i de los recursos que ya posee. Si no cumple esta condición, debe liberar todos los r(i) que cumplen F(r(i)) F(r(j)). Es decir el proceso siempre debe solicitar los recursos en un órden creciente. Dadas estas condiciones se puede demostrar que no tendremos nunca una espera circular, es decir el sistema está libre de Deadlock 15
16 Estado Seguro Un estado "seguro" (SAFE) es cuando se pueden asignar recursos a cada proceso en algún orden y evitar el deadlock. Formalmente: Un sistema está en estado "seguro" si existe una "secuencia segura de procesos". Una secuencia <p(1),p(2),...,p(n)> es segura si por cada p(i) los recursos que necesitará pueden ser satisfechos por los recursos disponibles más todos los recursos retenidos por todos los p(j) tal que j < i 16
17 Estado Seguro (un ejemplo) Tres procesos y un máximo de 12 cintas en la instalación. Los procesos necesitarían estas cantidades de cintas: P(0) ----> 10 P(1) ----> 4 P(2) ----> 9 En un instante dado T(0) tienen asignado: P(0) <--- 5 P(1) <--- 2 P(2) < Libres Existe una secuencia segura <P(1),P(0),P(2)>. Necesita Tiene P(0) 10 5 P(1) 4 2 P(2)
18 Estado Seguro (un ejemplo) P(1) toma 2 más. Cuando termina libera 4, más la instancia que quedaba libre son 5. Luego P(0) toma 5. Cuando termina libera las 10 retenidas y luego P(2) toma 7 y luego termina. Luego estamos en un estado seguro, con lo cual no podemos pasar a un estado de "deadlock" si se asignan los recursos en el orden dado por la secuencia dada. 18
19 Estado Seguro Una secuencia segura es una simulación partiendo del estado de un sistema en un momento dado. NO significa que los pedidos y/o liberaciones vayan a realizarse de esa forma en el mundo real. 19
20 Estado Seguro De un estado "seguro" podemos pasar a uno "inseguro" (UNSAFE). Supongamos que en el instante T(1), se da un recurso más a P(2) : P(0) < P(1) < P(2) < Libres Solo P(1) puede satisfacer sus requerimientos, aquí no existe una secuencia segura, pues ni P(0), ni P(2) pueden obtener la totalidad de recursos que requieren, entonces podemos desembocar en un estado de "deadlock". Si se hubiera respetado la secuencia "segura", esto no se habría producido. 20
21 CONCLUSIONES: Estado Seguro Un estado de "deadlock"es un estado "inseguro". Un estado "inseguro" puede desembocar en un "deadlock", perononecesariamente lo es. Si aún pidiendo un recurso, y estando éste libre se debe esperar, esto reduce la utilización del recurso 21
22 Safe, Unsafe, Deadlock 22
23 ALGORITMOS PARA EVITAR EL DEADLOCK El Algoritmo del Banquero. ( The Banker's Algorithm) Dijkstra (1965) Habermann (1969) Se basa en determinar si los recursos que están libres pueden ser adjudicados a procesos sin abandonar el estado "seguro". Supondremos N procesos y M clases de recursos y ciertas estructuras de datos 23
24 Banquero y Seguridad - Disponible : Vector de longitud M. Disponible(j) = k, indica que existen k instancias disponibles del recurso r(j). - MAX : Matriz de NxM. Define la máxima demanda de cada proceso. MAX(i,j) = k, dice que p(i) requiere a lo sumo k instancias del recurso r(j). - Asignación :Matriz de NxM. Define el número de recursos de cada tipo actualmente tomados por cada proceso. Asignación(i,j,) = k, dice que el proceso p(i) tiene k instancias del recurso r(j). - Necesidad :Matriz de NxM. Define el resto de necesidad de recursos de cada proceso. Necesidad(i,j) = k significa que el proceso p(i) necesita k más del recurso r(j). - Requerimiento : Es el vector de requerimientos de p(i). Requerimiento (i)(j) = k, indica que p(i) requiere k instancias del recurso r(j). 24
25 Banquero y Seguridad De lo cual se desprende que: Necesidad(i,j) = MAX(i,j) - Asignación(i,j) Para simplificar utilizaremos la notación siguiente: Si X e Y son dos vectores: X Y sii X(i) Y(i) i y X < Y sii X Y, y X Y. Además trataremos aparte las matrices por sus filas, por ejemplo: Asignación(i) define todos los recursos asignados por el proceso p(i). Requerimiento(i) es el vector de requerimientos de p(i). 25
26 Banquero y Seguridad - ALGORITMO Cuando se requiere un recurso se realizan primero estas verificaciones: 1. Si Requerimiento(i) Necesidad(i) seguir, sino ERROR (se pide más que lo declarado en MAX(i)). 2. Si Requerimiento(i) Disponible seguir, si no debe esperar, pues el recurso no está disponible 3. Luego el sistema pretende adjudicar los recursos a p(i), para lo cual realiza una simulación modificando los estados de la siguiente forma: Disponible = Disponible - Requerimiento(i) Asignación(i) = Asignación(i) + Requerimiento(i) Necesidad(i) = Necesidad(i) - Requerimiento(i) Si esta nueva situación mantiene al sistema en estado "seguro", los recursos son adjudicados. Si el nuevo estado es "inseguro", p(i) debe esperar y, además, se restaura el anterior estado de asignación total de recursos. Para verificarlo usa el ALGORITMO DE SEGURIDAD 26
27 ALGORITMO DE SEGURIDAD Paso 1. Definimos Work = Disponible (de M elementos) y Finish = F (de Falso) para todo i con i=1,2,...,n (Procesos). Finish(i) va marcando cuáles son los procesos ya controlados (si están en V) y con Work vamos acumulando a los recursos libres que quedan a medida que terminan. Paso 2. Buscamos la punta de la secuencia de 'SAFE' y los subsiguientes. Encontrar el i tal que: a) Finish(i) = F y b) Necesidad(i) Work si no existe ese i, ir a Paso 4. Paso 3.Work = Work + asignación(i) Finish(i) = V (por Verdadero); ir a Paso 2. Paso 4. Si Finish(i) = V para todo i, el sistema está en estado "SAFE", o sea, encontramos la secuencia de procesos. Requiere MxNxN operaciones. 27
28 ALGORITMO DEL BANQUERO (ejemplo) Sea el conjunto de procesos {p(0),p(1),p(2),p(3),p(4)} y 3 recursos {A,B,C}. A tiene 10 instancias, B tiene 5 instancias y C tiene 7 instancias. Necesidad = MAX - Asig Asignación A B C MAX A B C A B C p(0) p(1) p(2) p(3) p(4) Disponible A B C Requerimiento de p(1)= <1, 0, 2 > 28
29 ALGORITMO DEL BANQUERO (ejemplo) Para decidir que puedo garantizar la satisfacción de este requerimiento: a) Veo que Req(i) Disponible ((1,0,2) (3,2,2)) b) Veo que Req(i) Necesidad ((1 0 2 ) (1 2 2)) c) Cumplimos el requerimiento, con lo cual se altera la información reflejando el siguiente estado: ASIG NEC NUEVO DISP. p(0) p(1) p(2) p(3) p(4) Veamos ahora el algoritmo de Seguridad 29
30 ALGORITMO DEL BANQUERO (ejemplo del algoritmo de seguridad) Paso 1 WORK = < > y Finish(i) = F para todo i Paso 2 Existe i? Tomemos P1 porque < > < > y Finish(1)=F Paso 3 WORK = WORK + ASIG P(1) = < > + < > = < > Finish(1) = V Paso 2 Existe i? Tomemos P3 porque < > < > y Finish(3)=F Paso 3 WORK = WORK + ASIG P(3) = < > + < > = < > Finish(3) = V Paso 2 Existe i? Tomemos P4 porque < > < > y Finish(4)=F Paso 3 WORK = WORK + ASIG P(4) = < > + < > = < > Finish(4) = V... Y así siguiendo obtenemos la secuencia segura { p1, p3, p4, p0, p2 } 30
31 ALGORITMO DEL BANQUERO - Algunas consideraciones El algoritmo del Banquero impone fuertes restricciones al sistema ya que solo permite asignar recursos si el estado resultante es seguro. Podrían asignarse recursos pasando por estados inseguros y finalmente no llegar a entrar en deadlock pero el Banquero no lo permite. Además el algoritmo requiere mucha información previa que puede no estar disponible. Cómo se puede estar seguro que el proceso efectivamente requerirá lo declarado en MAX? 31
32 Algoritmo para recursos de una sola instancia Cuando se tienen recursos de una sola instancia basta con utlizar un grafo de asignación de recursos para determinar si el sistema se encuentra o no en estado seguro. En estos grafos se denota con una línea punteada el posible requerimiento de un recurso por parte de un proceso. 32
33 Algoritmo para recursos de una sola instancia 33
34 Algoritmo para recursos de una sola instancia Ejemplo de un estado Inseguro en un grafo de asignación de recursos. 34
35 DETECCION DE DEADLOCK ALGORITMO DE SHOSHANI Y COFFMAN (1970) - Disponible : Vector de longitud M. Disponible(j) = k, indica que existen k instancias disponibles del recurso r(j). - Asignación :Matriz de NxM. Define el número de recursos de cada tipo actualmente tomados por cada proceso. Asignación(i,j,) = k, dice que el proceso p(i) tiene k instancias del recurso r(j). - Requerimiento o Espera: Matiz de NxM. Define los recursos requeridos por cada proceso en un instante, es decir, aquellos recursos por los cuales el proceso se encuentra en espera de disponibilidad. 35
36 DETECCION DE DEADLOCK ALGORITMO DE SHOSHANI Y COFFMAN (1970) P1. Work = Disponible Si Asignación(i) 0 => Finish(i) = Falso sino Finish(i) = Verdadero P2. Encontrar un i tal que a) Finish(i) = F b) Requerimiento(i) Work sino ir a Paso P4. P3. Work = Work + Asignación(i) Finish(i) = V ir a Paso P2. P4. Si Finish(i) = F entonces el sistema está en DEADLOCK. Más aún, los p(j) cuyo Finish(j) = F son los procesos involucrados en el deadlock 36
37 RECUPERACION FRENTE DEADLOCK Violar la exclusión mutua y asignar el recurso a varios procesos Cancelar los procesos suficientes para romper la espera circular Desalojar recursos de los procesos en deadlock. Para eliminar el deadlock matando procesos pueden usarse dos métodos: - Matar todos los procesos en estado de deadlock. Elimina el deadlock pero a un muy alto costo. - Matar de a un proceso por vez hasta eliminar el ciclo. Este método requiere considerable overhead ya que por cada proceso que vamos eliminando se debe reejecutar el algoritmo de detección para verificar si el deadlock efectivamente desapareció o no. 37
38 RECUPERACION FRENTE DEADLOCK 1) Selección de Víctimas Habría que seleccionar aquellos procesos que rompen el ciclo y tienen mínimo costo. Para ello debemos tener en cuenta: - Prioridad. - Tiempo de proceso efectuado, faltante. - Recursos a ser liberados (cantidad y calidad). - Cuántos procesos quedan involucrados. - Si por el tipo de dispositivo es posible volver atrás. 38
39 RECUPERACION FRENTE DEADLOCK 2) Rollback - Volver todo el proceso hacia atrás (cancelarlo). - Volver hacia atrás hasta un punto en el cual se haya guardado toda la información necesaria (CHECKPOINT) 39
40 RECUPERACION FRENTE DEADLOCK 3) Inanición (starvation) Es un tipo especial de Deadlock en el cual los recursos no llegan nunca a adquirirse. Ejemplo típico: Procesos largos en una administración del procesador de tipo Mas Corto Primero. Si el sistema trabajase con prioridades, podría ser que las víctimas fuesen siempre las mismas, luego habría que llevar una cuenta de las veces que se le hizo Rollback y usarlo como factor de decisión. 40
Interbloqueos. Tema 5. Sistemas Operativos I. Tema 5: Interbloqueos. Equipo de Sistemas Operativos DISCA / DSIC UPV
Sistemas Operativos I Tema 5 Interbloqueos Equipo de Sistemas Operativos DISCA / DSIC UPV Tema 5: Interbloqueos Contenido 1.- Concepto de interbloqueo..- Caracterización formal. Modelo de sistema. Representación
TEMA 2. El Interbloqueo. Contenido
TEMA 2 El Interbloqueo Contenido 2.1. Introducción 2.2. Recursos 2.3. Condiciones para que se produzca Interbloqueo 2.4. Modelado del Interbloqueo 2.5. Métodos para el tratamiento del interbloqueo 2.6.
CAPITULO 6. Control de Concurrencia y Recuperación
CAPITULO 6 Control de Concurrencia y Recuperación 6.1 Protocolos de Bloqueo Un protocolo de bloqueo nace de la necesidad creada cuando una transacción solicita un bloqueo de un modo particular sobre un
Grafos. Amalia Duch Brown Octubre de 2007
Grafos Amalia Duch Brown Octubre de 2007 Índice 1. Definiciones Básicas Intuitivamente un grafo es un conjunto de vértices unidos por un conjunto de líneas o flechas dependiendo de si el grafo es dirigido
Algoritmos para determinar Caminos Mínimos en Grafos
Problemas de camino mínimo Algoritmos para determinar Caminos Mínimos en Grafos Algoritmos y Estructuras de Datos III DC, FCEN, UBA, C 202 Problemas de camino mínimo Dado un grafo orientado G = (V, E)
Sincronización en base a relojes. relojes
Sincronización en base a relojes Dos tipos de relojes según los algoritmos relojes Relojes lógicos Relojes físicos lo importante es la consistencia interna de los relojes, no si están cercanos al tiempo
4.6.- Integridad: Control de concurrencia.
4.6.- Integridad: Control de concurrencia. 4.6.1.- Introducción 4.6.2.- Técnicas de Bloqueo. 4.6.2.1.- Bloqueo (variable cerrojo) Tipos, protocolos Problemas. Interbloqueo Granularidad 4.6.2.2.- Marcas
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:
Tema 3: El Método Simplex. Algoritmo de las Dos Fases.
Tema 3: El Método Simplex Algoritmo de las Dos Fases 31 Motivación Gráfica del método Simplex 32 El método Simplex 33 El método Simplex en Formato Tabla 34 Casos especiales en la aplicación del algoritmo
Contenido. Qué es el interbloqueo? Cómo prevenirlo? Cómo evitarlo? Cómo detectarlo? Interbloqueo. Cruce en un Puente. Qué es?
Contenido Interbloqueo Qué es el? Cómo prevenirlo? Cómo evitarlo? Cómo detectarlo? Qué es? Bloqueo permanente de un conjunto de procesos que para terminar necesitan o bien los recursos del sistema, o bien
Semana03[1/17] Funciones. 16 de marzo de Funciones
Semana03[1/17] 16 de marzo de 2007 Introducción Semana03[2/17] Ya que conocemos el producto cartesiano A B entre dos conjuntos A y B, podemos definir entre ellos algún tipo de correspondencia. Es decir,
IN34A - Optimización
IN34A - Optimización Modelos de Programación Lineal Leonardo López H. [email protected] Primavera 2008 1 / 24 Contenidos Programación Lineal Continua Problema de Transporte Problema de Localización
Algebra lineal y conjuntos convexos
Apéndice A Algebra lineal y conjuntos convexos El método simplex que se describirá en el Tema 2 es de naturaleza algebraica y consiste en calcular soluciones de sistemas de ecuaciones lineales y determinar
Práctica N 6 Modelos de Programación Lineal Entera
Práctica N 6 Modelos de Programación Lineal Entera 6.1 Una empresa textil fabrica 3 tipos de ropa: camisas, pantalones y shorts. Las máquinas necesarias para la confección deben ser alquiladas a los siguientes
Grafos. AMD Grado en Ingeniería Informática. AMD Grado en Ingeniería Informática (UM) Grafos 1 / 30
Grafos AMD Grado en Ingeniería Informática AMD Grado en Ingeniería Informática (UM) Grafos / 0 Objetivos Al finalizar este tema tendréis que: Conocer la terminología básica de la teoría de grafos. Pasar
CONCEPTOS BASICOS DE LA TRANSFORMADA DE LAPLACE LA TRANSFORMADA DE LAPLACE
LA TRANSFORMADA DE LAPLACE Por cálculo integral sabemos que cuando vamos a determinar una integral impropia de la forma,su desarrollo se obtiene realizando un cambio de variable en el límite superior de
Tema 2: Teorema de estructura de los grupos abelianos finitamente generados.
ESTRUCTURAS ALGEBRAICAS GRADO EN MATEMÁTICAS. CURSO 215/216 Tema 2: Teorema de estructura de los grupos abelianos finitamente generados. 1.1. Grupo abeliano libre. Bases. Definición 1.1. El grupo Z n con
Mercedes Granda Departamento de Electrónica y Computadores. Las propiedades de las redes de Petri nos permiten
22//22 REDES DE PETRI: PROPIEDADES Y MÉTODOS DE ANÁLISIS PROGRAMACIÓN CONCURRENTE MASTER EN COMPUTACIÓN DEPARTAMENTO DE ELECTRÓNICA Y COMPUTADORES UNIVERSIDAD DE CANTABRIA CURSO 22/3 REDES DE PETRI: PROPIEDADES
PROBLEMAS RESUELTOS DE ASIGNACIÓN POR EL MÉTODO HUNGARO INVESTIGACIÓN DE OPERACIONES I
PROBLEMAS RESUELTOS DE ASIGNACIÓN POR EL MÉTODO HUNGARO INVESTIGACIÓN DE OPERACIONES I Prof.: MSc. Julio Rito Vargas Avilés. Método Húngaro: Los problemas de asignación incluyen aplicaciones tales como
IN Guía de Problemas Resueltos de Geometría de Programación Lineal v1.0
IN3701 - Guía de Problemas Resueltos de Geometría de Programación Lineal v1.0 Acá va una pequeña guía con problemas resueltos de Geometría en Programación Lineal con problemas básicamente extraídos del
un conjunto cuyos elementos denominaremos vectores y denotaremos por es un espacio vectorial si verifica las siguientes propiedades:
CAPÍTULO 2: ESPACIOS VECTORIALES 2.1- Definición y propiedades. 2.1.1-Definición: espacio vectorial. Sea un cuerpo conmutativo a cuyos elementos denominaremos escalares o números. No es necesario preocuparse
Algebra Lineal Tarea No 22: Valores y vectores propios Solución a algunos problemas de la tarea (al 29 de junio de 2014)
Algebra Lineal Tarea No : Valores y vectores propios a algunos problemas de la tarea (al 9 de junio de 04. Para la matriz A A Indique cuáles vectores son vectores propios: ( ( ( v, v, v 3 3 Recordemos
NOTA LA IP SUMINISTRADA ES /21, NO ES LA DE LA IMAGEN.
Cálculo de subredes Cálculo de direcciones: Caso 1 En esta sección, utilizaremos una topología de muestra para practicar la asignación de direcciones a los hosts. La figura muestra la topología de la red
Relaciones. Estructuras Discretas. Relaciones. Relaciones en un Conjunto. Propiedades de Relaciones en A Reflexividad
Estructuras Discretas Relaciones Definición: relación Relaciones Claudio Lobos, Jocelyn Simmonds clobos,[email protected] Universidad Técnica Federico Santa María Estructuras Discretas INF 152 Sean
Conjuntos, relaciones y funciones Susana Puddu
Susana Puddu 1. Repaso sobre la teoría de conjuntos. Denotaremos por IN al conjunto de los números naturales y por ZZ al de los enteros. Dados dos conjuntos A y B decimos que A está contenido en B o también
EL PROBLEMA DE TRANSPORTE
1 EL PROBLEMA DE TRANSPORTE La TÉCNICA DE TRANSPORTE se puede aplicar a todo problema físico compatible con el siguiente esquema: FUENTES DESTINOS TRANSPORTE DE UNIDADES Donde transporte de unidades puede
Bases Formales de la Computación
Modal Bases Formales de la Computación Pontificia Universidad Javeriana 3 de abril de 2009 Modal LÓGICAS MODALES Contenido Modal 1 Modal 2 3 Qué es la lógica Modal? Modal Variedad de diferentes sistemas
Aritmética de Enteros
Aritmética de Enteros La aritmética de los computadores difiere de la aritmética usada por nosotros. La diferencia más importante es que los computadores realizan operaciones con números cuya precisión
Complejidad computacional (Análisis de Algoritmos)
Definición. Complejidad computacional (Análisis de Algoritmos) Es la rama de las ciencias de la computación que estudia, de manera teórica, la optimización de los recursos requeridos durante la ejecución
Tema 1: Matrices y Determinantes
Tema 1: Matrices y Determinantes September 14, 2009 1 Matrices Definición 11 Una matriz es un arreglo rectangular de números reales a 11 a 12 a 1m a 21 a 22 a 2m A = a n1 a n2 a nm Se dice que una matriz
DISEÑO DE UNA POLÍTICA DE GESTIÓN DE INVENTARIOS PARA MATERIAS PRIMAS DE PRODUCTOS DE CUIDADO PERSONAL
DISEÑO DE UNA POLÍTICA DE GESTIÓN DE INVENTARIOS PARA MATERIAS PRIMAS DE PRODUCTOS DE CUIDADO PERSONAL Proyecto de Grado para acceder al título de Magíster en Ingeniería con énfasis en Ingeniería Industrial
Práctica N o 8 Desigualdades Válidas - Algoritmos de Planos de Corte - Algoritmos Branch & Cut
Práctica N o 8 Desigualdades Válidas - Algoritmos de Planos de Corte - Algoritmos Branch & Cut 8.1 Para cada uno de los siguientes conjuntos, encontrar una desigualdad válida que agregada a la formulación
Definición: Dos matrices A y B son iguales si tienen el mismo orden y coinciden los elementos que ocupan el mismo lugar.
UNIDAD 03: MATRICES Y DETERMINANTES. 3.1 Conceptos de Matrices. 3.1.1 Definición de matriz. Definición: Se lama matriz de orden m x n a un arreglo rectangular de números dispuestos en m renglones y n columnas.
MODELOS DE COMPUTACION I Preguntas Tipo Test. 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular.
MODELOS DE COMPUTACION I Preguntas Tipo Test Indicar si son verdaderas o falsas las siguientes afirmaciones: 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular. 2.
Rentas Ciertas MATEMÁTICA FINANCIERA. Rentas Ciertas: Ejemplo. Rentas Ciertas. Ejemplo (1) C C C C C
Rentas Ciertas MATEMÁTICA FINANCIERA RENTAS CIERTAS I Luis Alcalá UNSL Segundo Cuatrimeste 06 A partir de ahora, utilizaremos capitalización compuesta como ley financiera por defecto, salvo que expĺıcitamente
Técnicas de modelado. Problemas adicionales
Técnicas de modelado Clase nro. 10 CURSO 2010 Problemas adicionales Los ejemplos discutidos hasta ahora contienen simplificaciones que son difíciles de encontrar en sistemas de cierta complejidad. Vimos
Universidad Nacional de Ingeniería Facultad de Ciencias. Física Computacional CC063. Algebra Lineal. Prof: J. Solano 2012-I
Universidad Nacional de Ingeniería Facultad de Ciencias Física Computacional CC063 Algebra Lineal Prof: J. Solano 2012-I Introduccion Aqui trabjaremos con operaciones basicas con matrices, tales como solucion
CONTINUIDAD DE FUNCIONES. SECCIONES A. Definición de función continua. B. Propiedades de las funciones continuas. C. Ejercicios propuestos.
CAPÍTULO IV. CONTINUIDAD DE FUNCIONES SECCIONES A. Definición de función continua. B. Propiedades de las funciones continuas. C. Ejercicios propuestos. 121 A. DEFINICIÓN DE FUNCIÓN CONTINUA. Una función
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
TI 89. Cómo sobrevivir en Precálculo
TI 89 Cómo sobrevivir en Precálculo TI-89 Menús que más utilizaremos: Operaciones Numéricas Simplificar: 3 + 1 5 ( 4)2 9 3 4 Notar la diferencia entre el símbolo de resta y el signo negativo. Notar el
Teoría de la Probabilidad Tema 2: Teorema de Extensión
Teoría de la Probabilidad Tema 2: Teorema de Extensión Alberto Rodríguez Casal 25 de septiembre de 2015 Definición Una clase (no vacía) A de subconjuntos de Ω se dice que es un álgebra si A es cerrada
Matemáticas Discretas TC1003
Matemáticas Discretas TC1003 Módulo I: s Válidos Departamento de Matemáticas ITESM Módulo I: s Válidos Matemáticas Discretas - p. 1/50 En matemáticas y en lógica un argumento no es una disputa. Más bien,
TEMA 1. MATRICES, DETERMINANTES Y APLICACIÓN DE LOS DETERMINANTES. CONCEPTO DE MATRIZ. LA MATRIZ COMO EXPRESIÓN DE TABLAS Y GRAFOS.
TEMA 1. MATRICES, DETERMINANTES Y APLICACIÓN DE LOS DETERMINANTES. 1. MATRICES. CONCEPTO DE MATRIZ. LA MATRIZ COMO EXPRESIÓN DE TABLAS Y GRAFOS. DEFINICIÓN: Las matrices son tablas numéricas rectangulares
Matrices Invertibles y Elementos de Álgebra Matricial
Matrices Invertibles y Elementos de Álgebra Matricial Departamento de Matemáticas, CSI/ITESM 20 de agosto de 2008 Índice 121 Introducción 1 122 Transpuesta 1 123 Propiedades de la transpuesta 2 124 Matrices
Teoría de grafos y optimización en redes
Teoría de grafos y optimización en redes José María Ferrer Caja Universidad Pontificia Comillas Definiciones básicas Grafo: Conjunto de nodos (o vértices) unidos por aristas G = (V,E) Ejemplo V = {,,,,
Árboles Filogenéticos. BT7412, CC5702 Bioinformática Diego Arroyuelo. 2 de noviembre de 2010
Unidad 6: Árboles Filogenéticos BT7412, CC5702 Bioinformática Diego Arroyuelo 2 de noviembre de 2010 Temario (Introduction to Computational Molecular Biology Setubal y Meidanis Capítulo 6) 1. Introducción
PROGRAMACION CONCURRENTE Y DISTRIBUIDA
PROGRAMACION CONCURRENTE Y DISTRIBUIDA V.2 Redes de Petri: Análisis y validación. J.M. Drake 1 Capacidad de modelado y capacidad de análisis El éxito de un método de modelado es consecuencia de su capacidad
TEMA 2. ESPACIOS VECTORIALES
TEMA 2. ESPACIOS VECTORIALES CÉSAR ROSALES GEOMETRÍA I En este tema comenzaremos el estudio de los objetos que nos interesarán en esta asignatura: los espacios vectoriales. Estos son estructuras básicas
CONTENIDOS. 1. Procesos Estocásticos y de Markov. 2. Cadenas de Markov en Tiempo Discreto (CMTD) 3. Comportamiento de Transición de las CMTD
CONTENIDOS 1. Procesos Estocásticos y de Markov 2. Cadenas de Markov en Tiempo Discreto (CMTD) 3. Comportamiento de Transición de las CMTD 4. Comportamiento Estacionario de las CMTD 1. Procesos Estocásticos
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
Modelos de cola.
Modelos de cola http://humberto-r-alvarez-a.webs.com Las colas Las colas son frecuentes en la vida cotidiana: En un banco En un restaurante de comidas rápidas Al matricular en la universidad Los autos
Espacios Vectoriales
Espacios Vectoriales Espacios Vectoriales Verónica Briceño V. noviembre 2013 Verónica Briceño V. () Espacios Vectoriales noviembre 2013 1 / 47 En esta Presentación... En esta Presentación veremos: Espacios
Tema 3: Espacios vectoriales
Tema 3: Espacios vectoriales K denotará un cuerpo. Definición. Se dice que un conjunto no vacio V es un espacio vectorial sobre K o que es un K-espacio vectorial si: 1. En V está definida una operación
Departamento de Matemáticas, CCIR/ITESM. 9 de febrero de 2011
Factorización LU Departamento de Matemáticas, CCIR/ITESM 9 de febrero de 2011 Índice 26.1. Introducción............................................... 1 26.2. Factorización LU............................................
ALGEBRA 1- GRUPO CIENCIAS- TURNO TARDE- Enteros
Resumen teoría Prof. Alcón ALGEBRA 1- GRUPO CIENCIAS- TURNO TARDE- Z = N {0} N Enteros Las operaciones + y. son cerradas en Z, es decir la suma de dos números enteros es un número entero y el producto
EL42A - Circuitos Electrónicos
ELA - Circuitos Electrónicos Clase No. 24: Amplificadores Operacionales (1) Patricio Parada [email protected] Departamento de Ingeniería Eléctrica Universidad de Chile 3 de Noviembre de 2009 ELA -
Introducción a la Teoría de Grafos
Introducción a la Teoría de Grafos Flavia Bonomo [email protected] do. Cuatrimestre 009 Programa Introducción a la teoría de grafos Problemas de camino mínimo Problemas de flujo máximo Programación lineal
Probabilidad y Estadística
Probabilidad y Estadística Probabilidad Conceptos como probabilidad, azar, aleatorio son tan viejos como la misma civilización. Y es que a diario utilizamos el concepto de probabilidad: Quizá llueva mañana
Sistemas de información Administrativa II
Sistemas de información Administrativa II UNIDAD 1 MSI. José Luis Llamas Cárdenas Ciclo de Vida Proceso de todo sistema de información Sistemas de Información El sistema informativo esta comprendido por
Introducción a los espacios vectoriales
1 / 64 Introducción a los espacios vectoriales Pablo Olaso Redondo Informática Universidad Francisco de Vitoria November 19, 2015 2 / 64 Espacios vectoriales 1 Las 10 propiedades de un espacio vectorial
Tema 2.- Formas Cuadráticas.
Álgebra. 004 005. Ingenieros Industriales. Departamento de Matemática Aplicada II. Universidad de Sevilla. Tema.- Formas Cuadráticas. Definición y representación matricial. Clasificación de las formas
Espacios Vectoriales www.math.com.mx
Espacios Vectoriales Definiciones básicas de Espacios Vectoriales www.math.com.mx José de Jesús Angel Angel [email protected] MathCon c 007-009 Contenido. Espacios Vectoriales.. Idea Básica de Espacio Vectorial.................................
Sistemas de Ecuaciones Lineales y Matrices
Capítulo 4 Sistemas de Ecuaciones Lineales y Matrices El problema central del Álgebra Lineal es la resolución de ecuaciones lineales simultáneas Una ecuación lineal con n-incógnitas x 1, x 2,, x n es una
INNOVACIONES TECNOLÓGICAS UNOMAS.EC S.A. MANUAL DE USUARIO. Bodegas Móvil
MANUAL DE USUARIO Bodegas Móvil FEBRERO 2016 1 Acerca de este manual En este manual encontrará información que le permitirá: Descargar el mapa del área de concesión. Gestionar usuarios y grupos de mantenimiento.
PREPARACION OLIMPIADA MATEMATICA CURSO
Comenzaremos recordando algunos conocimientos matemáticos que nos son necesarios. Para ello veamos el concepto de factorial de un número natural. Es decir, es un producto decreciente desde el número que
Tema 2 Resolución de EcuacionesNo Lineales
Tema 2 Resolución de Ecuaciones No Lineales E.T.S.I. Informática Indice Introducción 1 Introducción 2 Algoritmo del método de Bisección Análisis del 3 4 5 6 Algoritmo de los métodos iterativos Interpretación
Formulación del problema de la ruta más corta en programación lineal
Formulación del problema de la ruta más corta en programación lineal En esta sección se describen dos formulaciones de programación lineal para el problema de la ruta más corta. Las formulaciones son generales,
Grafos. Algoritmos y Estructuras de Datos III
Grafos Algoritmos y Estructuras de Datos III Grafos Un grafo G = (V, X ) es un par de conjuntos, donde V es un conjunto de puntos o nodos o vértices y X es un subconjunto del conjunto de pares no ordenados
Semana02[1/23] Conjuntos. 9 de marzo de Conjuntos
Semana02[1/23] 9 de marzo de 2007 Introducción Semana02[2/23] La teoría de conjuntos gira en torno a la función proposicional x A. Los valores que hacen verdadera la función proposicional x A son aquellos
3 Curvas alabeadas. Solución de los ejercicios propuestos.
3 Curvas alabeadas. Solución de los ejercicios propuestos.. Se considera el conjunto C = {(x, y, z R 3 : x y + z = x 3 y + z = }. Encontrar los puntos singulares de la curva C. Solución: Llamemos f (x,
Sistemas Operativos. Dr. Luis Gerardo de la Fraga. Departamento de Computación Cinvestav
Sistemas Operativos Dr. Luis Gerardo de la Fraga E-mail: [email protected] http://cs.cinvestav.mx/~fraga Departamento de Computación Cinvestav 12 de junio de 2015 Dr. Luis Gerardo de la Fraga Cinvestav,
Seminario de problemas-eso. Curso Hoja 10
Seminario de problemas-eso. Curso 011-1. Hoja 10 5. Dado un triángulo cualquiera, demuestra que es posible recubrir el plano con infinitos triángulos iguales al dado, de forma que estos triángulos no se
Introducción (Informal)
Redes de Petri Introducción (Informal) Cesáreo Raimúndez Depto. de Ingeniería de Sistemas y Automática ETSII-Vigo Redes de Petri p. 1/18 Introducción Herramienta gráfica para modelar la concurrencia y
Servicios Públicos. Manual de Usuarios Módulo Gastos. Proyecto Implementación UBA. Febrero 2011 Versión 2.0
Manual de Usuarios Módulo Gastos Servicios Públicos Proyecto Implementación UBA Coordinación General de Tecnologías de la Información y las Comunicaciones Febrero 2011 Versión 2.0 Contenido 17. Gastos
Lenguajes Regulares. Antonio Falcó. - p. 1
Lenguajes Regulares Antonio Falcó - p. 1 Cadenas o palabras I Una cadena o palabra es una sucesión finita de símbolos. cadena {c, a, d, e, n}. 10001 {0, 1} El conjunto de símbolos que empleamos para construir
Definición 1 Un semigrupo es un conjunto E provisto de una operación binaria asociativa sobre E, se denota por (E, ).
ALGEBRA La primera parte del presente libro está dedicada a las estructuras algebraicas. En esta parte vamos a iniciar agregándole a los conjuntos operaciones. Cuando las operaciones tienen determinadas
Apéndice sobre ecuaciones diferenciales lineales
Apéndice sobre ecuaciones diferenciales lineales Juan-Miguel Gracia 10 de febrero de 2008 Índice 2 Determinante wronskiano. Wronskiano de f 1 (t), f 2 (t),..., f n (t). Derivada de un determinante de funciones.
SISTEMAS DE ECUACIONES LINEALES
1 SISTEMAS DE ECUACIONES LINEALES Una ecuación es un enunciado o proposición que plantea la igualdad de dos expresiones, donde al menos una de ellas contiene cantidades desconocidas llamadas variables
Programación entera: Ejemplos, resolución gráfica, relajaciones lineales. Investigación Operativa, Grado en Estadística y Empresa, 2011/12
Programación entera: Ejemplos, resolución gráfica, relajaciones lineales Prof. José Niño Mora Investigación Operativa, Grado en Estadística y Empresa, 2011/12 Esquema Programación entera: definición, motivación,
Investigación de Operaciones I. Problemas de Asignación
Investigación de Operaciones I Problemas de Asignación MSc. Ing. Julio Rito Vargas II cuatrimestre Introducción Los problemas de asignación incluyen aplicaciones tales como asignar personas a tareas. Aunque
Una ecuación puede tener ninguna, una o varias soluciones. Por ejemplo: 5x 9 = 1 es una ecuación con una incógnita con una solución, x = 2
Podemos definir a las ecuaciones como una igualdad entre expresiones algebraicas (encadenamiento de números y letras ligados por operaciones matemáticas diversas),en la que intervienen una o más letras,
DOCENTE: JESÚS E. BARRIOS P.
DOCENTE: JESÚS E. BARRIOS P. DEFINICIONES Es larga la historia del uso de las matrices para resolver ecuaciones lineales. Un texto matemático chino que proviene del año 300 A. C. a 200 A. C., Nueve capítulos
Análisis y síntesis de sistemas digitales combinacionales
Análisis Algoritmo de análisis, para un circuito lógico combinacional Síntesis. Conceptos Circuitos combinacionales bien construidos Circuitos combinacionales mal construidos Criterios de optimización
MAXIMOS Y MINIMOS RELATIVOS
MAXIMOS Y MINIMOS RELATIVOS Con cierta frecuencia nos encontramos con la necesidad de buscar la mejor forma de hacer algo. En muchas ocasiones a través de los poderosos mecanismos de cálculo diferencial
Grafos. Suponiendo que e = [u, v]. Entonces los nodos u y v se llaman extremos de e y u y v se dice que son nodos adyacentes o vecinos.
Grafos Los grafos son estructuras que constan de vértices o nodos y de aristas o arcos que conectan los vértices entre sí. Un grafo G consiste en dos cosas: 1. Un conjunto V de elementos llamados nodos
UNIDAD II. FUNCIONES TRIGONOMÉTRICAS. Tema. Funciones trigonométricas
UNIDAD II. FUNCIONES TRIGONOMÉTRICAS Tema. Funciones trigonométricas FUNCIONES TRIGONOMÉTRICAS Introducción: Las funciones trigonométricas surgen de una forma natural al estudiar el triángulo rectángulo
Breve introducción a la Investigación de Operaciones
Breve introducción a la Investigación de Operaciones Un poco de Historia Se inicia desde la revolución industrial, usualmente se dice que fue a partir de la segunda Guerra Mundial. La investigación de
Álgebra Lineal Ma1010
Álgebra Ma1010 Departamento de Matemáticas ITESM Álgebra - p. 1/31 En este apartado se introduce uno de los conceptos más importantes del curso: el de combinación lineal entre vectores. Se establece la
ÁLGEBRA MATRICIAL PROF. MARIELA SARMIENTO SESIÓN 10: MODELO INSUMO PRODUCTO. Introducción
ÁLGEBRA MATRICIAL PROF. MARIELA SARMIENTO SESIÓN 10: MODELO INSUMO PRODUCTO Introducción Fue introducido por primera vez a finales de los años treinta por Wassily Leontief, ganador del Premio Nóbel 1973,
Inicio rápido: Regístrese para Microsoft Business Center
Inicio rápido: Regístrese para Microsoft Business Center Guía para el cliente Noviembre de 2016 Microsoft Business Center es para organizaciones que han firmado un Acuerdo de Productos y Servicios de Microsoft
Script For each simple tabla base y cláusula order
Page1 Script For each simple tabla base y cláusula order Para determinar la tabla base, GeneXus extrae los atributos nombrados en el for each encuentra las tablas en las que se hallan: y toma como tabla
4.2. Funciones inyectivas, sobreyectivas y biyectivas
4.. Funciones inyectivas, sobreyectivas y biyectivas En esta sección estudiaremos tres conceptos básicos sobre funciones. 4... Funciones inyectivas Definición 4.. Sea f una función de en. Diremos que f
Máquinas de Turing IIC3242. IIC3242 Máquinas de Turing 1 / 42
Máquinas de Turing IIC3242 IIC3242 Máquinas de Turing 1 / 42 Complejidad Computacional Objetivo: Medir la complejidad computacional de un problema. Vale decir: Medir la cantidad de recursos computacionales
Tema 5: Semejanza. 1.- Introducción: Concepto de Escala y Teorema de Pitágoras.
Tema 5: Semejanza. En este tema nos dedicaremos al estudio de los triángulos y polígonos, y dedicaremos un apartado a un famoso teorema, que nos será de utilidad para entender la semejanza entre ellos:
Ejercicio de algoritmia resuelto con Visual Basic: ordenar series de series de números. (CU00356A)
aprenderaprogramar.com Ejercicio de algoritmia resuelto con Visual Basic: ordenar series de series de números. (CU00356A) Sección: Cursos Categoría: Curso Visual Basic Nivel I Fecha revisión: 2029 Autor:
El Autómata con Pila: Transiciones
El Autómata con Pila: Transiciones El Espacio de Configuraciones Universidad de Cantabria Esquema Introducción 1 Introducción 2 3 Transiciones Necesitamos ahora definir, paso por paso, como se comporta
