Concurrencia entre Procesos.
|
|
|
- Ana Belén Tebar Ortíz
- hace 10 años
- Vistas:
Transcripción
1 Concurrencia entre Procesos. Sistemas Operativos Tema 3. 1 Procesamiento concurrente. Procesamiento concurrente: base de los sistemas operativos modernos (multiprogramados): Un conjunto de procesos que potencialmente pueden ejecutarse concurrentemente (a la vez). Problemática: Podemos querer que dos o más procesos cooperen. Que accedan a datos comunes. Se debe proporcionar: Mecanismos de sincronización y comunicación entre procesos. Ejecución ordenada 2
2 Problemática del procesamiento concurrente. Problema básico: Dos o más procesos quieren llevar a cabo una determinada tarea concurrentemente. Pueden llegar a resultados incorrectos. Debido a que no sabemos el orden de ejecución. No sabemos cuando serán interrumpidos y su alternancia en la CPU. Ejemplo: Productor-Consumidor ejecutado concurrentemente. Productor: Genera información y la acumula en un buffer. Consumidor: Accede al buffer y usa la información. Caso de: Programa de impresión que produce caracteres y consume el manejador de la impresora. Compilador produce código ensamblador y consume el ensamblador. 3 Problemática del procesamiento concurrente. Sincronización: Productor: No debe acceder al buffer si está lleno. Consumidor: No debe acceder al buffer si está vacío. Usan variables comunes. Variables compartidas: variable n; tipo elemento= (elemento del buffer); variable buffer: matriz[0..n-1] de elemento; entrada, salida: 0..n-1; contador: 0..n; Entrada, salida: valor inicial 0. Entrada: Siguiente elemento del buffer libre (productor). Salida: Primer elemento buffer lleno (consumidor). Contador: Número de elementos en el buffer. Buffer vacío: Contador = 0. Buffer lleno: Contador = n. 4
3 Problemática del procesamiento concurrente. Código del proceso productor: mientras verdadero hacer:... producir un elemento en productor_siguiente;... mientras contador= n hacer nada; buffer[entrada]= productor_siguiente; entrada= (entrada + 1) modulo n; contador= contador + 1; Código del proceso consumidor: mientras verdadero hacer: mientras contador= 0 hacer nada; consumidor_siguiente= buffer[salida]; salida= (salida + 1) modulo n; contador= contador-1;... consumir siguiente elemento en consumidor_siguiente;... 5 Problemática del procesamiento concurrente. Por separado son correctas. Concurrentemente pueden no funcionar: Ejemplo: En un momento Contador = 5. Ejecución concurrente productor-consumidor, enunciados contador = contador +1, contador = contador-1 : Resultado Contador = 4, 5 ó 6. Veamoslo: Ejecución contador = contador +1 en instrucciones máquina: P1.- registro A = contador; (Esta en memoria); P2.- registro A = registro A + 1; P3.- contador = registro A; (Contenido registro a memoria). Ejecución contador = contador - 1 en instrucciones máquina: C1.- registro B = contador; (Esta en memoria); C2.- registro B = registro B - 1; C3.- contador = registro B; (Contenido registro a memoria). 6
4 Problemática del procesamiento concurrente. El orden de esas instrucciones máquina puede ser cualquiera. Ejemplo: 1.- P1.- registro A = contador; [registro A = 5] 2.- P2.- registro A = registro A + 1; [registro A = 6] 3.- C1.- registro B = contador; [registro B = 5] 4.- C2.- registro B = registro B - 1; [registro B = 4] 5.- P3.- contador = registro A; [contador = 6 ] 6.- C3.- contador = registro B; [contador = 4 ] O por ejemplo: 5.- C3.- contador = registro B; [contador = 4 ] 6.- P3.- contador = registro A; [contador = 6 ] 7 Problemática del procesamiento concurrente. Otro ejemplo: Proceso que controla la impresora: mientras verdadero hacer si (peticiones > 0) entonces Extraer nombre de fichero de cola_peticiones; peticiones = peticiones -1; Proceso que imprime un fichero: Introducir nombre de fichero en cola_peticiones peticiones = peticiones +1; 8
5 Problemática del procesamiento concurrente. Ejecución concurrente: peticiones = peticiones + 1 peticiones = peticiones - 1 Valor inicial peticiones = 1. GESTOR IMPRESIÓN R0 = peticiones [R0=1] R0 = R0-1 [R0=0] peticiones = R0 [peticiones=0] IMPRESOR R0 = peticiones [R0=1] R0 = R0 + 1 [R0=2] peticiones = R0 [peticiones=2] Valor final Peticiones = 0. Debería ser 1. 9 Problemática del procesamiento concurrente. Dónde está el problema?. Permitir que dos procesos accedan a la misma zona de memoria para cooperar: Variable contador. Variable peticiones. No conocemos la secuencia de instrucciones. A esto se le denomina: Problema dela sección crítica. Es un problema básico de ejecución concurrente de procesos. 10
6 Sección crítica. Supongamos n procesos que pretenden ejecutarse concurrentemente {P 1, P 2,..., P N }. Sección critica de uno de ellos: Segmento de código en el que un proceso modifica: Variables comunes. Actualiza una tabla común. Escribe en un archivo. Etc. Consideraremos un proceso en general como: mientras verdadero ejecutar sección de entrada sección crítica sección de salida sección restante 11 Sección crítica. Una solución debe cumplir tres requisitos: Exclusión mutua: No puede haber más de un proceso a la vez en sección crítica. Progreso: Ningún proceso esta en sección crítica, pero algunos desean entrar. Sólo los procesos que no estén en sección restante participan en la decisión de quién entra en sección crítica. La decisión debe realizarse en un tiempo finito. Espera limitada: Si un proceso quiere entrar en sección crítica, sólo debe esperar un número finito de veces a que otros entren antes que él. Además: No hacer suposiciones sobre velocidad relativa de los procesos. No hacer suposiciones sobre el número de procesadores. 12
7 Problemas clásicos de sincronización de Procesos. Hay una serie de problemas clásicos: Son problemas de sincronización. Se usan para testar soluciones a problemas de control de concurrencia. Problema del productor consumidor: Con y sin buffer limitado. Problema de los lectores y escritores: Tenemos una estructura de datos: un archivo, registro etc. Variosprocesos quieren leer la estructura (lectores) o escribir en ella (escritores). Los procesos se ejecutan de forma concurrente. Variantes: Prioridad lectores: Los lectores no deben esperar a que terminen otros lectores porque haya un escritor esperando. Prioridad escritores: Si un escritor está esperando ningún lector puede comenzar a leer. Evitar bloqueos indefinidos. 13 Problemas clásicos de sincronización de Procesos. Problema de los filósofos comensales: Tenemos cinco filósofos alrededor de una mesa: piensan y comen. Si un filósofo piensa no molesta a sus colegas. Si tiene hambre: Coge los palillos, de uno en uno. De los que tiene a su derecha e izquierda. Si están libres. Cuando termina de comer: Deja los palillos sobre la mesa. Continua pensando. 14
8 Problemas clásicos de sincronización de Procesos. Posibles soluciones libres de bloqueos mutuos: Sólo dos filósofos como máximo pueden comer al mismo tiempo. Un filosofo coge sus palillos sólo si los dos están disponibles (en sección crítica). Un filósofo impar coge primero el palillo de su izquierda, si es par coge primero el de su derecha. Una solución satisfactoria debe garantizar que ningún filosofo muera de inanición (además de bloqueo mutuo). 15 Soluciones. Veremos algunas soluciones para el problema de sección crítica y de sincronización. Hay: Soluciones software: Algoritmos en sección de entrada y salida en cada programa. Soluciones hardware: Uso de instrucciones proporcionadas por algunos procesadores, en sección entrada y salida. Herramientas proporcionadas por los sistemas operativos: Semáforos. Regiones críticas. Regiones críticas condicionales. Monitores. Mensajes. 16
9 Soluciones software. Problema de la sección crítica con dos procesos P 0, P 1 : Alternancia estricta (no satisface el requisito progreso): Uso de variable turno= 0, 1que indica proceso (P 0, P 1 ) que va a entrar en región crítica. Algoritmo proceso P 0 (P 1 ): mientras verdadero hacer mientras turno!= 0 (1) hacer nada sección crítica turno= 1 (0) sección restante Es un algoritmo de espera activa. Ejemplo P 1 esperando: 17 Soluciones software. No satisface el requisito progreso (problemas si un proceso es más rápido que otro): 18
10 Soluciones software. Otro algoritmo (no satisface el requisito de espera limitada): Uso de variable indicador para saber si un proceso quiere entrar o está en sección crítica. Algoritmo, proceso P 0 (P 1 ): inicialmente indicador[0 y 1]=0 mientras verdadero hacer indicador[0 (1)]=1 mientras indicador[1 (0)] hacer nada sección crítica indicador[0 (1)]=0 sección restante No satisface requisito espera limitada, secuencia: 1.- P 0 pone indicador[0]=1 2.- P 1 pone indicador[1]=1 Bucle infinito P 0 y P 1!! 19 Soluciones software. Algoritmo de Peterson: Cambia las dos ideas anteriores, usa dos variables compartidas: turno e indicador. Algoritmo, proceso P 0 (P 1 ): inicialmente indicador[0 y 1]=0, turno=1 ó 0 mientras verdadero hacer indicador[0 (1)]=1 turno= 1 (0) mientras (indicador[1 (0)] y turno=1 (0)) hacer nada sección crítica indicador[0 (1)]=0 sección restante 20
11 Soluciones software. Problema sección crítica para N-procesos P 0, P 1,... P N : Algoritmo de la panadería: Cuando llegan los procesos a sección de entrada: Se le da un número. Entran en sección crítica por número de orden. Al principio todos esperan a entrar en sección crítica a que todos tengan número. El algoritmo no garantiza que no hayan dos o más procesos con el mismo número: En dicho caso se decide por el numero de proceso. En el algoritmo están usadas las operaciones: (a,b) < (c,d) si a < c ó si a = c y b < d max(a 0, a 1,..., a n-1 ) numero k tal que k>=a i para i=0,..., n-1 21 Soluciones software. Algoritmo, proceso P i : mientras verdadero hacer elección[i]=1 numero[i]=max ((numero[0],numero[1],..., numero[n-1]) +1) elección[i]=0 para j=0 hasta n-1 hacer mientras eleccion[j] hacer nada mientras (numero[j]!=0 y ((numero[j],j) < (numero[i],i))) hacer nada numero[i]=0 sección critica sección restante 22
12 Hardware específico. Instrucción TSL: (Test and Set Lock, Evaluar y Asignar). Lee en un registro el contenido de la palabra de una dirección de memoria. Pone en esa dirección un contenido distinto de cero (1). Ejemplo: tsl registro, indicador Indicador, variable que está en memoria. Copia el contenido de indicador en registro. Pone el contenido de indicador a 1. Importancia: Se trata de una operación hardware, todo lo hace sin interrupción. El procesador que la ejecuta bloquea la ruta de comunicación a la memoria (otro procesador no puede acceder a ella mientras se ejecuta). 23 Hardware específico. Ejemplo de solución problema sección crítica (no garantiza espera limitada): Hay una variable indicador compartida, si indicador=0 entra en sección crítica. mientras verdadero hacer sección_entrada: tsl registro,indicador ;indicador a registro, indicador=1 cmp registro, #0 ;cero en indicador? jnz seccion_entrada ;no cero espera ret sección crítica sección_salida: mov indicador, #0 ret sección restante 24
13 Hardware específico. Instrucción Intercambiar. Intercambia el contenido de dos posiciones de memoria. Ejemplo: intercambiar hola, indicador Pone en hola el contenido de indicador. El contenido que tenía hola lo sitúa en indicador. Importancia: Lo realiza como una única instrucción hardware. Otro procesador no puede acceder a las posiciones de memoria mientras se ejecuta. 25 Hardware específico. Ejemplo de solución problema seccion crítica (no garantiza espera limitada): Hasta que una variable cerradura=0 no se entra en sección crítica. Inicialmente variable compartida cerradura=0, mientras verdadero hacer seccion_entrada: mov clave, #1 ;clave=1 intercambiar cerradura,clave ;clave=cerradura, ;cerradura=1 cmp clave, #0 ;Había 0 en cerradura? jnz seccion_entrada ;Si había 0 región critica ret sección critica seccion_salida: mov cerradura, #0 ret seccion restante 26
14 Herramientas del sistema operativo. El sistema operativo puede ofrecer algunas herramientas de sincronización: Semáforos. Mensajes. Regiones críticas. Regiones críticas condicionales. Monitores. 27 Semáforos. Un semáforo S es una variable entera. Se accede a ella: Para la asignación de valores iniciales. Con la operación espera (wait): espera(s): mientras S<=0 hacer nada S=S - 1 Con la operación señal (signal): señal(s): S=S+1 Estas operaciones se realizan sin interrupción. Se realiza una espera activa. 28
15 Semáforos. Ejemplo utilización de semáforos: Problema sección crítica con N procesos (sin espera limitada): Semáforo común hola inicialmente a 1. mientras verdadero hacer espera(hola) sección crítica señal(hola) sección restante Sincronización E 2 y E 1, código de dos procesos. Semáforo común con valor inicial 0. Proceso P 1 : Proceso P 2 : E 1 espera(hola) señal(hola) E 2 29 Semáforos. Semáforos sin espera activa: Podemos definir al semáforo cómo: tipo semáforo= registro valor: entero (valor del semáforo) L: lista de procesos fin_registro Nueva operación bloquear (sleep): Si un proceso la ejecuta se bloquea a sí mismo (pasa a la cola L). Nueva operación despertar(p) (wake-up): Si un proceso la ejecuta cambia el estado del proceso P de bloqueado a listo (cola de procesos listos). 30
16 Semáforos. Nuevas operaciones espera y señal: espera(s): S.valor= S.valor - 1 si S.valor < 0 hacer añadir el proceso a L de S bloquear señal(s): S.valor= S.valor + 1 si S.valor<= 0 hacer sacar un proceso P de L de S despertar(p) Se debe garantizar que dos procesos no ejecuten señal y/o espera a la vez en el mismo S. 31 Semáforos. Bloqueo mutuo: Un conjunto de procesos está en estado de bloqueo mutuo cuando cada uno esta esperando un suceso que sólo puede producir otro proceso del conjunto. Ejemplo de bloqueo mutuo por uso de semáforos. Q y S semáforos, sin espera activa inicialmente = 1 ) Proceso P0 espera(s) espera(q) señal(s) señal(q) Proceso P1 espera(q) espera(s) señal(q) señal(s) 32
17 Semáforos. Problema productor - consumidor: Valores iniciales: vacio = n, lleno = 0, mutex = 1. Proceso productor: mientras verdadero hacer producir un elemento en productor_siguiente espera(vacio) espera(mutex) añadir productor_siguiente a buffer señal(mutex) señal(lleno) Proceso consumidor: mientras verdadero hacer espera(lleno) espera(mutex) pasar un elemento de buffer a csiguiente señal(mutex) señal(vacio) consumir elemento en consumidor_siguiente 33 Semáforos. Problema lectores-escritores prioridad lectores: Valores iniciales mutex y escritura = 1, nlectores = 0. Proceso escritor: espera(escritura) se realiza escritura señal(escritura) Proceso lector: espera(mutex) nlectores = nlectores + 1 si nlectores = 1 entonces espera(escritura) señal(mutex) se realiza la lectura espera(mutex) nlectores = nlectores - 1 si nlectores = 0 entonces señal(escritura) señal(mutex) 34
18 Mensajes. Problemas de sincronización: Pueden verse como problemas de comunicación entre procesos. Ejemplo: Productor-consumidor. El método de pasos de mensajes permite que los procesos intercambien mensajes. Es una función del sistema operativo, sin utilizar variables compartidas por parte del programador. Facilita dos operaciones: enviar(mensaje). recibir(mensaje). El sistema operativo proporciona un enlace de comunicación entre dos procesos que se quieren comunicar. 35 Mensajes. Dependiendo de como este implementado: Los mensajes pueden ser: de longitud fija o variable. El enlace puede ser: Unidirecccional: Los procesos conectados no pueden enviar y recibir a la vez. Bidireccional. Comunicación directa: En enviar y recibir se facilita el nombre del otro proceso. enviar(p, mensaje) recibir(q, mensaje) Comunicación indirecta: Se utilizan buzones (puertos) Buzón: objeto en el que los procesos pueden colocar mensajes y del que pueden extraerlos. Operaciones: enviar(a, mensaje) ; Enviar un mensaje al buzón A. recibir(a, mensaje) ; Recibir un mensaje del buzón A. 36
19 Mensajes. Comunicación simétrica: Las operaciones recibir y enviar tienen el mismo formato. Comunicación asimétrica: Ejemplo asimétrica y directa: enviar(p,mensaje) ; Enviar un mensaje al proceso P. recibir(id, mensaje) ; Recibir un mensaje de cualquier proceso. ; id variable con nombre del proceso. Capacidad del enlace: Número de mensajes que puede contener temporalmente. Capacidad cero: Emisor debe esperar a que el receptor reciba el mensaje. Capacidad limitada: Un número n máximo de mensajes acumulados. El emisor no espera mientras que hay espacio para acumular mensajes. 37 Mensajes. Productor-consumidor con paso de mensajes: Proceso Productor: mientras verdadero hacer:... producir un elemento en productor_siguiente;... enviar(consumidor, productor_siguiente) Proceso Consumidor: mientras verdadero hacer: recibir(productor, consumidor_siguiente)... consumir elemento en consumidor_siguiente;... 38
20 Regiones críticas. Se declara un variable v de tipo T compartida: variable v: compartida T Sólo se accede a v con un enunciado de región crítica: región v hacer S Mientras se ejecuta S ningún otro proceso tiene acceso a v. Ejemplo: Proceso P 0 Proceso P 1 región v hacer S 1 región v hacer S 2 La ejecución concurrente de los procesos sería: Secuencialmente primero S 1 y después S 2 o viceversa. 39 Regiones críticas. Implementación región crítica con semáforos: Si variable v: compartida T. Un semáforo semáforo valor inicial 1. Ante una sentencia región v hacer S : espera(semáforo) S señal(semáforo) Se pueden anidar. Ejemplo: región x hacer región y hacer S1 Puede dar problemas de bloqueos mutuos: Proceso P0: región x hacer región y hacer S1 Proceso P1: región y hacer región x hacer S2 Con semáforos: P0: espera(x1) P1: espera(y1) P0: espera(y1) P1:espera(x1) 40
21 Regiones críticas condicionales. Se declara un variable v de tipo T compartida: variable v: compartida T El enunciado de región crítica condicional sería: región v cuando B hacer S B es una expresión booleana. Cuando se entra en sección crítica el proceso evalúa B: B verdadero: Ejecuta S. B falso: Espera hasta que B sea verdadero y no haya otro proceso ejecutando instrucciones en región crítica. v. 41 Regiones críticas condicionales. Problema productor-consumidor: variable deposito: compartida registro buffer: matriz[0..n-1] de elemento contador, entrada, salida enteros Proceso productor: mientras verdadero hacer:... producir un elemento en productor_siguiente;... región deposito cuando contador< n hacer buffer[entrada]= productor_siguiente; entrada= (entrada + 1) modulo n; contador= contador + 1; Proceso consumidor: mientras verdadero hacer: región deposito contador> 0 hacer consumidor_siguiente= buffer[salida]; salida= (salida + 1) modulo n; contador= contador-1;... consumir siguiente elemento en consumidor_siguiente;... 42
22 Regiones críticas condicionales. Otro enunciado región crítica condicional: región v hacer S1 esperar (B) S2 fin región B es una condición booleana. Un proceso entra en región y ejecuta S1. Evalúa B: Si B es verdadero ejecuta S2 y sale de región. Si B es falso: Se abandona la exclusión mutua. Espera hasta que B sea verdadero y no haya otro proceso en región v. 43 Regiones críticas condicionales. Lectores-escritores prioridad escritores: variable v: compartida registro nlectores, nescritores: entero; ocupado: boolean; Código Lector: región v hacer esperar(nescritores = 0) nlectores = nlectores + 1 fin región leer archivo región v hacer nlectores = nlectores
23 Regiones críticas condicionales. Código proceso escritor: región v hacer nescritores = nescritores +1 esperar(( not ocupado) y (nlectores = 0) ocupado = verdadero fin región escribir archivo región v hacer nescritores = nescritores -1 ocupado = falso 45 Monitores. Es un tipo especial definido por el programador en el que: Hay unas variables locales. Un conjunto de funciones. tipo nombre-monitor = monitor declaración de variables función P1( ) { } función P2( ) { } { código de asignación inicial de variables } Sólo las funciones definidas en el monitor tienen acceso a sus variables. Un proceso usa el monitor haciendo una llamada a sus funciones. Sólo puede haber un proceso activo en el tipo monitor. 46
24 Monitores. Esquema de un monitor: 47 Monitores. Monitores con variables condición: Se pueden definir variables de tipo condición: variable x, y : condición Sólo se pueden realizar dos operaciones: x.espera: El proceso que la ejecuta suspende su ejecución. x.señal: Reanuda la ejecución de un proceso Q esperando por x.espera. Sino había ningún proceso esperando no tiene ningún efecto. El proceso P que la ejecuta espera a que Q abandone el monitor o espere en otra condición. 48
25 Monitores. Esquema de un monitor con variables condición: 49 Monitores. Problema productor-consumidor: Usaremos dos variable condición: lleno: Para hacer esperar al productor si buffer lleno. vacío: Para hacer esperar a consumidor si buffer vacío. Usamos dos funciones: Depositar_buffer: Introducirá un elemento en buffer. Retirar_buffer: Obtendrá un elemento del buffer. Se garantiza acceso en zona crítica. Código productor: mientras verdadero hacer producir elemento en productor_siguiente productor_consumidor.depositar_buffer(productor_siguiente) Código consumidor: mientras verdadero hacer productor_consumidor.retirar_buffer(consumidor_siguiente) consumir elemento en consumidor_siguiente 50
26 Monitores. Monitor usado: tipo productor_consumidor = monitor variable lleno, vacio de condición variable contador, entrada, salida: entero variable buffer: matriz[0..n-1] de elemento función depositar_buffer(dato) { si contador==n entonces lleno.espera buffer[entrada] = dato entrada =(entrada + 1) módulo n contador = contador +1 si contador==1 entonces vacio.señal } función retirar_buffer(dato) { si contador==0 entonces vacio.espara dato = buffer[salida] salida = (salida + 1) módulo n contador = contador - 1 si contador==n - 1 entonces lleno.señal } { contador = 0 entrada = 0 salida = 0 } 51 Monitores. Problema de los filósofos (sin espera limitada): Se utiliza una variable para cada filósofo, indica su estado: variable estado: matriz[0..4] de (pensando, hambriento, comiendo) En la solución: El filósofo i sólo pasa al estado comiendo si sus vecinos no lo están: estado[(i+4) módulo 5]!= comiendo. estado[(i+1) modulo 5]!= comiendo. Se utiliza otra variable tipo condición: variable pobrecillo: matriz[0..4] de condición Para suspender la ejecución de un filosofo hambriento que no puede conseguir los palillos. El código del filósofo i cuando quiere comer sería: filósofos_comensales.coger_palillos(i) comer filósofos_comensales.dejar_palillos(i) 52
27 Monitores. Monitor usado: tipo filósofos_orientales = monitor variable estado: matriz[0..4] de (pensando, hambriento, comiendo) variable pobrecillo: matriz[0..4] de condición función coger_palillos(i) { estado[i]= hambriento evaluar(i) si estado[i]!= comiendo entonces pobrecillo[i].espera } función dejar_palillos(i) { estado[i] = pensando evaluar((i+4) módulo 5) evaluar((i+1) módulo 5) } función evaluar(i) {si (estado[(i+4) módulo 5]!= comiendo) y (estado[i] == hambriento) y (estado[(i+1) módulo 5]!= comiendo) entonces {estado[i] = comiendo pobrecillo[i].señal } { para i=0 hasta 4 hacer estado[i] = pensando} 53
Concurrencia: deberes. Concurrencia: Exclusión Mutua y Sincronización. Concurrencia. Dificultades con la Concurrencia
Concurrencia: deberes Concurrencia: Exclusión Mutua y Sincronización Capítulo 5 Comunicación entre procesos Compartir recursos Sincronización de múltiples procesos Asignación del tiempo de procesador Concurrencia
Hilos, 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
Concurrencia: Exclusión mutua y Sincronización
Concurrencia: Exclusión mutua y Sincronización Prof. Carlos Figueira Basado en materiales de Yudith Cardinale (USB) Williams Stallings, Eugene Styer Concurrencia Múltiples aplicaciones Aplicaciones estructuradas
Concurrencia. 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
Mensajes. Interbloqueo
CONCURRENCIA DE PROCESOS Preparado por: Angel Chata Tintaya ([email protected]) Resumen Los procesos comparten variables globales, comparten y compiten por recursos, se ejecutan simultáneamente intercalándose
Implementación de monitores POSIX
Implementación de monitores POSIX Ampliación de Sistemas Operativos (prácticas) E.U. Informática en Segovia Universidad de Valladolid Programación concurrente: Problemática Presencia de condiciones de
Procesos. Planificación del Procesador.
Procesos. Planificación del Procesador. Sistemas Operativos. Tema 2. Concepto de Proceso. Una definición sencilla: Programa en ejecución. Entidad pasiva Programa RECURSOS CPU Memoria Ficheros Dispositivos
Tema 4. Gestión de entrada/salida
Tema 4. Gestión de entrada/salida 1. Principios de la gestión de E/S. 1.Problemática de los dispositivos de E/S. 2.Objetivos generales del software de E/S. 3.Principios hardware de E/S. 1. E/S controlada
SISTEMAS OPERATIVOS AVANZADOS
SISTEMAS OPERATIVOS AVANZADOS TEMA 3 CLAVE: MIS 204 PROFESOR: M.C. ALEJA DRO GUTIÉRREZ DÍAZ 3. PROCESOS CONCURRENTES 3.1 Conceptos de programación concurrente 3.2 El problema de la sección crítica 3.3
un 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,
Sistemas Operativos. Características de la Multiprogramación. Interacción entre Procesos. Características de la Multiprogramación
Universidad Simón Bolívar Departamento de Electrónica y Circuitos EC3731 Arquitectura del Computador II Prof. Osberth De Castro Prof. Juan C. Regidor Sistemas Operativos Concurrencia y Sincronización de
Unidad 1: Conceptos generales de Sistemas Operativos.
Unidad 1: Conceptos generales de Sistemas Operativos. Tema 2: Estructura de los sistemas de computación. 2.1 Funcionamiento de los sistemas de computación. 2.2 Ejecución de instrucciones e interrupciones
El soporte del sistema operativo. Hace que un computador sea más fácil de usar. Permite que los recursos del computador se aprovechen mejor.
El soporte del sistema operativo Objetivos y funciones del sistema operativo Comodidad Hace que un computador sea más fácil de usar. Eficiencia Permite que los recursos del computador se aprovechen mejor.
SIMM: TEORÍA DE LOS S.O. I.E.S. JUAN DE LA CIERVA CURSO 2007/2008
SIMM: TEORÍA DE LOS S.O. I.E.S. JUAN DE LA CIERVA CURSO 2007/2008 1.- INTRODUCCIÓN A LOS PROCESOS 1.1.- Concepto 1.2.- Composición y estructura 1.3.- Estados y transiciones 2.- COMUNICACIÓN ENTRE PROCESOS
CDI 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
TABLA DE DECISION. Consideremos la siguiente tabla, expresada en forma genérica, como ejemplo y establezcamos la manera en que debe leerse.
TABLA DE DECISION La tabla de decisión es una herramienta que sintetiza procesos en los cuales se dan un conjunto de condiciones y un conjunto de acciones a tomar según el valor que toman las condiciones.
UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3
UNIDADES FUNCIONALES DEL ORDENADOR TEMA 3 INTRODUCCIÓN El elemento hardware de un sistema básico de proceso de datos se puede estructurar en tres partes claramente diferenciadas en cuanto a sus funciones:
4. Programación Paralela
4. Programación Paralela La necesidad que surge para resolver problemas que requieren tiempo elevado de cómputo origina lo que hoy se conoce como computación paralela. Mediante el uso concurrente de varios
Estructuras de Sistemas Operativos
Estructuras de Sistemas Operativos Definicion de Sistema Operativos Un sistema operativo es un programa que actua como inter entre el usuario y el hardware de un computador y su proposito es proporcionar
Capítulo 1 Introducción a la Computación
Capítulo 1 Introducción a la Computación 1 MEMORIA PRINCIPAL (RAM) DISPOSITIVOS DE ENTRADA (Teclado, Ratón, etc) C P U DISPOSITIVOS DE SALIDA (Monitor, Impresora, etc.) ALMACENAMIENTO (Memoria Secundaria:
El problema de los Filósofos
El problema de los Filósofos Problemas de Programación Concurrente Solución con Semáforos Para evitar una situación de interbloqueo se limita el número de filósofos en disposición de comer a 4. PROGRAM
Estructura de datos y de la información Boletín de problemas - Tema 7
Estructura de datos y de la información Boletín de problemas - Tema 7 1. Un concesionario de coches tiene un número limitado de M modelos, todos en un número limitado de C colores distintos. Cuando un
SEGURIDAD Y PROTECCION DE FICHEROS
SEGURIDAD Y PROTECCION DE FICHEROS INTEGRIDAD DEL SISTEMA DE ARCHIVOS ATAQUES AL SISTEMA PRINCIPIOS DE DISEÑO DE SISTEMAS SEGUROS IDENTIFICACIÓN DE USUARIOS MECANISMOS DE PROTECCIÓN Y CONTROL INTEGRIDAD
TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA
TEMA 3. EL PROCESO DE COMPILACIÓN, DEL CÓDIGO FUENTE AL CÓDIGO MÁQUINA Programa: Algoritmo (secuencia no ambigua, finita y ordenada de instrucciones para la resolución de un determinado problema) traducido
Tema 2 Conceptos básicos de programación. Fundamentos de Informática
Tema 2 Conceptos básicos de programación Fundamentos de Informática Índice Metodología de la programación Programación estructurada 2 Pasos a seguir para el desarrollo de un programa (fases): Análisis
Modulo 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
Gestión de procesos DEFINICIONES DE PROCESOS
DEFINICIONES DE PROCESOS Gestión de procesos Un programa en Ejecución. Una instancia de un programa ejecutándose en un computador. La entidad que se puede asignar o ejecutar en un procesador. Una unidad
INTRODUCCION 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
Ejemplos 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
Capí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.
Práctica 2: El problema de la sección crítica
Práctica 2: El problema de la sección crítica Programación de Sistemas Concurrentes y Distribuidos Grado de Ingeniería Informática Dpto. de Informática e Ingeniería de Sistemas, Escuela de Ingeniería y
Capitulo 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
Bibliotecas Escolares. Perfil de Lector.
Bibliotecas Escolares. Perfil de Lector. 2012 Como usuario Lector de AbiesWeb, podrás acceder al catálogo de fondos, solicitar reservas, ver tus préstamos activos, ver el historial de tus lecturas, escribir
PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTE II.4 Sincronización basada en memoria compartida: Regiones críticas J.M. Drake 1 Regiones críticas Son bloques de código que al ser declarados como regiones críticas respecto de
Introducción a la Firma Electrónica en MIDAS
Introducción a la Firma Electrónica en MIDAS Firma Digital Introducción. El Módulo para la Integración de Documentos y Acceso a los Sistemas(MIDAS) emplea la firma digital como método de aseguramiento
Pipelining o Segmentación de Instrucciones
Pipelining o Segmentación de Instrucciones La segmentación de instrucciones es similar al uso de una cadena de montaje en una fábrica de manufacturación. En las cadenas de montaje, el producto pasa a través
MANUAL 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
Tema 1 Introducción. Arquitectura básica y Sistemas Operativos. Fundamentos de Informática
Tema 1 Introducción. Arquitectura básica y Sistemas Operativos Fundamentos de Informática Índice Descripción de un ordenador Concepto básico de Sistema Operativo Codificación de la información 2 1 Descripción
Técnicas de Desarrollo de Programas Ingeniería Informática Curso 2008 / 2009. Ejercicios de Patrones de Diseño:
Técnicas de Desarrollo de Programas Ingeniería Informática Curso 2008 / 2009 Ejercicios de Patrones de Diseño: Iterator, Composite, Strategy, Observer, Decorator, Visitor Ejercicio 1 (examen de junio año
Capítulo Comunicaciones de datos 1. Conexión de dos unidades 2. Conectando la unidad con una computadora personal
Capítulo Comunicaciones de datos Este capítulo describe todo lo que necesita saber para poder transferir programas entre la fx-7400g PLUS y ciertos modelos de calculadoras científicas gráficas CASIO, que
MANUAL DE PRACTICUM12 PARA CENTROS EDUCATIVOS ÁMBITO MÁSTER
MANUAL DE PRACTICUM12 PARA CENTROS EDUCATIVOS ÁMBITO MÁSTER Centros educativos de la Comunidad de Madrid que deseen ser centros de prácticas de los alumnos del Máster en Profesorado de ESO y Bachillerato,
GVisualPDA Módulo de Almacén
GVisualPDA Módulo de Almacén GVisualPDA es una aplicación para Windows Mobile 5/6 que amplía más aún las posibilidades de integración del software de gestión GVisualRec permitiendo estar conectados en
Correo Electrónico: Webmail: Horde 3.1.1
CONTENIDOS: PAGINA Qué es Webmail?. 2 Acceder a Webmail. 2 Instilación del Certificado UCO. 4 Instilación Certificado I.explorer. 4 Instilación Certificado Firefox. 7 Opciones Webmail. 8 Opciones Información
ESTRUCTURA 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
Tutorial DC++ Usarlo es muy sencillo y configurarlo también, aunque tiene algunos trucos importentes.
Tutorial DC++ Para compartir, lo mejor es usar el DC++, que es un programa de intercambio P2P (como el emule) pero optimizado para usarlo en redes locales. Usarlo es muy sencillo y configurarlo también,
Capítulo 9. Archivos de sintaxis
Capítulo 9 Archivos de sintaxis El SPSS permite generar y editar archivos de texto con sintaxis SPSS, es decir, archivos de texto con instrucciones de programación en un lenguaje propio del SPSS. Esta
Introducción a las redes de computadores
Introducción a las redes de computadores Contenido Descripción general 1 Beneficios de las redes 2 Papel de los equipos en una red 3 Tipos de redes 5 Sistemas operativos de red 7 Introducción a las redes
Departamento CERES Área de Tarjetas Inteligentes Manual de Usuario
14 CORREO SEGURO. Hay aplicaciones de correo que permiten enviar y recibir correos cifrados y firmados digitalmente utilizando criptografía. Estas operaciones garantizan el intercambio seguro de información,
TPV Táctil. Configuración y Uso. Rev. 1.2 21/01/09
Configuración y Uso Rev. 1.2 21/01/09 Rev. 2.0 20100616 1.- Ruta de Acceso a Imágenes. 2.- Estructuración de los Artículos. 3.- Creación de Grupos de Familias. 4.- Creación de Familias de Ventas. 5.- Creación
Tema 8 Procesos. * Definición informal: un proceso es un programa en ejecución
Tema 8 Procesos 8.1 Aspectos básicos de los procesos 8.1.1 Concepto de proceso * Definición informal: un proceso es un programa en ejecución Un programa ejecutable es un conjunto de instrucciones y datos
Soporte lógico de computadoras
Soporte lógico de computadoras Software: Sistemas Operativos Lenguajes de programación Lenguajes de Programación. Clasificación Proximidad del lenguaje al que entiende el ordenador: Bajo nivel: específico
Uso de Visual C++ Pre-Practica No. 3
Pre-Practica No. 3 Uso de Visual C++ Microsoft Visual C++ 2010 es una versión de Visual Studio específica para el lenguaje de programación C++. Es un entorno de desarrollo muy completo y profesional. Por
EDWIN KÄMMERER ORCASITA INGENIERO ELECTRÓNICO
Identifica los tipos de datos y funciones - Tipos de Datos: Excel soporta 5 tipos de datos, estos son: a) Numéricos: Están formados por cualquiera de los 10 dígitos (del 0 al 9) y pueden estar acompañados
Sistemas Operativos. Curso 2016 Procesos
Sistemas Operativos Curso 2016 Procesos Agenda Proceso. Definición de proceso. Contador de programa. Memoria de los procesos. Estados de los procesos. Transiciones entre los estados. Bloque descriptor
Memoria compartida y semáforos r/w. La página del manual que podría servir para describir estas funciones es la siguiente:
(3 ptos) Memoria Compartida y Semáforos R/W 1. Objetivo En esta práctica se pretende crear una librería que dé la funcionalidad de un semáforo para resolver problemas con múltiples lectores y escritores
Concurrencia. 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
Una computadora de cualquier forma que se vea tiene dos tipos de componentes: El Hardware y el Software.
ARQUITECTURA DE LAS COMPUTADORAS QUE ES UNA COMPUTADORA (UN ORDENADOR)? Existen numerosas definiciones de una computadora, entre ellas las siguientes: 1) Una computadora es un dispositivo capaz de realizar
PROGRAMACIÓN CONCURRENTE. Tema 5 Monitores
PROGRAMACIÓN CONCURRENTE Tema 5 Monitores 1 Indice Definición de los monitores Sincronización condicional usando monitores Algunos problemas con monitores 2 Problemas de las regiones críticas condicionales
2 Sea una unidad de disco duro de brazo móvil con las siguientes características:
1 Sea una unidad de disco duro de brazo móvil con las siguientes características: 18 superficies, 20.331 cilindros y 400 sectores por pista. Sectores de 1.024 bytes de información neta. Velocidad de rotación:
En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas.
1 de 18 Inicio Qué es un foro En términos generales, un foro es un espacio de debate donde pueden expresarse ideas o comentarios sobre uno o varios temas. En el campus virtual, el foro es una herramienta
Tema 11. Soporte del Sistema Operativo 11.1. REQUERIMIENTOS DE LOS SISTEMAS OPERATIVOS. 11.1.1. MULTIPROGRAMACIÓN.
Tema 11 Soporte del Sistema Operativo 11.1. REQUERIMIENTOS DE LOS SISTEMAS OPERATIVOS. El sistema operativo es básicamente un programa que controla los recursos del computador, proporciona servicios a
Introducción a la Computación TFA
Introducción a la Computación TFA Departamento de Informática Facultad de Ciencias Físico, Matemáticas y Naturales- UNSL Lenguaje de Diseño de Algoritmos Estructura de Control Condicional Simple y Múltiple
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 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,
Tema 1. Conceptos fundamentales de los Sistemas Operativos
Tema 1. Conceptos fundamentales de los Sistemas Operativos 1. Introducción a los Sistemas Operativos. 1. Concepto de Sistema Operativo. Niveles del software. 2. Funciones principales de un Sistema Operativo.
PS.Vending Almacén Pocket PC
Versión 1.0 Enero 2013 Autor: Pedro Naranjo Rodríguez www.psvending.es Contenido Qué es PS.Vending Almacén Pocket PC?... 3 Funciona PS.Vending Almacén Pocket PC independiente de PS.Vending?... 3 Requisitos...
Tema 1: Introducción a los S.O. Ejercicios de Planificiación de Procesos
Tema 1: Introducción a los S.O. Ejercicios de Planificiación de Procesos 1.- Notas y criterios para los problemas de planificación NOTA GENERAL: Normalmente los enunciados no son rigurosamente completos,
PROGRAMACION CONCURRENTE
PROGRAMACION CONCURRENTE II.3 Sincronización basada en memoria compartida: Semáforos J.M. Drake 1 Procesos concurrentes y memoria compartida. Si los diferentes procesos de un programa concurrente tienen
Software Criptográfico FNMT-RCM
Software Criptográfico FNMT-RCM ÍNDICE 1. DESCARGA E INSTALACIÓN DEL SOFTWARE 2. EXPORTACIÓN DE CERTIFICADOS EN MICROSOFT INTERNET EXPLORER 3. IMPORTACIÓN DEL CERTIFICADO A LA TARJETA CRIPTOGRÁFICA -2-
Receta general para resolver problemas de sincronización con semáforos
Receta general para resolver problemas de sincronización con semáforos La primera vez que te enfrentas a la tarea de implementar una solución a un problema de sincronización entre procesos, es normal que
3. Número inicial y número final de mensajes mostrados en la página actual.
Sistema WEBmail El sistema WEBmail permite el acceso rápido y sencillo a su buzón de correo utilizando un navegador de páginas Web. Normalmente es usado como complemento al lector de correo tradicional,
Notas para la instalación de un lector de tarjetas inteligentes.
Notas para la instalación de un lector de tarjetas inteligentes. Índice 0. Obtención de todo lo necesario para la instalación. 3 1. Comprobación del estado del servicio Tarjeta inteligente. 4 2. Instalación
Oficina Online. Manual del administrador
Oficina Online Manual del administrador 2/31 ÍNDICE El administrador 3 Consola de Administración 3 Administración 6 Usuarios 6 Ordenar listado de usuarios 6 Cambio de clave del Administrador Principal
6-REGISTROS DEL 8086 Y DEL 80286
ESTRUCTURA DE COMPUTADORES I (Capítulo 6: Los registros del microprocesador 8086) 1/7 6-REGISTROS DEL 8086 Y DEL 80286 6.1 INTRODUCCIÓN: Dentro del procesador existen unos contenedores especiales de 16
PLATAFORMA VIRTUAL BASADA EN MOODLE
PLATAFORMA VIRTUAL BASADA EN MOODLE GUIA PARA LOS ALUMNOS GUIA PARA LOS ALUMNOS El siguiente documento es un manual de usuario para los alumnos en general, que pertenezcan a la Plataforma Virtual basada
AGREGAR 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
SIIGO Pyme. Templates. Cartilla I
SIIGO Pyme Templates Cartilla I Tabla de Contenido 1. Presentación 2. Qué es un Template? 3. Qué Aspectos se Deben Tener en Cuenta Antes de Diseñar o Modificar un Template? 4. Cuáles son las Formas que
Puesta en Marcha versión Monousuario
Puesta en Marcha versión Monousuario Criterium www.criterium.es Antonio Muñoz Sánchez [email protected] 950 442 281 Puesta en Marcha versión Monousuario 1 Limitaciones de versión monopuesto...3
19 4.1.1.0 4 04/05/2009
Soluciones Informáticas Descripción: Como utilizar la Agenda de Visitas Objetivos: Al finalizar este tutorial el usuario será capaz de utilizar la Agenda de Visitas con sus diferentes opciones: asignar
Q-flow Patrones básicos de Workflow
How to Q-flow Patrones básicos de Workflow Versión: 2.0 Fecha de publicación 28-03-2011 Aplica a: Q-flow 3.0 y Q-flow 3.1 Índice Introducción... 3 Patrones de control... 4 Patrón: Secuencia... 4 Patrón:
Manual de Palm BlueChat 2.0
Manual de Palm BlueChat 2.0 Copyright 2002 Palm, Inc. Todos los derechos reservados. Graffiti, HotSync y Palm OS son marcas registradas de Palm, Inc. El logotipo de HotSync, Palm y el logotipo de Palm
ARREGLOS DEFINICION GENERAL DE ARREGLO
ARREGLOS DEFINICION GENERAL DE ARREGLO Conjunto de cantidades o valores homogéneos, que por su naturaleza se comportan de idéntica forma y deben de ser tratados en forma similar. Se les debe de dar un
GUIA COMPLEMENTARIA PARA EL USUARIO DE AUTOAUDIT. Versión N 02 Fecha: 2011-Febrero Apartado: Archivos Anexos ARCHIVOS ANEXOS
ARCHIVOS ANEXOS Son los documentos, hojas de cálculo o cualquier archivo que se anexa a las carpetas, subcarpetas, hallazgos u otros formularios de papeles de trabajo. Estos archivos constituyen la evidencia
PROCESO ADMINISTRACIÓN DE RECURSOS TECNOLÓGICOS SUBPROCESO ADMINISTRACIÓN DE CONTINGENCIAS
Objetivo Este subproceso establece las actividades que se realizan para la planeación y control de respaldos y desastres relacionados con los recursos informáticos existentes en el Senado de La República
Sistemas de archivos distribuidos. Alvaro Ospina Sanjuan [email protected]
Sistemas de archivos distribuidos Alvaro Ospina Sanjuan [email protected] >Abstracción del sistema operativo para representar y organizar los recursos de almacenamiento >Se debe hacer la
Distinguir las diferentes estructuras de repetición utilizadas en problemas con ciclos: mientras, haga-mientras, repita-hasta, para.
ESTRUCTURAS DE REPETICIÓN OBJETIVOS Aprender a construir grandes y complejos problemas a través de la ejecución repetida de una secuencia de proposiciones llamados ciclos o estructuras repetitivas. Distinguir
SIIGO PYME PLUS. Proceso de Recuperación. Cartilla I
SIIGO PYME PLUS Proceso de Recuperación Cartilla I Tabla de Contenido 1. Presentación 2. Qué es el Proceso de Recuperación? 3. Cuál es el Objetivo del Proceso de Recuperación? 4. Cuáles son los Pasos que
Internet 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
Creación de Funciones de Conducción
Creación de Funciones de Conducción Requerimientos Para el desarrollo de esta actividad se requiere que: Contemos con un robot BoeBot armado con placa Arduino. Repetición En estos momentos habremos notado
CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS
CAPÍTULO IV BREVE DESCRIPCIÓN DE LA INFRAESTRUCTURA DE CÓMPUTO VISUAL BASIC 6.0 PARA WINDOWS 4.1 Antecedentes históricos El lenguaje de programación BASIC (Beginner's All purpose Symbolic Instruction Code)
Tema 6: Periféricos y entrada-salida
Tema 6: Periféricos y entrada-salida Soluciones a los problemas impares Estructura de Computadores I. T. Informática de Gestión / Sistemas Curso 2008-2009 Tema 6: Hoja: 2 / 12 Tema 6: Hoja: 3 / 12 Base
Resumen. 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
Curso 0 de Informática
Curso 0 de Informática 2015-2016 Tema 1: Introducción a la Informática y Conceptos básicos 1 Motivación (I): En los procesos industriales, cada vez es mayor el uso de sistemas informáticos para: Monitorización,
2) Tenemos un sistema informático con una sola CPU que está gestionada mediante una cola multinivel con realimentación.
EJERCICIOS DE PLANIFICACIÓN: 1) Un sistema informático posee los siguientes recursos: - una CPU - tres unidades de almacenamiento UAM1, UAM2 y UAM3. En nuestro sistema tenemos dos tipos de procesos: Tipo
Acronis 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
UNIDAD 1. LOS NÚMEROS ENTEROS.
UNIDAD 1. LOS NÚMEROS ENTEROS. Al final deberás haber aprendido... Interpretar y expresar números enteros. Representar números enteros en la recta numérica. Comparar y ordenar números enteros. Realizar
Sistemas 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.
Hardware y Estructuras de Control. Memoria Virtual. Ejecución de un Programa. Ejecución de un Programa
Memoria Virtual Capítulo 8 Hardware y Estructuras de Control Las referencias de memoria se traducen a direcciones físicas dinámicamente en tiempo de ejecución Un proceso puede ser intercambiado hacia dentro
15 CORREO WEB CORREO WEB
CORREO WEB Anteriormente Hemos visto cómo funciona el correo electrónico, y cómo necesitábamos tener un programa cliente (Outlook Express) para gestionar los mensajes de correo electrónico. Sin embargo,
Centro de Capacitación en Informática
Fórmulas y Funciones Las fórmulas constituyen el núcleo de cualquier hoja de cálculo, y por tanto de Excel. Mediante fórmulas, se llevan a cabo todos los cálculos que se necesitan en una hoja de cálculo.
