Teoría de Sistemas Operativos Sincronización Procesos
|
|
- Víctor Montero San Martín
- hace 6 años
- Vistas:
Transcripción
1 Teoría de Sistemas Operativos Sincronización Procesos Departamento de Electrónica º Semestre, 00 Gabriel Astudillo Muñoz Dos o más procesos leen o escriben ciertas zonas compartidas El resultado final puede depender de lo que cada proceso ejecutó. Proceso 1 SO Recurso Proceso N Supongamos el siguiente problema: Tenemos una Base de Datos financiera. Cada ficha representa una persona y puede o no tener deuda. El código que permite buscar deudores es el siguiente: void main(){ int deudores busca(0,000); busca(001, 000); printf( Deudores: %d,deudores); void busca(int ind1, ind) { for(i=ind1; i<=ind; i++) if(esdeudor(i)) deudores++; Qué pasa si modificamos el código de la siguiente manera? void main(){ int deudores pid=fork() if(pid==0){ busca(0,000); else{ busca(001, 000); printf( Deudores: %d,deudores); Lo anterior se conoce como una condición de competencia. Existe la necesidad de eliminar este tipos de condiciones. El resultado final no puede depender Del tiempo ni del lugar de ejecución de los procesos 6 1
2 Exclusión Mutua: concepto que garantiza que si un proceso utiliza un recurso compartido, los demás no pueden utilizarlo. Sección Crítica: Parte del programa en la que tiene acceso al recurso compartido. Para evitar que existan condiciones de competencia, se debe evitar que dos o más procesos accedan al mismo tiempo a la Sección Crítica 7 Cualquier solución al problema debe cumplir: 1.Dos procesos no deben encontrarse al mismo tiempo dentro de sus secciones críticas..no se deben hacer hipótesis sobre la velocidad o el número de CPU..Ningún proceso que esté en ejecución fuera de su sección crítica puede bloquear a otros procesos..ningún proceso debe esperar eternamente para entrar a su sección crítica. 8 Alternancia estricta: Proceso 0 Proceso 1 While (1) { While (1) { while(turn!= 0) while(turn!= 1) espera(); espera(); seccion_critica(); seccion_critica(); turn = 1; turn = 0; seccion_nocritica(); seccion_nocritica(); Qué sucede si un proceso quiere entrar dos veces consecutivas a su sección crítica? Solución de Peterson: Para el proceso P(i), i=0,1: otro=1-i; while (TRUE) { interesado[i] = TRUE; turno = otro; while (interesado[otro] && turno==otro); sección_crítica(); interesado[i]=false; sección_no_crítica(); Inicialmente interesado[0]=interesado[1]=false y turno puede ser 1 o Solución de Peterson: Exclusión Mutua: Dos procesos quieren entrar: No pueden entrar al mismo tiempo, porque la condición de espera en el while no puede ser falsa para ambos procesos a la vez. Entonces supongamos que Pi entra primero. En ese caso, turno=i, y para que el otro entre, turno debe cambiar a 1-i, o bien interesado[i] a FALSE. El único que hace esos cambios es el propio proceso i, y lo hace cuando está fuera de su sección crítica. Solución de Peterson: Ausencia de Aplazamiento indefinido (starvation) Si el proceso i quiere entrar y el otro está ejecutando su sección no crítica, interesado[otro]==false y Pi no tiene impedimento para entrar. Entrada garantizada. Si un proceso quiere entrar, a lo más debe esperar que el otro salga de la sección crítica 11 1
3 Instrucción TSL: Lee el contenido de una palabra de memoria en un registro para después almacenar un valor distinto de cero en esa dirección Las operaciones de lectura y almacenamiento de la palabra tienen la garantía de ser indivisibles Instrucción TSL: Se emplea una variable compartida, flag. Ésta coordina el acceso al recurso compartido. Cuando flag==0, cualquier proceso puede darle el valor 1 mediante la instrucción TSL y después leer o escribir en el recurso compartido. Al terminar, el proceso vuelve a hacer flag= Instrucción TSL: enter_region: tsl register,flag // copia flag al registro y hace flag=1 cmp register,#0 // flag = 0? jnz enter_region // si era distinto de cero, la cerradura // estaba establecida por lo que hay // que hacer un ciclo ret // retorno a quien hizo la llamada; Un semáforo es una variable entera (positiva), cuyo valor sólo puede ser accesado mediante las operaciones wait y signal leave_region: mov flag,#0 ret // almacena un 0 en flag // regresa a quien hizo la llamada 1 16 WAIT: verifica si el valor de un semáforo es mayor que cero y en este caso decrementa dicho valor y el proceso continúa. Si es cero, el proceso se va a dormir Las modificaciones al valor del semáforo sólo se ejecutan en forma indivisible, es decir, si un proceso está modificando un semáforo ningún otro proceso puede esta modificando el mismo valor SIGNAL: incrementa el valor del semáforo respectivo. Si uno o más procesos dormían y no podían completar una operación DOWN anterior, el SO elige alguno de ellos y se le permite terminar la operación WAIT. después de un SIGNAL en un semáforo con procesos durmiendo, dicho semáforo seguirá con valor 0, pero habrá un menor número de procesos durmiendo
4 /*Semáforo mutex compartido por N procesos e inicializado en 1*/ /*Estructura del proceso P i */ while (TRUE) { wait(mutex); /*Sección Critica*/ signal(mutex); /*Sección No Crítica*/ Se produce cuando un proceso de un sistema multiprogramado espera un evento que nunca va a ocurrir. Un conjunto de procesos está en deadlock cuando cada proceso en el conjunto está esperando por un evento que solo puede ser causado por otro proceso en el conjunto Ejemplo Proceso A wait(s); wait(q); /* SC */ signal(q); signal(s); Proceso B wait(q); wait(s); /* SC */ signal(s); signal(q); 1.- Condición de exclusión mutua. Cada recurso está asignado a un proceso o está disponible Cuándo hay Bloqueo Mutuo? 1.- Condición de posesión y espera Los procesos que tienen recursos asignados con anterioridad, pueden solicitar nuevos recursos. Solicita R Condición de no apropiación Los recursos asignados no pueden ser forzados a dejar un proceso El proceso que los posee debe liberarlos en forma explícita.
5 Condición de espera circular Debe existir una cadena circular de dos o más procesos, cada uno de los cuales espera un recurso asignado por el siguiente miembro de la cadena. Solicita R Solicita P 6 º Tiempo Proceso A Proceso B Comentario 0 A0 1 A1 El plotter es asignado a A A B0 Cambio de contexto B1 La impresora es asignada a B B 6 B 7 B B Necesita el plotter, El proceso B no puede seguir, ya que el plotter está asignado a A 8 A Cambio de contexto 9 A A necesita la impresora. No puede seguir ya que está asignada a B 10 B B Necesita el plooter 11 A A necesita la impresora etc Evitar un bloqueo: En vez de restringir la forma u orden en que los procesos deben solicitar recursos, podríamos chequear que sea seguro conceder un recurso, antes de otorgarlo. Evitar un bloqueo: Un estado de asignación de recursos es el número de recursos disponibles y asignados, y el máximo declarado por cada proceso. Obs: Necesitamos que cada proceso declare la cantidad máxima de recursos de cada clase que va a necesitar: Un estado seguro es un estado en el cual el sistema puede asignar recursos a los procesos (hasta su máximo) en alguna secuencia, y evitar bloqueo mutuo 9 0
6 Evitar un bloqueo: Un estado es seguro sólo si existe una secuencia segura, es decir, una secuencia de procesos <, P,...,Pn > donde, para cada Pi, los recursos que Pi aún puede solicitar pueden satisfacerse con los recursos disponibles y los retenidos por Pj con j<i. Si los recursos que Pi necesita no están disponibles, Pi puede esperar hasta que los Pj terminen. Si no existe tal secuencia, se dice que el sistema está en un estado inseguro Consideremos un sistema con 1 unidades de cinta y procesos:,p,p. P0 P Máximo Requerimiento 10 9 En t0 el sistema esta en un estado seguro, con secuencia,p0,p. t0 1 Consideremos un sistema con 1 unidades de cinta y procesos:,p,p. P0 Máximo Requerimiento 10 t0 P 9 En t0 el sistema está en un estado inseguro, No hay secuencia segura puede existir bloqueo mutuo. 6
Mensajes. Interbloqueo
CONCURRENCIA DE PROCESOS Preparado por: Angel Chata Tintaya (angelchata@hotmail.com) Resumen Los procesos comparten variables globales, comparten y compiten por recursos, se ejecutan simultáneamente intercalándose
Más detallesConcurrencia: 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
Más detallesConcurrencia entre Procesos.
Concurrencia entre Procesos. Sistemas Operativos Tema 3. 1 Procesamiento concurrente. Procesamiento concurrente: base de los sistemas operativos modernos (multiprogramados): Un conjunto de procesos que
Más detallesManipulación de procesos
Manipulación de procesos Las primeras computadoras solo podían manipular un programa a la vez. El programa tenía control absoluto sobre todo el sistema. Con el desarrollo vertiginoso del hardware ese panorama
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 detallesConcurrencia: 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
Más detallesInterbloqueos. 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
Más detallesCiclos. Recordando Estructuras de Control Básicas: SELECCIÓN (condición) SECUENCIAL
Ciclos Fundamentos de Programación Recordando Estructuras de Control Básicas: Una secuencia es una serie de estatutos que se ejecutan uno después de otro. Selección (condición) ejecuta diferentes estatutos
Más detallesEl lenguaje C. 1. Identificadores, constantes y variables
Principios de Programación El lenguaje C 1. Identificadores, constantes y variables 1.1. Conceptos de memoria Los nombres de variable como x, y, suma corresponden a localizaciones o posiciones en la memoria
Más detallesSistemas Operativos Practica 1: procesos y concurrencia.
Sistemas Operativos Practica 1: procesos y concurrencia. Objetivos: Introducir al alumno a los conceptos de programa, concurrencia, paralelismo y proceso o tarea. Manejo del concepto de concurrencia haciendo
Más detallesSistemas Distribuidos
Sistemas Distribuidos Exclusion Mutua: Memoria Compartida. Ramiro De Santiago Lopez. 28/01/2014 Exclusion Mutua (ME) Un proceso excluye temporalmente a todos los demás para usar un recurso compartido.
Más detallesTEMA 4. ESTRUCTURAS DE CONTROL
M.P. Sesmero, P. de Toledo, F.J. Ordoñez, J. Gómez-Romero, J.A. Iglesias, J.L. Mira Programación TEMA 4. ESTRUCTURAS DE CONTROL Grado en Ingeniería en Tecnologías Industriales Programación CONTENIDOS 4.1.
Más detallesSistemas 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
Más detallesElementos de un programa en C
Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución
Más detallesPROGRAMACION 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
Más detallesSistemas Operativos Temas 4, 5 y 6. Jorge García Duque Despacho: B-202 Tutorías: Lunes 16:00-18:00 y Martes 16:00-20:00
Sistemas Operativos Temas 4, 5 y 6 Jorge García Duque Despacho: B-202 Tutorías: Lunes 16:00-18:00 y Martes 16:00-20:00 Índice Tema 4: Herramientas de Sincronización de Alto Nivel. Regiones Críticas. Monitores.
Más detallesSIMM: 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
Más detallesREFERENCIA DEL LENGUAJE
REFERENCIA DEL LENGUAJE Sesión 07 Mg. Cadenas de caracteres Una cadena de caracteres es un arreglo de caracteres. Los caracteres son letras, números y signos de puntuación. Cuando un número se usa como
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 detallesFunciones básicas del depurador
Funciones básicas del depurador Con frecuencia, los alumnos piensan que cuando su programa no tiene errores de compilación (está correctamente escrito) entonces ya es correcto. Muchas veces esto no es
Más detallesTema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía
Tema 3 SUBRUTINAS ÍNDICE Definición e instrucciones básicas Soporte para el tratamiento de subrutinas (ejecución de la subrutina y gestión del bloque de activación) Interrupciones vs llamadas a procedimiento
Más detallesSistemas operativos. Hasta ahora hemos visto. Relación programa-sistema operativo Gestión de memoria
Sistemas operativos UPCO ICAI Departamento de Electrónica y Automática 1 Hasta ahora hemos visto Relación programa-sistema operativo Gestión de memoria Reserva para la ejecución Pilas, heap, memoria de
Más detallesESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF
ESCUELA POLITÉCNICA SUPERIOR GRADO EN DISEÑO IND. INFORMÁTICA CURSO 2012-13 PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF HASTA AHORA... En prácticas anteriores se ha aprendido: La estructura principal de un
Más detallesSistemas Operativos. Clase 2: Administración de procesos.
Sistemas Operativos Clase 2: Administración de procesos. Administración de procesos Un concepto muy importante en el ambiente de diseño de todo sistema operativo, es el de proceso o tarea. De manera general,
Más detallesTEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO. Definición y objetivos de un S.O
TEMA 3. CONCEPTOS FUNDAMENTALES DEL NIVEL DEL SISTEMA OPERATIVO Definición y objetivos de un S.O Definición y objetivos del sistema operativo Estructura, componentes y servicios de un S.O Llamadas al sistema
Más detallesSEC. 2.2 COMUNICACIÓN ENTRE PROCESOS 63
62 PROCESOS CAP. 2 permanecerá dando vueltas en su ciclo hasta que se asigne FALSE a interested[0], cosa que sólo sucede cuando el proceso O invoca leave_region para salir de su región crítica. Consideremos
Más detallesLENGUAJE. Tema 2 Elementos de un programa
LENGUAJE Tema 2 Elementos de un programa ELEMENTOS DE UN PROGRAMA Comentarios. Identificadores. Constantes. Variables. Operadores. Sentencias o instrucciones. COMENTARIOS Los comentarios en C pueden ocupar
Más detallesDIAGRAMAS DE FLUJO ELEMENTOS E INSTRUCCIONES A USAR EN UN DIAGRAMA DE FLUJO
DIAGRAMAS DE LUJO Un Diagrama de lujo es la representación gráfica de los pasos a seguir para lograr un objetivo, que habitualmente es la solución de un problema. Por Logical se entiende, en algunos libros,
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 detallesFundamentos de programación
Fundamentos de programación Estructuras de Control Estructuras de control Estructuras de control Estructura secuencial Estructura alternativa Sentencias if, if else Sentencias if else anidadas El operador
Más detallesTEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS
TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:
Más detallesInicio del programa. Entrada de datos. Proceso de datos. Salida de datos. Fin del programa
PROGRAMACIÓN 10. Prof. Dolores Cuiñas H. Recuerde que estos son apuntes muy simplificados que deberá completar con la bibliografía recomendada APUNTES Nº 4 ESTRUCTURA SECUENCIAL GENERAL La estructura secuencial
Más detallesInstrucciones de control
Instrucciones de control Instrucciones de control de flujo C# ofrece un conjunto de sentencias similar al de C, C++ o Java. A continuación se estudian muy brevemente cada una de ellas. if if se utiliza
Más detallesSistemas Operativos [Procesos]
Sistemas Operativos [Procesos] M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 13-O Sergio Luis Pérez (UAM CUAJIMALPA) Curso de Sistemas Operativos 1 / 62 Procesos Procesos I Un
Más detallesAlgoritmos. Medios de expresión de un algoritmo. Diagrama de flujo
Algoritmos En general, no hay una definición formal de algoritmo. Muchos autores los señalan como listas de instrucciones para resolver un problema abstracto, es decir, que un número finito de pasos convierten
Más detallesUNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO
UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO LICENCIATURA EN PRODUCCIÓN INDUSTRIAL. UNIDAD DE APRENDIZAJE: PROGRAMACIÓN Créditos institucionales de la UA: 6 Material visual: Diapositivas Unidad de competencia
Más detallesINTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA
APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto
Más detallesEstructuras de Repetición (Repita para)
Estructuras de Repetición (Repita para) Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Programación Digital I 1 REPITA PARA Fijar
Más detallesSistema de Calificaciones del Nivel de Secundarias
Sistema de Calificaciones del Nivel de Secundarias Objetivo. Sistema en cual se capturan las calificaciones bimestrales de los alumnos del nivel de secundarias, por medio del cual se imprimen las boletas
Más detallesGESTIÓN Y ADQUISICIÓN DE RECURSOS
CONTROL DE CAMBIOS VERSIÓN 1 FECHA DESCRIPCIÓN DE LA MODIFICACION 1 Primera versión del documento 1 Si este documento se encuentra impreso se considera Copia no Controlada. La versión vigente se encuentra
Más detallesProgramación En Lenguaje C
Programación En Lenguaje C Introducción Básica para Primero de Bachillerato TECNOLOGÍA DE LA INFORMACIÓN IES PALAS ATENEA Lenguaje C Estructurado Secuencial De alto Nivel Altamente portable Necesita un
Más detallesPrincipios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario
Más detallesTema 3. Aplicaciones de Tipo Consola
Tema 3. Aplicaciones de Tipo Consola Una aplicación de consola es aquella que se ejecuta dentro de una ventana de línea de comandos. Este tipo de ventana recibe diferentes denominaciones: Símbolo del sistema,
Más detallesESTRUCTURAS REPETITIVAS
DOCENTE: Ing. Ronald Rentería Ayquipa MARCO TEÓRICO: ESTRUCTURAS REPETITIVAS La programación estructurada es un paradigma que consiste en la organización de un código en bloques conformados por estructuras
Más detallesConstantes. Las constantes no cambian durante la ejecucion de un programa en C++, en C++ existen 4 tipos de constantes:
Constantes Las constantes se pueden declarar con la palabra reservada const y se le asigna un valor en el momento de la declaracion, este valor no se puede modificar durante el programa y cualquier intento
Más detallesUNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE CIENCIAS PRACTICA DE PROCESOS HERRAMIENTAS
UNIVERSIDAD AUTÓNOMA DE BAJA CALIFORNIA FACULTAD DE CIENCIAS PRACTICA DE PROCESOS HERRAMIENTAS Caso 1: 1.- Necesitamos un cd o Dvd para grabar alguna de las versiones de livecd de Linux. 2.- Liga de una
Más detallesUn identificador le da nombre único a un elemento en un programa (Variables, procedimientos, etc.). No puede contener operadores como + - * /
undamentos de sintaxis en algunas instrucciones de C#.Net Dr. Ramón Roque Hernández Identificadores Un identificador le da nombre único a un elemento en un programa (ariables, procedimientos, etc.). No
Más detallesMANUAL DEL AULA VIRTUAL (MOODLE)
MANUAL DEL AULA VIRTUAL (MOODLE) A continuación se presenta un manual para el manejo del aula virtual a través de Moodle y de esta manera conocer este entorno de aprendizaje para realizar ciertas actividades
Más detalles$0 Representa al parámetro cero o nombre del programa $1 Representa al parámetro uno $2 Representa al parámetro dos
PROGRAMACIÓN DE SHELL SCRIPTS EN LINUX El shell es un intérprete de órdenes, pero el shell no es solamente eso; los intérpretes de órdenes de Linux son auténticos lenguajes de programación. Como tales,
Más detallesSe guardan en archivos con extencion c y los cabezales con extension h
Se guardan en archivos con extencion c y los cabezales con extension h Tipos de Variables: Tipo Tamaño(bytes) Limite inferior Limite superior char 1 -- -- unsigned char 1 0 255 short int 2-32768 +32767
Más detallesPHP: Lenguaje de programación
Francisco J. Martín Mateos Carmen Graciani Diaz Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Tipos de datos Enteros Con base decimal: 45, -43 Con base octal: 043, -054
Más detallesProgramación de Computadores 4 Iteraciones y Decisiones. Prof. Javier Cañas. Universidad Técnica Federico Santa María Departamento de Informática
Programación de Computadores 4 Iteraciones y Decisiones Prof. Javier Cañas Universidad Técnica Federico Santa María Departamento de Informática Contenido 1 Introducción 2 Operadores Relacionales y Lógicos
Más detallesObjetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola)
Objetivos de la sesión Entender el tipo de programas que se pueden realizar con aplicaciones de consola. Conocer el concepto de variable, la forma en que se declaran y su utilización. Conocer la forma
Más detallesSistemas 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
Más detallesJava para programadores
Java para programadores Java y Servicios Web I Master en Ingeniería Matemática Manuel Montenegro Dpto. Sistemas Informáticos y Computación Desp. 467 (Mat) montenegro@fdi.ucm.es Contenidos Variables. Tipos
Más detallesEstructuras de Repetición (Hacer-Mientras)
Estructuras de Repetición (Hacer-Mientras) Material Original: Prof. Flor Narciso Modificaciones: Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería
Más detallesCurso de Programación en C. Licenciatura, FCQeI. APUNTADORES.
APUNTADORES. La memoria de una máquina esta ordenada en forma de celdas numeradas consecutivamente y que se pueden manipular individualmente o en grupos contiguos. La siguiente figura muestra una representación
Más detallesFicheros conceptos. Manejo de ficheros en C. Apertura del fichero Función fopen: nombre del fichero. Apertura del fichero Función fopen
Fundamentos de Informática. Dpto. de ATC - Página 1 de 8 conceptos Manejo de ficheros en C Contienen los datos que se almacenan en dispositivos de almacenamiento masivo: disquetes, discos duros, DROM,
Más detallesProgramación Orientada a Objetos Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC.
Sentencias Java Parte I Ing. Julio Ernesto Carreño Vargas MsC. Variables Conceptos de Memoria Una variable es un espacio en la memoria del PC Cada variable tiene un nombre, un tipo, un tamaño y un valor
Más detalles- Bajo que condiciones el algoritmo de planifiación de procesos FIFO (FCFS) resultaría en el tiempo de respuesta promedio más pequeño?
Sistemas Operativos. Grado Ingeniería Informática. TGR-2.1 Procesos. Noviembre 2014 Problemas para hacer en clase FIFO cpu C A 1. Dos procesos A y B tienen una ráfaga de CPU de 50 ms y un proceso C tiene
Más detallesGuía rápida para gestionar el puerto paralelo del PC
Guía rápida para gestionar el puerto paralelo del PC Descarga desde: http://eii.unex.es/profesores/jisuarez/descargas/ip/guia_rapida_pp.pdf José Ignacio Suárez Marcelo Universidad de Extremadura Escuela
Más detallesLección 2 Introducción al lenguaje C
Lección Introducción al lenguaje C Decimal Binario Hexadecimal A B C D E F Octal Equivalencia entre decimal, binario, hexadecimal y octal. Código ASCII (American Standard Code for Information Interchange)
Más detallesOperadores de comparación
Operadores de comparación Los operadores de comparación en C son: Igual (==) Distinto (!=) Mayor (>) y Mayor o igual (>=) Menor (
Más detallesESCUELA DE INFORMÁTICA
TÉCNICO EN SISTEMAS LABORAL SUBMODULO TEMA 1 (Visual Basic for Application) Microsoft VBA (Visual Basic for Applications) es el lenguaje de macros de Microsoft Visual Basic que se utiliza para programar
Más detalles2.2 Nombres, Ligado y Ámbito
2.2 Nombres, Ligado y Ámbito Ligado estático y dinámico, reglas de ámbito y prueba de tipos. Conceptos Nombres e Identificadores Variables Tipos Ámbito Constantes Nombres Identificador que designa en el
Más detallesProgramación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
Más detallesEstructuras en LabVIEW.
Estructuras en LabVIEW. Sumario: 1. Ejecución según el flujo de datos. 2. Estructuras básicas disponibles en LabVIEW. a) Estructura Sequence. b) Estructura Case. c) Estructura For Loop. d) Estructura While
Más detalles1. Sobrecarga de operadores. 2. Métodos operadores unarios Operador de incremento (prefijo)
. Sobrecarga de operadores. unarios Operador de incremento (prefijo). Devolución de objetos en los métodos. Retorno por referencia Sobrecarga de operadores Los operadores aceptan uno o varios operandos
Más detallesTema 2. El lenguaje JAVA
Tema 2. El lenguaje JAVA Nomenclatura habitual Variables Tipos de variables Tipos primitivos Referencias Arrays Operadores Operadores de Java Precedencia de operadores Sentencias de control Sentencias
Más detallesLa 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:
Más detallesInformática Ingeniería en Electrónica y Automática Industrial
Informática Ingeniería en Electrónica y Automática Industrial Entrada y salida estándar V1.3 Autores Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato:
Más detallesUNIVERSIDAD NACIONAL FEDERICO VILLARREAL FACULTAD DE INGENIERÍA ELECTRÓNICA E INFORMÁTICA SÍLABO
SÍLABO ASIGNATURA: SISTEMAS OPERATIVOS CODIGO: 8E0003 I. DATOS GENERALES: 1.1 Departamento Académico : Ingeniería Electrónica e Informática 1.2 Escuela Profesional : Ingeniería Informática 1.3 Ciclo de
Más detallesEl lenguaje C. 3. Una instrucción que se ejecutará si la condición es verdadera.
Principios de Programación El lenguaje C 1. Instrucciones de control 1.1. Secuencia, selección, iteración Por lo regular en un programa los enunciados son ejecutados uno después del otro, en el orden en
Más detallesPráctica de constantes, expresiones y operadores. Programación en C 1
Práctica de constantes, expresiones y operadores Programación en C 1 Definición de variables (II) Las variables (automáticas) no inicializadas tienen cualquier valor. Una variable (automática) se inicializa
Más detallesACREDITACIÓN. Entrar al menú Atención Educativa \ Acreditación se muestra la siguiente pantalla: Programar fechas y sedes de aplicación
1 ÍNDICE Organización de la aplicación...3 Registro de Fechas y Sedes de Aplicación...3 Aplicadores...6 Exámenes...7 Calificar Examen...10 Hoja de respuestas...10 Calificación por Lote...12 Resumen...13
Más detallesPRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos
ESCUELA DE INGENIERÍA DE SISTEMAS DEPARTAMENTO DE COMPUTACIÓN PROGRAMACIÓN 2 PRÁCTICA DE LABORATORIO 4 Programación Orientada a Objetos Contenido Introducción...1 Objeto...2 Atributo...2 Métodos...2 Clase...3
Más detallesParte 4: Estructuras de Control
Parte 4: Estructuras de Control Las estructuras de control le permiten controlar el flujo de ejecución del programa. Tenemos dos tipos de estructuras de control: Estructuras de decisión Estructuras de
Más detallesPrincipios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Ing. Ricardo Coppo rcoppo@uns.edu.ar Qué es un Objeto? Un objeto es una instancia de una clase Las clases actuán como modelos que permiten la creación
Más detallesEstructuras de Datos Declaraciones Tipos de Datos
Departamento de Informática Universidad Técnica Federico Santa María Estructuras de Datos Declaraciones Tipos de Datos Temas: 2-3-4 IWI-131, paralelo 01 Profesor: Teddy Alfaro O. Lenguaje de Programación
Más detallesEstructuras de control
Estructuras de control Introducción Los algoritmos vistos hasta el momento han consistido en simples secuencias de instrucciones; sin embargo, existen tareas más complejas que no pueden ser resueltas empleando
Más detallesDistinguir las diferentes estructuras de repetición utilizadas en problemas con bucles: mientras, repetir mientras, para.
ESTRUCTURAS ITERATIVAS 1 ESTRUCTURAS ITERATIVAS OBJETIVOS Aprender a resolver problemas mediante la ejecución repetida de una secuencia de proposiciones llamados bucle o estructuras repetitivas o iterativas.
Más detallesCarlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas
2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos
Más detallesEl modelo de Procesos
Administración n de procesos El modelo de Procesos Concepto central dentro de cualquier sistema operativo. Proceso vs. Programa: Programa: Es un archivo o conjunto de archivos que contienen código ejecutable.
Más detallesProgramación. Test Autoevaluación Tema 3
Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.
Más detallesPlanificación, Sincronización y comunicación de Procesos. Universidad Tecnológica Nacional
Planificación. Sean los cinco procesos descritos en la tabla siguiente: Proceso Tiempo de creación Tiempo de PU D E 4 8 4 3 Si suponemos que tenemos un algoritmo de planificación que utiliza una política
Más detallesLEX. Las definiciones y subrutinas son opcionales. El segundo %% es opcional pero el primer %% indica el comienzo de las reglas.
LEX Estructura de un programa en LEX { definiciones { reglas { subrutinas del usuario Las definiciones y subrutinas son opcionales. El segundo es opcional pero el primer indica el comienzo de las reglas.
Más detallesCOMPONENTES DEL GUIÓN
GUIONES Representan secuencias de acciones estereotipadas COMPONENTES DEL GUIÓN 1. Cabecera Nombre del guión Papeles Apoyos Punto de vista 2. Condiciones de entrada 3. Condiciones de salida 4. Escenas
Más detalles6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior.
6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior. 6.1. El subsistema de E/S Qué es E/S en un sistema computador? Aspectos en el diseño del subsistema de E/S: localización
Más detallesFUNDAMENTOS DE INFORMÁTICA
FUNDAMENTOS DE INFORMÁTICA Tema 2 Expresiones, operadores y estructuras de control Departamento de Ingeniería de Sistemas y Automática Universidad de Vigo Fundamentos de Informática. Departamento de Ingeniería
Más detallesSOLUCIONES. SISTEMAS OPERATIVOS Examen de la convocatoria extraordinaria de diciembre 2 de diciembre de 2010
Calificación SISTEMAS OPERATIVOS Examen de la convocatoria extraordinaria de diciembre 2 de diciembre de 2010 Nombre SOLUCIONES 1 2 3 4 5 Titulación Dispone de tres horas y quince minutos para realizar
Más detallesGuía para cambio y solicitud de contraseña de acceso a los Sistemas Académicos Institucionales
Guía para cambio y solicitud de contraseña de acceso a los Sistemas Académicos Institucionales En este documento se describen los procedimientos para cambio de contraseña y solicitud de contraseña (en
Más detallesApuntadores (Punteros)
Apuntadores (Punteros) x9ff10 X int 209 SESION 7 *ptr Definición Llamados también punteros. Un Apuntador es una variable que contiene una dirección de memoria, la cual corresponderá a un dato o a una variable
Más detallesPráctica 8: Barreras
Arquitectura y Tecnología de Computadores 14 de febrero de 2014 Objetivos Aprender a utilizar las variables condición y las barreras de la biblioteca Pthreads. Diseñar e implementar una barrera: Barrera
Más detallesLaboratorio de Arquitectura de Redes. Entrada y salida estándar
Laboratorio de Arquitectura de Redes Entrada y salida estándar Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato: scanf() El buffer de teclado Entrada
Más detallesApuntadores en C y C++
Apuntadores en C y C++ Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Prof. Marcos A. Gil T. 8 de diciembre de 2004 1. Introducción Los apuntadores en C y C++ son una herramienta
Más detallesProgramación Concurrente y Paralela. P(S) ; sección crítica P(S);
2.5.2 Monitores Los semáforos, a pesar de su sencillez de uso, son el equivalente a las instrucciones goto y el manejo de apuntadores en los lenguajes de programación imperativos: son muy susceptibles
Más detallesT5-multithreading. Indice
T5-multithreading 1.1 Indice Proceso vs. Flujos Librerías de flujos Comunicación mediante memoria compartida Condición de carrera Sección Crítica Acceso en exclusión mutua Problemas Abrazos mortales 1.2
Más detallesProgramación estructurada (Introducción a lenguaje C)
Programación estructurada (Introducción a lenguaje C) M. en C. Sergio Luis Pérez Pérez UAM CUAJIMALPA, MÉXICO, D. F. Trimestre 15-I Sergio Luis Pérez (UAM CUAJIMALPA) Curso de programación estructurada
Más detallesQUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B)
APRENDERAPROGRAMAR.COM QUÉ ES UNA CLASE JAVA? ATRIBUTOS (PROPIEDADES O CAMPOS), CONSTRUCTOR Y MÉTODOS. (CU00623B) Sección: Cursos Categoría: Curso Aprender programación Java desde cero Fecha revisión:
Más detallesEstructuras de Control
Algorítmica y Lenguajes de Programación Estructuras de Control Estructuras de Control. Introducción Hasta ahora algoritmos han consistido en simples secuencias de instrucciones Existen tareas más complejas
Más detalles