Filósofos comensales
|
|
- Alba Correa Blanco
- hace 8 años
- Vistas:
Transcripción
1 Deadlocks
2 Filósofos comensales
3 Deadlock Los tenedores son los recursos En una computadora, que recursos tenemos? CPU, memoria, placa gráfica, teclado, HD, impresora, CD writer Cuales recursos pueden generar deadlocks? Todos?
4 Deadlock Los recursos que no son fácilmente expropiables Típicamente recursos que se pueden usar exclusivamente, por ej. grabadora de CD, impresora, placa de sonido CPU, memoria: no problem
5 Definición de deadlock Un conjunto de procesos está en deadlock si todos los procesos del conjunto esperan un evento que sólo puede producir un proceso de ese mismo conjunto Instancia: Un conjunto de procesos está en deadlock si todos los procesos del conjunto esperan algún recurso ocupado por otro proceso del mismo conjunto.
6 Otros Deadlocks el típico: esperando recursos otros: esperando eventos como ser un mensaje de la red, o que ocurra algo particular en el sistema ej. que se cree cierto archivo, o que otro proceso deje de ejecutarse,...
7 Condiciones necesarias Para que se produzca un deadlock, tiene que pasar: 1. Exclusión mutua: cada recurso está siendo ocupado por a lo sumo un proceso 2. Retención y espera: Los procesos que tienen recursos previamente otorgados pueden solicitar otros recursos. 3. No expropiación: Los recursos asignados no pueden quitarse (expropiarse) a la fuerza. Todo proceso debe liberar los recursos voluntariamente.
8 Condiciones necesarias 4. Espera circular: Existe una cadena circular de espera entre 2 o más procesos. Q: donde están las 4 condiciones acá?
9 Modelado de deadlocks A través de grafos bipartitos dirigidos llamados grafos de asignación de recursos (a): A usa R (b) B espera S Ciclo en grafo ==> deadlock!
10 Estrategias para lidiar con deadlocks 1. Ignorar compromiso entre corrección y diseño 2. Detección y recuperación 3. Evitar dinámicamente mediante la asignación cuidadosa de recursos 4. Prevenirlo por diseño (prohibiendo alguna de las 4 condiciones necesarias)
11 Tipos de recursos Hasta ahora hemos asumido que cada recurso tiene un tipo único ej. un sistema con un sólo CD y una sola impresora En la práctica conviene asumir varios recursos de cada tipo Por ejemplo, las impresoras, los CD, Un proceso pide algún recurso de un tipo dado (sin importar cuál recurso en particular se le asigna)
12 Detección y recuperación Detección con un recurso de cada tipo Nos basta con detectar ciclos en el grafo de asignación de recursos El SO lleva una representación del grafo que actualiza en cada pedido/liberación de recurso, y que chequea por ciclos Esto puede ser muy costoso! Alternativamente el SO chequea cada k minutos/segundos
13 Ejemplo A pide R, S y luego libera R, S B pide S, T y luego libera S, T C pide T, R, y luego libera T, R Puede llegar a deadlock? depende de como son planificados!
14 Ejemplo
15 Ejemplo Una ejecución que lo evita
16 Cómo encontrar ciclos en un grafo Caso general ineficiente: hacer una búsqueda DFS desde cada nodo, buscando caminos con nodos repetidos Caso particular eficiente (para ciclos de long. <= 4) Tenemos n nodos. Inicializar una matriz A nxn con ceros Idea: para cada par de nodos j,k vecinos de un nodo i, ver si ellos están conectados entre sí (directa o indirectamente)
17 Cómo encontrar ciclos en un grafo Para cada nodo i: Si A[j,k] == 0 Set A[j,k] = 1 y continuar Si A[j,k]==1 Ciclo! Complejidad O(n^2): necesitamos recorrer la matriz nxn
18 Detección con varios recursos de cada tipo Buscar ciclos ya no funciona Cada nodo es ahora como una caja que contiene recursos Vamos a ver un algoritmo basado en matrices
19 Detección con varios recursos de cada tipo Tenemos n procesos y m clases de recursos E=(E1,...,Em) Ej: cantidad de recursos tipo j en existencia A=(A1,...,Am) Aj: cantidad de recursos tipo j disponibles (Availables) C = [Cij] 1<=j<=m, 1<=i<=n Cij: cantidad de recursos de tipo j ocupados por el proceso i al momento (Current)
20 Detección con varios recursos de cada tipo R = [Rij] 1<=j<=m, 1<=i<=n Rij: cantidad de recursos tipo j solicitados por el proceso i (Request) Ri son todos los recursos que va a pedir el proceso i durante su ejecución
21 Detección con varios recursos de cada tipo Def. Sean A=(A1,...,An) y B=(B1,...,Bn). Entonces A<=B sii Aj<=Bj para todo 1<=j<=n La suma tambien se define punto a punto
22 Formalizando Deadlocks Un deadlock es una propiedad sobre ejecuciones. Definimos un estado de un proceso como s = <A,C,R> Definimos un paso de ejecución como una relación entre estados s->s : <A,C,R> <A,C,R > donde se asignan o liberan recursos Estado inicial: s0 = <E, <0,...,0>, R0> Ejecucion: s0 sj
23 Formalizando Deadlocks recordar: <A,C,R> ejemplo: E=<10,5>, R1=<2,3>, R2=<1,2> <E, <0,...,0>, <R1,R2> > --> { se otorga R1 } <E-R1, <R1,0>, <0,R2> > --> { se otorga R2 } <E-R1-R2, <R1,R2>, <0,0> > --> { se libera R1 } <E-R2, <0,R2>, <0,0> > --> { se libera R2 } <E, <0,0>, <0,0> >
24 Invariante Para todo j, 1<=j<=m: Aj + Sum_1<=i<=n Cij = Ej Qué quiere decir? Todo recurso está libre o asignado
25 Formalizando Deadlocks No hay deadlock: Para toda ejecución s0->...-> sn=<a,c,r>, existe i tq. Ri <= A Hay deadlock: Existe una ejecución s0->...-> sn=<a,c,r> tq. para todo i, Ri>A Queremos hacer un algoritmo para detectar estos deadlocks! idea: simular que los procesos piden todos los recursos que necesitan hasta el final cdo. terminan
26 od Algoritmo detección Do safe(r,a) Pueden_ejecutar := empty while (existe i: 1<=i<=n : i no pert. pueden_ejecutar y Ri<=A) do od elegir i tq i no pertenece a Pueden_ejecutar y Ri<=A Pueden_ejecutar:=Pueden_ejecutar U {i} A:=A + Ci; Ci:=0; Procesos_en_deadlock:={1,...,n} Pueden_ejecutar Return (procesos_en_deadlock == empty)
27 Algoritmo detección Invariante: Para todo j, 1<=j<=m: Aj + Sum_1<=i<=n Cij = Ej Qué quiere decir? Todo recurso está libre o asignado Cómo se prueba en el algoritmo?
28 Algoritmo detección Idea: se van eligiendo procesos y comparando si se pueden ejecutar o no Ejemplo: 2 procesos 1,2; 3 tipos de recursos A=<4,6,1>, C1 =<1,0,1>, C2=<0,1,0> R1 = <1,2,1>, R2 = <0,3,1> Elijo i=1, pueden_ejecutar={1}, A=<5,6,2> Elijo i=2, pueden_ejecutar={1,2}, A=<5,7,2> Pude haber elegido al reves!
29 Algoritmo detección El algoritmo es nodeterministico! (se puede ejecutar de diferentes maneras) Como se que siempre da lo mismo? No seria bueno que a veces diga que hay deadlock y a veces no!
30 Algoritmo detección Prueba (informal): si elijo i0, i1 en el loop, el resultado es el mismo que si hubiera elegido i1,i0 A:=A + Ci0 + Ci1 ; Ci0:=0; Ci1:=0; Pueden_ejecutar U {i0} U {i1} es igual que A:=A + Ci1 + Ci0 ; Ci1:=0; Ci0:=0; Pueden_ejecutar U {i1} U {i0} Propiedades necesarias: conmutatividad y asociatividad de + y U
31 Otro ejemplo
32 Recuperación de deadlock Una vez que detectamos el deadlock, qué hacemos? Estrategias de recuperación: expropiación: sacarle un recurso a un proceso a la fuerza como todo recurso no es expropiable, la recuperación del proceso que sufrió la expropiación es difícil o imposible usualmente requiere intervención manual
33 Recuperación de deadlock Recuperación por rollback (vuelta atrás) Requiere haber hecho checkpoints de los procesos (guardar el estado=memoria/estado recursos/pcb... en momentos adecuados) en caso de deadlock hacemos un rollback a un punto anterior de algún proceso que esta bloqueado Técnica estándar en base de datos llamada transacción
34 Recuperación de deadlock Killing de procesos elegir una víctima según costos cantidad de recursos asignados, cantidad de trabajo completado facilidad de reiniciar sin efectos dañinos (por ej. una compilación es más fácil de reiniciar que B. de Datos)
35 Evitar deadlocks Queremos utilizar el grafo o matriz de asignación de recursos para construir una estrategia (planificación/scheduling) que evite el deadlock (no sólo detectarlo) Antes el R era lo que pedía un proceso en ese momento. Ahora tenemos un R máximo, y en cada momento un proceso pide R' <= R ejemplo: E=<10,5>, R =<2,3>, R =<11,6> <E, <0>, <R'> > --> <E-R', <R >, <R''> >
36 Trayectorias de recursos dos procesos A y B, dos recursos Printer y Plotter. I1: A pide printer. I2: A pide plotter. I3-I4: A deja printer y plotter. I5: B pide plotter. I6: B pide printer. I7-I8: B deja.
37 Trayectorias de recursos las áreas interlineadas son imposibles! el cuadrado I1-I2-I5-I6 es inseguro donde está el deadlock? en el punto t, B pide el plotter, que debe hacer el planificador? lo debe ignorar para esquivar las áreas peligrosas
38 Estado seguro Un estado es seguro si 1. no está en deadlock y 2. existe una planificación que permite la ejecución satisfactoria de todos los procesos aún si todos repentinamente solicitan el máximo número de recursos posibles para cada uno Un estado es inseguro si no es seguro está en deadlock, o bien no hay una planificación cuando todos piden el máximo de recursos
39 Ejemplo (1 recurso de c/tipo)
40 Ejemplo (varios recursos de c/tipo) es seguro?
41 Estado seguros un estado seguro nos asegura que no vamos a entrar en deadlock un estado inseguro no dice nada: podemos caer en deadlock o no: por ej. si los procesos nunca piden su máximo, o devuelven los asignados durante su ejecución El método para saber si un estado es seguro es el mismo que para detectar un deadlock!
42 Algoritmo del banquero Dijkstra 65: una cartera de clientes con una línea de créditos máxima por cliente. A cada pedido de dinero el banquero tiene que decidir si le otorga o no teniendo en cuenta que si de golpe todos piden el máximo, existe algún orden en el cual puede satisfacerse (teniendo en cuenta las reservas del banco) dinero->?, clientes->?, máximo crédito->?, reservas->?
43 Algoritmo del banquero (múltiples recursos) proc request(i:pid, rq: array [1..n] of Nat) if not(rq<= Ri) -> error( pide mas de lo declarado ) elsif not(eq<=a) -> error( pide mas de lo disponible ) elsif rq<=ri and rq<=a --> A,C,R := A,C,R; A:=A-rq; Ri:=Ri - rq; Ci:=Ci+rq; if safe(r,a) --> otorgar recursos.. elsif not(safe(r,a)) --> A,C,R:=A,C,R ; sleep(proc[i]); endif endif end
44 Ejemplo (varios recursos de c/tipo) Sup. que B pide un scanner. Se otorga? Y si luego E pide otro scanner mas? (el último)
45 Algoritmo del banquero no se usa en la práctica difícil de establecer R a priori los procesos varían dinámicamente (se crean y se terminan) lo que complica el cálculo de estado seguro prevenir dinámicamente no sirve, qué hacemos? prevenir estáticamente
46 Prevención estática Evitar exclusión mutua muy difícil porque en general los recursos se usan en modo exclusivo en algunos casos podemos hacer spooling como en la impresora el único que accede a la impresora es el daemon, los demás a través de un buffer ahora hay MUTEX en el buffer del HD! la idea entonces es minimizar el tiempo de retención de los recursos
47 Prevención estática Evitar retención y espera Por ej., pedir todos los recursos juntos: todo o nada hacerlo en orden, o atómicamente tiene el mismo problema que el banquero: asume a priori saber todos los recursos que se necesitan Alternativa: primero pedir un recurso, y luego cuando se necesita otro recurso, soltar y pedir los 2 sirve pero es ineficiente!
48 Prevención estática generalización: 2 phase commit: fase 1 : pedir todos los recursos si no se puede soltar todos fase 2: trabajar y al final liberar todos
49 Prevención estática Expropiación ya hablado! prácticamente imposible Evitar espera circular ordenar los recursos y sólo pedir si ese orden se respeta Por ejemplo, los recursos siempre se piden: 1. scanner, 2. cd-rom, 3. impr. podemos empezar en cualq. lugar! muy difícil de satisfacer en general
50 Communication deadlocks A le manda a B un mensaje y espera respuesta. B espera el mensaje, pero se pierde en el camino. A y B están en deadlock! como están en red, es más dificil de prevenir/recuperarse no se puede expropiar (no hay recurso!) ni prevenir por planificación (los procesos están en diferentes máquinas!) se usan temporizadores (timeouts)
51 Deadlocks distribuídos Los recursos no necesariamente están en la misma máquina por ejemplo, un buffer en un router es un recurso compartido que almacena paquetes en tránsito pueden haber deadlocks distribuídos!
52 Centralized deadlock prevention se arma el grafo de asignación distribuido cada nodo manda sus aristas a un lugar central problemas cuando se pierden mensajes o llegan en orden diferente!
Sistemas Operativos. Primer Cuatrimestre de 2009. Departamento de Computación Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires
Sistemas Operativos Primer Cuatrimestre de 2009 Departamento de Computación Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires Trabajo práctico final Abstract Simulación del Algortimo
Más detallesCapítulo IV. INTERBLOQUEO E INANICIÓN
Capítulo IV. INTERBLOQUEO E INANICIÓN Interbloqueo: [MAEKAMA] Se define como el bloqueo permanente de un conjunto de procesos que compiten por los recursos del sistema o bien se comunican unos con otros.
Más detallesTransacciones y bloqueos en SQL-Server
Transacciones y bloqueos en SQL-Server (Información para el uso desde Axapta) Introducción En este documento vamos a intentar explicar cuatro conceptos básicos acerca de las transacciones y los bloqueos
Más detallesEjemplos de conversión de reales a enteros
Ejemplos de conversión de reales a enteros Con el siguiente programa se pueden apreciar las diferencias entre las cuatro funciones para convertir de reales a enteros: program convertir_real_a_entero print
Más detallesContenido. 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
Más detallesConcurrencia. Primitivas IPC con bloqueo
Concurrencia Primitivas IPC con bloqueo Primitivas de IPC con bloqueo La solución de Peterson es correcta, pero tiene el defecto de requerir espera ocupada: Cuando un proceso quiere entrar en su región
Más detallesUnidad I. 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal)
Unidad I Sistemas numéricos 1.1 Sistemas numéricos (Binario, Octal, Decimal, Hexadecimal) Los computadores manipulan y almacenan los datos usando interruptores electrónicos que están ENCENDIDOS o APAGADOS.
Más detallesAGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7
Tutoriales de ayuda e información para todos los niveles AGREGAR UN EQUIPO A UNA RED Y COMPARTIR ARCHIVOS CON WINDOWS 7 Como agregar a una red existente un equipo con Windows 7 y compartir sus archivos
Más detallesArquitectura de sistema de alta disponibilidad
Mysql Introducción MySQL Cluster esta diseñado para tener una arquitectura distribuida de nodos sin punto único de fallo. MySQL Cluster consiste en 3 tipos de nodos: 1. Nodos de almacenamiento, son los
Más detallesINFORMÁTICA IE. Términos a conocer y conceptos básicos. World Wide Web (WWW):
INFORMÁTICA IE MÓDULO INTERNET Términos a conocer y conceptos básicos World Wide Web (WWW): Digamos, simplemente, que es un sistema de información, el sistema de información propio de Internet. Sus características
Más detallesPROPUESTAS COMERCIALES
PROPUESTAS COMERCIALES 1. Alcance... 2 2. Entidades básicas... 2 3. Circuito... 2 3.1. Mantenimiento de rutas... 2 3.2. Añadir ofertas... 5 3.2.1. Alta desde CRM... 5 3.2.2. Alta desde el módulo de Propuestas
Más detallesIntroducción a la Teoría de Grafos
Introducción a la Teoría de Grafos Flavia Bonomo fbonomo@dc.uba.ar do. Cuatrimestre 009 Árboles Un árbol es un grafo conexo y acíclico (sin ciclos). Un bosque es un grafo acíclico, o sea, una unión disjunta
Más detallesSelección de los puntos de montaje
PARTICIONES PARA LINUX Selección de los puntos de montaje Tanto para aquellos que vayan a instalar ahora, como para quienes quieran cambiar el tamaño de una partición o formatear este apunte (resumen de
Más detalles5: LA FUNCIÓN PRODUCTIVA DE LA EMPRESA
5: LA FUNCIÓN PRODUCTIVA DE LA EMPRESA 1. EL ÁREA DE PRODUCCIÓN DE LA EMPRESA: PRODUCIR: consiste en incrementar la utilidad de los bienes para satisfacer necesidades humanas. Ello implica realizar todas
Más detallesEn cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.
Arboles-B Características Los árboles-b son árboles de búsqueda. La "B" probablemente se debe a que el algoritmo fue desarrollado por "Rudolf Bayer" y "Eduard M. McCreight", que trabajan para la empresa
Más detallesEsta extensión está obsoleta a partir de PHP 5.5.0, y será eliminada en el futuro
USAR MYSQL EN PHP PHP tiene una librería de funciones nativas para conectarse a las base de datos MySQL. Por un lado reconoce la librería mysql y por otro mysqli. Se recomienda el uso de mysqli dado que
Más detallesPráctica del paso de generación de Leads
Práctica del paso de generación de Leads La parte práctica de este módulo consiste en poner en marcha y tener en funcionamiento los mecanismos mediante los cuales vamos a generar un flujo de interesados
Más detallesARQUITECTURA DE DISTRIBUCIÓN DE DATOS
4 ARQUITECTURA DE DISTRIBUCIÓN DE DATOS Contenido: Arquitectura de Distribución de Datos 4.1. Transparencia 4.1.1 Transparencia de Localización 4.1.2 Transparencia de Fragmentación 4.1.3 Transparencia
Más detallesIV. CARGUE DE SOPORTES
IV. CARGUE DE SOPORTES Esta opción de cargue de soportes se ha realizado para efectuar las correcciones necesarias en cuanto a cargue de servicio se refiere, como anulación, modificación de RIPS de algún
Más detallesEn caso de que el cliente nunca haya obtenido una concesión de licencia de un servidor DHCP:
Servidor DHCP El protocolo de configuración dinámica de host (DHCP, Dynamic Host Configuration Protocol) es un estándar TCP/IP diseñado para simplificar la administración de la configuración IP de los
Más detallesHilos, comunicación y competencia entre procesos. Dr. Alonso Ramírez Manzanares 2-Sep-2010
Hilos, comunicación y competencia entre procesos Dr. Alonso Ramírez Manzanares 2-Sep-2010 Implementación de procesos Se mantiene una tabla de procesos con una entrada por cada proceso: Con lo cual tenemos
Más detallesTutorial Básico de vbscript
Tutorial Básico de vbscript Bueno, primero aclarar que este tutorial, pretende explicar de manera básica las distintas instrucciones aplicadas en visual basic script (vbs de aquí en más), para que así
Más detallesCapítulo 4. Vectores y matrices. 4.1 Declaración de tablas. 4.2 Declaración estática de tablas
Capítulo 4 Vectores y matrices En FORTRAN se puede utilizar un tipo especial de variable que sirve, en particular, para almacenar vectores y matrices. De esta forma, se utiliza un sólo nombre para referirse
Más detallesSistemas Operativos. Curso 2014 Planificación
Sistemas Operativos Curso 2014 Planificación Agenda Introducción. Despachador. Clases de procesos. Esquemas de planificación. Criterios de planificación. Algoritmos de planificación. FCFS. SJF. Prioridad.
Más detallesAnálisis de los datos
Universidad Complutense de Madrid CURSOS DE FORMACIÓN EN INFORMÁTICA Análisis de los datos Hojas de cálculo Tema 6 Análisis de los datos Una de las capacidades más interesantes de Excel es la actualización
Más detallesSistemas Operativos. Curso 2015 Planificación
Sistemas Operativos Curso 2015 Planificación Agenda Introducción. Despachador. Clases de procesos. Esquemas de planificación. Criterios de planificación. Algoritmos de planificación. FCFS. SJF. Prioridad.
Más detallesUSO DEL COMANDO. Fdisk. Autor :. Alejandro Curquejo. Recopilación :. Agustí Guiu i Ribera. Versión :.. 1.0
USO DEL COMANDO Fdisk Autor :. Alejandro Curquejo Recopilación :. Agustí Guiu i Ribera Versión :.. 1.0 Fecha : 30 de Junio del 2001 USO DE FDISK El programa FDISK suministra información sobre las particiones,
Más detallesINTRODUCCION A LA PROGRAMACION DE PLC
INTRODUCCION A LA PROGRAMACION DE PLC Esta guía se utilizará para estudiar la estructura general de programación de um PLC Instrucciones y Programas Una instrucción u orden de trabajo consta de dos partes
Más detalles4. Programación Paralela
4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios
Más detallesWINDOWS 2008 7: COPIAS DE SEGURIDAD
1.- INTRODUCCION: WINDOWS 2008 7: COPIAS DE SEGURIDAD Las copias de seguridad son un elemento fundamental para que el trabajo que realizamos se pueda proteger de aquellos problemas o desastres que pueden
Más detallesUTILIZACIÓN DE UNA CUENTA DE CORREO ELECTRÓNICO (NUEVO) Acceso al correo electrónico
Acceso al correo electrónico Pasamos ahora a lo que sería usar la cuenta de correo que nos hicimos en la clase anterior. Lo primero que hacemos es entrar en la página web de Yahoo y localizar el icono
Más detallesIngeniería del Software I Clase de Testing Funcional 2do. Cuatrimestre de 2007
Enunciado Se desea efectuar el testing funcional de un programa que ejecuta transferencias entre cuentas bancarias. El programa recibe como parámetros la cuenta de origen, la de cuenta de destino y el
Más detallesCómo usar Subversion. con Windows XP/2000/2003.
con Windows XP/2000/2003. Creado por: Fecha de creación: Domingo, 04 de Septiembre de 2005 Revisión: 1 Última modificación: Sábado, 10 de Septiembre de 2005 Índice Cómo usar Subversion... 1 Índice... 2
Más detallesMANUAL COPIAS DE SEGURIDAD
MANUAL COPIAS DE SEGURIDAD Índice de contenido Ventajas del nuevo sistema de copia de seguridad...2 Actualización de la configuración...2 Pantalla de configuración...3 Configuración de las rutas...4 Carpeta
Más detallesModulo 1 El lenguaje Java
Modulo 1 El lenguaje Java 13 - Codificación en Java Una de las grandes diferencias entre Java y Pascal en cuando a la codificación es que Java se trata de un lenguaje de los llamados case sensitive Esto
Más detallesun programa concurrente
Introducción un programa concurrente asumimos que tengamos un programa concurrente que quiere realizar acciones con recursos: si los recursos de los diferentes procesos son diferentes no hay problema,
Más detallesUNIDADES FUNCIONALES DEL ORDENADOR TEMA 3
UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 INTRODUCCIÓN El elemento hardware de un sistema básico de proceso de datos se puede estructurar en tres partes claramente diferenciadas en cuanto a sus funciones:
Más detallesLa ventana de Microsoft Excel
Actividad N 1 Conceptos básicos de Planilla de Cálculo La ventana del Microsoft Excel y sus partes. Movimiento del cursor. Tipos de datos. Metodología de trabajo con planillas. La ventana de Microsoft
Más detallesCOMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX
COMO CONFIGURAR UNA MAQUINA VIRTUAL EN VIRTUALBOX PARA ELASTIX En este manual se presenta el proceso de configuración de una Maquina Virtual en VirtualBox, que será utilizada para instalar un Servidor
Más detallesMICQ. Trabajo Práctico Final Seminario de Ingeniería en Informática I 75.35. Facultad de Ingeniería, UBA. Junio 2002. Cátedra: Pablo Cosso
MICQ Facultad de Ingeniería, UBA. Junio 2002 Trabajo Práctico Final Seminario de Ingeniería en Informática I 75.35 Cátedra: Pablo Cosso Alumno: Diego Fernando Montaldo 75.300 1 de 1 Introducción Este documento
Más detallesPráctico de Procesos, Hilos y Deadlock
Sistemas Operativos Práctico de Procesos, Hilos y Deadlock Universidad Nacional de Córdoba FaMAF Ejercicio 1.. Indique cuantas letras a imprime este programa, describiendo su funcionamiento. printf("a\n");
Más detallesMantenimiento Limpieza
Mantenimiento Limpieza El programa nos permite decidir qué tipo de limpieza queremos hacer. Si queremos una limpieza diaria, tipo Hotel, en el que se realizan todos los servicios en la habitación cada
Más detallesCapítulo 12: Indexación y asociación
Capítulo 12: Indexación y asociación Conceptos básicos Índices ordenados Archivos de índice de árbol B+ Archivos de índice de árbol B Asociación estática Asociación dinámica Comparación entre indexación
Más detallesCDI Exclusión mutua a nivel alto. conceptos
conceptos El concepto de usar estructuras de datos a nivel alto libera al programador de los detalles de su implementación. El programador puede asumir que las operaciones están implementadas correctamente
Más detallesInternet Information Server
Internet Information Server Internet Information Server (IIS) es el servidor de páginas web avanzado de la plataforma Windows. Se distribuye gratuitamente junto con las versiones de Windows basadas en
Más detallesBases de Datos 2. Teórico
Bases de Datos 2 Teórico De que hay que Recuperarse? En un sistema, se pueden dar fallas que pongan en riesgo la integridad y la existencia misma de la base y por lo tanto de los datos. Fallas en la CPU:
Más detallesMÓDULO 2. LEYES FINANCIERAS DE CAPITALIZACIÓN Y DESCUENTO SIMPLE
MÓDULO 2. LEYES FINANCIERAS DE CAPITALIZACIÓN Y DESCUENTO SIMPLE Índice de contenidos: 1. Ley Financiera de capitalización a interés vencido. 1.1. Equivalencia de capitales. 1.2. Tipos de interés equivalentes.
Más detallesDispositivos de Red Hub Switch
Dispositivos de Red Tarjeta de red Para lograr el enlace entre las computadoras y los medios de transmisión (cables de red o medios físicos para redes alámbricas e infrarrojos o radiofrecuencias para redes
Más detallesESTRUCTURA DE DATOS: ARREGLOS
ESTRUCTURA DE DATOS: ARREGLOS 1. Introduccion 2. Arreglos - Concepto - Caracteristicas 3. Arreglos Unidimensionales 4. Arreglos Bidimensionales 5. Ventajas del uso de arreglos 6. Ejemplo 1. Introducción
Más detallesRESPUESTA.- Vine a la Comisión de Hacienda, que siempre tengo el agrado de que me inviten aquí para tratar diferentes temas.
México D.F., a 22 de abril de 2008. Juan Manuel Pérez Porrúa. Jefe de la Unidad de Política de Ingresos de la SHCP. Entrevista concedida a los medios de comunicación, en el Palacio Legislativo de San Lázaro.
Más detallesUtilidades de la base de datos
Utilidades de la base de datos Desde esta opcion del menú de Access, podemos realizar las siguientes operaciones: Convertir Base de datos Compactar y reparar base de datos Administrador de tablas vinculadas
Más detallesPrimer Parcial de Programación 3 (1/10/2009)
Primer Parcial de Programación (/0/009) Instituto de Computación, Facultad de Ingeniería Este parcial dura horas y contiene carillas. El total de puntos es 0. En los enunciados llamamos C* a la extensión
Más detallesInstrucción IrA (GoTo). Saltos no naturales en el flujo normal de un programa. Pseudocódigo y diagramas de flujo. (CU00182A)
aprenderaprogramar.com Instrucción IrA (GoTo). Saltos no naturales en el flujo normal de un programa. Pseudocódigo y diagramas de flujo. (CU00182A) Sección: Cursos Categoría: Curso Bases de la programación
Más detallesApuntes Recuperación ante Fallas - Logging
Lic. Fernando Asteasuain -Bases de Datos 2008 - Dpto. Computación -FCEyN-UBA 1 Apuntes Recuperación ante Fallas - Logging Nota: El siguiente apunte constituye sólo un apoyo para las clases prácticas del
Más detallesEjercicio 1. Desarrollar un pequeño juego para practicar mecanografía.
Examen Curso 2001-2002. Convocatoria de Febrero Página 1 Ejercicio 1. Desarrollar un pequeño juego para practicar mecanografía. Este ejercicio se divide en dos partes con el fin de que el alumno no intente
Más detallesRelaciones y funciones
Relaciones y funciones En matemáticas, una relación es un conjunto de pares ordenados. Como si se tratara de coordenadas de puntos, un conjunto de pares ordenados, forma una relación. Relación Es un conjunto
Más detallesCurso sobre Controladores Lógicos Programables (PLC).
CURSO Curso sobre Controladores Lógicos Programables (PLC). Por Ing. Norberto Molinari. Entrega Nº 9. Introducción a la Programación. Consideraciones previas sobre programación ladder Antes de empezar
Más detallesCurso Internet Básico - Aularagon
Antes de empezar es necesario que tengas claro algunas cosas: para configurar esta cuenta de correo, debes saber que el POP y el SMTP en este caso son mail.aragon.es; esta cuenta de correo hay que solicitarla
Más detallesÍNDICE DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ
ELECTRÓNICA DIGITAL DISEÑO DE CONTADORES SÍNCRONOS JESÚS PIZARRO PELÁEZ IES TRINIDAD ARROYO DPTO. DE ELECTRÓNICA ÍNDICE ÍNDICE... 1 1. LIMITACIONES DE LOS CONTADORES ASÍNCRONOS... 2 2. CONTADORES SÍNCRONOS...
Más detalles3º Grado Educación Infantil Bilingüe Números. Método Singapur y F. Bravo E R
MATEMÁTICAS PARA EDUCACIÓN INFANTIL N Enseñamos y aprendemos llos números:: Método Siingapur y Fernández Bravo,, Porr Clarra Garrcí ía,, Marrtta Gonzzál lezz y Crri isstti ina Lattorrrre.. Ú M E R O S
Más detallesResumen. Funcionamiento. Advertencia
Resumen Módulo: Librería: IMPEXP.DLL Acoplable a: FactuCont 5, versiones monopuesto y red Descripción: Permite exportar datos de documentos, clientes, proveedores y artículos en un solo fichero para poder
Más detallesGUÍA PARA LA FORMULACIÓN PROYECTOS
GUÍA PARA LA FORMULACIÓN PROYECTOS Un PROYECTO es un PLAN DE TRABAJO; un conjunto ordenado de actividades con el fin de satisfacer necesidades o resolver problemas. Por lo general, cualquier tipo de proyecto,
Más detallesCómo?: Resolviendo el sistema lineal homógeneo que satisfacen las componentes de cualquier vector de S. x4 = x 1 x 3 = x 2 x 1
. ESPACIOS VECTORIALES Consideremos el siguiente subconjunto de R 4 : S = {(x, x 2, x 3, x 4 )/x x 4 = 0 x 2 x 4 = x 3 a. Comprobar que S es subespacio vectorial de R 4. Para demostrar que S es un subespacio
Más detallesConfigurador genérico
Configurador genérico En la emisión de presupuestos ó pedidos de ciertos productos, existen a menudo casos que por su complejidad, posibilidades de selección, cálculo de precios e implicaciónes entre las
Más detallesConcesionario de coches
Realizaremos una práctica que consistirá en informatizar un concesionario de coches. Gestionaremos y mecanizaremos la entrada de datos. Crear el diseño de las tablas Antes de empezar con el diseño de nuestra
Más detallesCapítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente
Capítulo 4. Requisitos del modelo para la mejora de la calidad de código fuente En este capítulo definimos los requisitos del modelo para un sistema centrado en la mejora de la calidad del código fuente.
Más detallesANÁLISIS Y GESTIÓN DEL DESARROLLO DE SOFTWARE TEMA 5: LA PLANIFICACIÓN DEL PRODUCTO
ANÁLISIS Y GESTIÓN DEL DESARROLLO DE SOFTWARE TEMA 5: LA PLANIFICACIÓN DEL PRODUCTO DAVID RODRÍGUEZ HERNÁNDEZ FECHA DE REVISIÓN: 1 Noviembre 2007 ZAMORA (CURSO 2007/2008) david.rgh@gmail.com Nota importante:
Más detallesAcronis License Server. Guía del usuario
Acronis License Server Guía del usuario TABLA DE CONTENIDO 1. INTRODUCCIÓN... 3 1.1 Generalidades... 3 1.2 Política de licencias... 3 2. SISTEMAS OPERATIVOS COMPATIBLES... 4 3. INSTALACIÓN DE ACRONIS LICENSE
Más detallesEduardo Kido 26-Mayo-2004 ANÁLISIS DE DATOS
ANÁLISIS DE DATOS Hoy día vamos a hablar de algunas medidas de resumen de datos: cómo resumir cuando tenemos una serie de datos numéricos, generalmente en variables intervalares. Cuando nosotros tenemos
Más detallesCombinar comentarios y cambios de varios documentos en un documento
Combinar comentarios y cambios de varios documentos en un documento Si envía un documento a varios revisores para que lo revisen y cada uno de ellos devuelve el documento, puede combinar los documentos
Más detallesConfiguración de DNS seguros
Configuración de DNS seguros para la navegación de niños por Internet El otro día os contaba del secuestro de los DNS de Google, y qué son los DNS. Para hacer un resumen rápido: son como las páginas amarillas
Más detallesSugar en Windows. Creación de una máquina virtual con la imagen de Sugar. Autor. Versión Fecha Setiembre 2011. Ubicación
Sugar en Windows Creación de una máquina virtual con la imagen de Sugar Autor Versión Fecha Setiembre 2011 Ubicación Índice Introducción...3 Qué es una máquina virtual?...3 Pasos para la creación de una
Más detallesManual de operación Tausend Monitor
Manual de operación Tausend Monitor Luego de haber realizado satisfactoriamente el proceso de instalación, al iniciar el programa le aparecerá la siguiente ventana: El usuario principal y con el primero
Más detallesConcurrencia. Bibliografía: Introducción a los Sistemas de Bases de Datos Date, C.J.
Concurrencia Bibliografía: Introducción a los Sistemas de Bases de Datos Date, C.J. Concurrencia La mayor parte de los DBMS son sistemas para múltiples usuarios Se permite a cualquier cantidad de transacciones
Más detallesNemoTPV SAT Manual de usuario 1. NemoTPV SAT APLICACIÓN DE GESTIÓN DE SERVICIO TÉCNICO PARA PUNTOS DE VENTA DE EUSKALTEL
NemoTPV SAT Manual de usuario 1 NemoTPV SAT APLICACIÓN DE GESTIÓN DE SERVICIO TÉCNICO PARA PUNTOS DE VENTA DE EUSKALTEL NemoTPV SAT Manual de usuario 2 Ante un problema, lo importante no es saber solucionarlo,
Más detallesemail Proxy Introducción
email Proxy Introducción Al momento no se cuenta en Velneo vserver con herramientas para el envío de correo electrónico desde el servidor, algo que resulta sumamente útil ya que el desarrollador se desentiende
Más detallesControl, Instrumentación e Instalaciones Ingeniería Ambiental
Control, Instrumentación e Instalaciones Ingeniería Ambiental TEMA 3. LABORATORIO. El Autómata Siemens S7-300. Programación Básica Alfredo Rosado Curso Académico 2010-2011 Control, Instrumentación e Instalaciones.
Más detallesTema 6: Problemas Especiales de Programación Lineal
Tema 6: Problemas Especiales de Programación Lineal Transporte Asignación Transbordo Tienen una estructura especial que permite modelizar situaciones en las que es necesario: Determinar la manera óptima
Más detallesM a n u a l Inventarios
M a n u a l Desde Tienda Software de Gestión para Cadenas de Tiendas Desde tienda.- En Almacen o Warehouse, / F5 / F2 Realizar Inventario: Los inventarios se pueden realizar manualmente, por lector o por
Más detallesCurso de Excel Avanzado
Curso de Excel Avanzado J. David Moreno TRABAJANDO CON RANGOS J. David Moreno 1 3 Para programar correctamente en VBA y trabajar con Excel es obligatorio aprender a trabajar con rangos (seleccionar, copiar,
Más detallesARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES
ARBOLES ARBOLES BINARIOS ORDENADOS. REPRESENTACIÓN Y OPERACIONES Introducción al tema a. Formar grupos de 4 personas b. Tomar una hoja en blanco y una lapicera o lápiz c. En la hoja en blanco diseña un
Más detallesEJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO)
EJERCICIOS DE PROGRAMACIÓN RELACIÓN VII (EJERCICIOS DE REPASO) Luis José Sánchez 1. Realiza un programa que sume los 100 números siguientes a un número entero y positivo introducido por teclado. Se debe
Más detallesAsignación de Procesadores
INTEGRANTES: Asignación de Procesadores Un sistema distribuido consta de varios procesadores. Estos se pueden organizar como colección de estaciones de trabajo personales, una pila pública de procesadores
Más detallesMANUAL DE USUARIO DE LA HERAMIENTA CONFIGURACION DE PRESUPUESTOS PARA DISTRIBUIDORES
MANUAL DE USUARIO DE LA HERAMIENTA CONFIGURACION DE PRESUPUESTOS PARA DISTRIBUIDORES Joma ha creado una herramienta con la cual, usted, como distribuidor, podrá generar presupuestos de las agrupaciones
Más detallesProceso de cifrado. La fortaleza de los algoritmos es que son públicos, es decir, se conocen todas las transformaciones que se aplican al documento
Qué es AT-Encrypt nos permitirá dotar de contraseña a cualquier documento o carpeta. Este documento o carpeta sólo será legible por aquel que conozca la contraseña El funcionamiento del cifrado (o encriptación)
Más detallesPAGOS DOMICILIADOS - GESTIÓN DE PAGOS PAGOS DOMICILIADOS Y GESTIÓN DE PAGOS
PAGOS DOMICILIADOS Y GESTIÓN DE PAGOS 1 INDICE GESTIÓN DE PAGOS DOMICILIADOS 3 Incorporar beneficiarios manualmente 4 Anulación de pagos domiciliados o gestión de pagos 7 Importar beneficiarios de un fichero
Más detallesGedicoPDA: software de preventa
GedicoPDA: software de preventa GedicoPDA es un sistema integrado para la toma de pedidos de preventa y gestión de cobros diseñado para trabajar con ruteros de clientes. La aplicación PDA está perfectamente
Más detallesCONCEPTOS BASICOS. Febrero 2003 Página - 1/10
CONCEPTOS BASICOS Febrero 2003 Página - 1/10 EL ESCRITORIO DE WINDOWS Se conoce como escritorio la zona habitual de trabajo con windows, cuando iniciamos windows entramos directamente dentro del escritorio,
Más detallesEnterprise Resource Planning (ERP) SISTEMA DE PLANEACIÓN DE RECURSOS MASTER: ALFREDO CASTRO JIMENEZ
Enterprise Resource Planning (ERP) SISTEMA DE PLANEACIÓN DE RECURSOS MASTER: ALFREDO CASTRO JIMENEZ ERICK ANASTASIO FLORES 29/09/2010 UNIVERSIDAD AUTONOMA DE GUADALAJARA TECNOLOGIAS DE INFORMACION Qué
Más detallesAnexo B. Comunicaciones entre mc y PC
Anexo B Comunicaciones entre mc y PC En este apartado se hará hincapié en los comandos para el manejo del módulo de comunicaciones desde el PC. Conociendo estos comando se podrá realizar una aplicación
Más detallesManual de rol gestor de GAV para moodle 2.5
Manual de rol gestor de GAV para moodle 2.5 Consultas LDAP-GAUR... 2 Buscar en LDAP datos de un usuario... 2 Docentes... 3 Buscar en GAUR datos de un docente... 3 Buscar en GAUR la docencia de un docente
Más detallesPHP y MySQL. Indice: Switch Bucles For While do...while
PHP y MySQL Indice: Switch Bucles For While do...while Switch switch...case es otra opción para trabajar con condiciones. Y suplanta al if, cuando lo único que se quiere hacer es comparar si son iguales
Más detallesProgramación I: Funciones y módulos
Programación I: Funciones y módulos Esteban De La Fuente Rubio 2 de abril de 23 Índice. Funciones.. Definición y llamado de funciones............................................. 2.2. Parámetros por omisión..................................................
Más detallesPROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación. II MODELOS y HERRAMIENTAS UML. II.2 UML: Modelado de casos de uso
PROGRAMACIÓN ORIENTADA A OBJETOS Master de Computación II MODELOS y HERRAMIENTAS UML 1 1 Modelado de casos de uso (I) Un caso de uso es una técnica de modelado usada para describir lo que debería hacer
Más detallesCapitulo V Administración de memoria
Capitulo V Administración de memoria Introducción. Una de las tareas más importantes y complejas de un sistema operativo es la gestión de memoria. La gestión de memoria implica tratar la memoria principal
Más detallesVisual Basic 1. Empleo de módulos y Procedimientos. Procedimientos definidos por el usuario
Empleo de módulos y Procedimientos Procedimientos definidos por el usuario Según lo que hemos visto hasta ahora, Visual Basic, almacena el código en módulos. Hay tres clases de módulos: formularios (.frm),
Más detallesDocumento de compra. Forma de pago
Procedimiento 10: Gestión de cobros. Gestión y control de cobros tiene una doble finalidad por un lado, cobrar a los clientes que pagan en metálico, tpv o por talón (ajustados en fecha de vencimiento)
Más detallesGUÍA PARA LOS PROCEDIMIENTOS DE TEMOR CREÍBLE Y TEMOR RAZONABLE
GUÍA PARA LOS PROCEDIMIENTOS DE TEMOR CREÍBLE Y TEMOR RAZONABLE ************************************ Si acaba de llegar a los Estados Unidos sin permiso y tiene miedo de regresar a su país de origen, puede
Más detallesProgramación de Sistemas
Programación de Sistemas Algoritmos de Ordenación Índice Por qué es importante la ordenación? Un par de ejemplos InsertionSort QuickSort Para cada uno veremos: En qué consisten, Casos extremos Eficiencia
Más detalles