Documentos de Académico
Documentos de Profesional
Documentos de Cultura
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
PROFESIONAL DE INGENIERA DE
SISTEMAS
UNIVERSIDAD NACIONAL
TORIBIO RODRÍGUEZ DE MENDOZA DE AMAZONAS
1
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Contenido
Introducción .................................................................................................................................. 3
Marco teórico ................................................................................................................................ 4
Objetivos ....................................................................................................................................... 4
Conocer la interacción de los procesos y sus relaciones de competencia, cooperación por
compartición y cooperación por comunicación. ........................................................................... 4
Veremos los requisitos para la exclusión mutua. ......................................................................... 4
Se entenderá el termino de semáforo en las operaciones con los procesos ............................... 4
Concurrencia. Exclusión mutua y sincronización .......................................................................... 5
Principios de la concurrencia .................................................................................................... 5
Condición de carrera ................................................................................................................. 5
Preocupaciones del sistema operativo ..................................................................................... 5
Interacción de procesos ............................................................................................................ 6
Requisitos para la exclusión mutua........................................................................................... 9
Exclusión mutua: soporte hardware ............................................................................................. 9
Deshabilitar interrupciones ....................................................................................................... 9
Instrucciones máquina especiales........................................................................................... 10
Semáforos ................................................................................................................................... 10
Exclusión mutua ...................................................................................................................... 13
El problema productor/consumidor ....................................................................................... 13
Implementación de semáforos ............................................................................................... 15
Monitores .................................................................................................................................... 15
Monitores con Señales: (definición de Hoare) ........................................................................ 15
Pasos de Mensaje ........................................................................................................................ 17
Sincronización ......................................................................................................................... 17
Direccionamiento .................................................................................................................... 18
Formato De Mensajes ............................................................................................................. 19
Disciplina De Cola .................................................................................................................... 20
Exclusión Mutua ...................................................................................................................... 20
Problema De Los Lectores/Escritores ......................................................................................... 21
Descripción del problema: ...................................................................................................... 21
Prioridad a los lectores ........................................................................................................ 21
Prioridad a los escritores ..................................................................................................... 21
Conclusiones y recomendaciones ............................................................................................... 23
Bibliografía .................................................................................................................................. 24
2
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Introducción
Los temas centrales del diseño de sistemas operativos están todos relacionados con la
gestión de procesos e hilos: multiprogramación, multiprocesamiento, procesamiento
distribuido. La concurrencia es fundamental en todas estas áreas y en el diseño del
sistema operativo. La concurrencia abarca varios aspectos, entre los cuales están la
comunicación entre procesos y la compartición de, o competencia por, recursos, la
sincronización de actividades de múltiples procesos y la reserva de tiempo de
procesador para los procesos. Debemos entender que todos estos asuntos no sólo
suceden en el entorno del multiprocesamiento y el procesamiento distribuido, sino
también en sistemas monoprocesador multiprogramados. La concurrencia aparece en
tres contextos diferentes: múltiples aplicaciones, aplicaciones estructuradas,
estructura del sistema operativo.
3
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Marco teórico
Excluir. - sacar o dejar fuera de un lugar o de un grupo a alguien o algo.
Sección. - parte con forma generalmente geométrica que junto con otras constituye
una cosa material o un conjunto de cosas.
Dinámica. - conjunto de hechos o fuerzas que actúan con un fin determinado.
Estático. - que permanece en un mismo estado y no experimenta cambios.
Objetivos
Conocer la interacción de los procesos y sus relaciones de competencia, cooperación
por compartición y cooperación por comunicación.
4
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Condición de carrera
Una condición de carrera sucede cuando múltiples procesos o hilos leen y escriben datos
de manera que el resultado final depende del orden de ejecución de las instrucciones
en los múltiples procesos. Consideremos dos casos sencillos.
Ejemplo:
Considere dos procesos: A1 y A2, que comparten las variables globales b y c, con valores
1iniciales b = 1 y c = 2.
En algún punto de su ejecución, A1 ejecuta la asignación b = b + c y, en algún punto de
su ejecución, A2 ejecuta la asignación c = b + c.
Note que los dos procesos actualizan diferentes variables. Sin embargo, los valores
finales de las dos variables dependen del orden en que los dos procesos ejecuten estas
dos asignaciones.
Si A1ejecuta su sentencia de asignación primero, entonces los valores finales serán b =
3 y c = 5. Si A2 ejecuta su sentencia de asignación primero, entonces los valores finales
serán b = 4 y c = 3.
5
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Interacción de procesos
Podemos clasificar las formas en que los procesos interaccionan en base al grado en que
perciben la existencia de cada uno de los otros. Enumera tres posibles grados de
percepción más las consecuencias de cada uno:
Procesos que no se perciben entre sí. Son procesos independientes que no se
pretende que trabajen juntos. El mejor ejemplo de esta situación es la
multiprogramación de múltiples procesos independientes. Estos bien pueden ser
trabajos por lotes o bien sesiones interactivas o una mezcla. Aunque los procesos no
estén trabajando juntos, el sistema operativo necesita pre- ocuparse de la
competencia por recursos. Por ejemplo, dos aplicaciones independientes pue- den
querer ambas acceder al mismo disco, fichero o impresora. El sistema operativo
debe regular estos accesos.
Procesos que se perciben indirectamente entre sí. Son procesos que no están
necesariamente al tanto de la presencia de los demás mediante sus respectivos ID
de proceso, pero que comparten accesos a algún objeto, como un buffer de E/S.
Tales procesos exhiben cooperación en la compartición del objeto común.
Procesos que se perciben directamente entre sí. Son procesos capaces de
comunicarse entre sí vía el ID del proceso y que son diseñados para trabajar
conjuntamente en cierta actividad. De nuevo, tales procesos exhiben cooperación.
Las condiciones no serán siempre tan claras como se sugiere en la Tabla. Mejor dicho,
algunos procesos pueden exhibir aspectos tanto de competición como de cooperación.
No obstante, es constructivo examinar cada uno de los tres casos de la lista precedente
y determinar sus implicaciones para el sistema operativo.
6
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
7
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
proceso debe dejar inalterado el estado de cada recurso que utilice. Ejemplos de
recursos son los dispositivos de E/S, la memoria, el tiempo de procesador y el reloj.
No hay intercambio de información entre los procesos en competencia.
No obstante, la ejecución de un proceso puede afectar al comportamiento de los
procesos en competencia. En concreto, si dos procesos desean ambos acceder al mismo
recurso único, entonces, el sistema operativo reservará el recurso para uno de ellos, y
el otro tendrá que esperar. Por tanto, el proceso al que se le deniega el ac- ceso será
ralentizado. En un caso extremo, el proceso bloqueado puede no conseguir nunca el
recurso y por tanto no terminar nunca satisfactoriamente.
En el caso de procesos en competencia, deben afrontarse tres problemas de control.
Primero está la necesidad de exclusión mutua. Supóngase que dos o más procesos
requieren acceso a un recurso único no compartible, como una impresora. Durante el
curso de la ejecución, cada proceso estará enviando mandatos al dispositivo de E/S,
recibiendo información de estado, enviando datos o recibiendo datos. Nos referiremos
a tal recurso como un recurso crítico, y a la porción del programa que lo utiliza como la
sección crítica del programa. Es importante que sólo se permita un programa al tiempo
en su sección crítica. No podemos simplemente delegar en el sistema operativo para
que entienda y aplique esta restricción porque los detalles de los requisitos pueden no
ser obvios. En el caso de una impresora, por ejemplo, queremos que cualquier proceso
individual tenga el control de la impresora mientras imprime el fichero completo. De
otro modo, las líneas de los procesos en competencia se intercalarían.
La aplicación de la exclusión mutua crea dos problemas de control adicionales. Uno es
el del interbloqueo. Por ejemplo, considere dos procesos, P1 y P2, y dos recursos, R1 y
R2. Suponga que cada proceso necesita acceder a ambos recursos para realizar parte de
su función. Entonces es posible encontrarse la siguiente situación: el sistema operativo
asigna R1 a P2, y R2 a P1. Cada proceso está esperando por uno de los dos recursos.
Ninguno liberará el recurso que ya posee hasta haber conseguido el otro recurso y
realizado la función que requiere ambos recursos. Los dos procesos están Inter
bloqueados.
Un último problema de control es la inanición. Suponga que tres procesos (P1, P2, P3)
requieren todos accesos periódicos al recurso R. Considere la situación en la cual P1 está
en posesión del recurso y P2 y P3 están ambos retenidos, esperando por ese recurso.
Cuando P1 termine su sección crítica, debería permitírsele acceso a R a P2 o P3. Asúmase
que el sistema operativo le concede acceso a P3 y que P1 solicita acceso otra vez antes
de completar su sección crítica. Si el sistema operativo le concede acceso a P1 después
de que P3 haya terminado, y posteriormente concede alternativamente acceso a P1 y a
P3, entonces a P2 puede denegársele indefinidamente el acceso al recurso, aunque no
suceda un interbloqueo.
Cooperación entre procesos vía compartición. El caso de cooperación vía compartición
cubre procesos que interaccionan con otros procesos sin tener conocimiento explícito
de ellos. Por ejemplo, múltiples procesos pueden tener acceso a variables compartidas
8
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
o a ficheros o bases de datos compartidas. Los procesos pueden usar y actualizar los
datos compartidos sin referenciar otros procesos, pero saben que otros procesos
pueden tener acceso a los mismos datos. Así, los procesos deben cooperar para asegurar
que los datos que comparten son manipulados adecuadamente. Los mecanismos de
control deben asegurar la integridad de los datos compartidos.
Cooperación entre procesos vía comunicación. En los dos primeros casos que se han
tratado, cada proceso tiene su propio entorno aislado que no incluye a los otros
procesos. Las interacciones entre procesos son indirectas. En ambos casos hay cierta
compartición. En el caso de la competencia, hay recursos compartidos sin ser
conscientes de los otros procesos. En el segundo caso, hay compartición de valores y
aunque cada proceso no es explícitamente consciente de los demás procesos, es
consciente de la necesidad de mantener integridad de datos. Cuando los procesos
cooperan vía comunicación, en cambio, los diversos procesos involucrados participan en
un esfuerzo común que los vincula a todos ellos. La comunicación proporciona una
manera de sincronizar o coordinar actividades varias.
9
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Dado que la sección crítica no puede ser interrumpida, se garantiza la exclusión mutua.
El precio de esta solución, no obstante, es alto. La eficiencia de ejecución podría
degradarse notablemente por- que se limita la capacidad del procesador de entrelazar
programas. Un segundo problema es que esta solución no funcionará sobre una
arquitectura multiprocesador. Cuando el sistema de cómputo incluye más de un
procesador, es posible (y típico) que se estén ejecutando al tiempo más de un proceso.
En este caso, deshabilitar interrupciones no garantiza exclusión mutua.
Semáforos
El principio fundamental es éste: dos o más procesos pueden cooperar por medio de
simples señales, tales que un proceso pueda ser obligado a parar en un lugar específico
hasta que haya recibido una señal específica. Cualquier requisito complejo de
coordinación puede ser satisfecho con la estructura de señales apropiada. Para la
señalización, se utilizan unas variables especiales llamadas semáforos. Para transmitir
una señal vía el semáforo s, el proceso ejecutará la primitiva semSignal(s). Para recibir
una señal vía el semáforo s, el proceso ejecutará la primitiva semWait(s); si la
correspondiente señal no se ha transmitido todavía, el proceso se suspenderá hasta que
la transmisión tenga lugar.
Para conseguir el efecto deseado, el semáforo puede ser visto como una variable que
contiene un valor entero sobre el cual sólo están definidas tres operaciones:
1. Un semáforo puede ser inicializado a un valor no negativo.
2. La operación semWait decrementa el valor del semáforo. Si el valor pasa a ser
negativo, entonces el proceso que está ejecutando semWait se bloquea. En otro
caso, el proceso continúa su ejecución.
3. La operación semSignal incrementa el valor del semáforo. Si el valor es menor o igual
que cero, entonces se desbloquea uno de los procesos bloqueados en la operación
semWait.
10
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
11
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Procesador
1
A
s=1 C D B
Cola de bloqueados Semáforo Cola de listos
Procesador
2
B
s=0 A C D
Cola de bloqueados Semáforo Cola de listos
Procesador
3
D
B s = -1 A C
Cola de bloqueados Semáforo Cola de listos
Procesador
4
D
s=0 B A C
Cola de bloqueados Semáforo Cola de listos
Procesador
5
C
s=0 D B A
Cola de bloqueados Semáforo Cola de listos
12
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Procesador
6
D
B A C s = -3
Cola de bloqueados Semáforo Cola de listos
Procesador
7
D
B A s = -2 C
Cola de bloqueados Semáforo Cola de listos
Exclusión mutua
Considere n procesos, identificados como P(i), los cuales necesitan todos acceder al mismo
recurso. Cada proceso tiene una sección crítica que accede al recurso. En cada proceso se
ejecuta un semWait(s) justo antes de entrar en su sección crítica. Si el valor de s pasa a ser
negativo, el proceso se bloquea. Si el valor es 1, entonces se decrementa a 0 y el proceso entra
en su sección crítica inmediatamente; dado que s ya no es positivo, ningún otro proceso será
capaz de entrar en su sección crítica.
El semáforo se inicializa a 1. Así, el primer proceso que ejecute un semWait será capaz de entrar
en su sección crítica inmediatamente, poniendo el valor de s a 0. Cualquier otro proceso que
intente entrar en su sección crítica la encontrará ocupada y se bloqueará, poniendo el valor de
s a -1. Cualquier número de procesos puede intentar entrar, de forma que cada intento
insatisfactorio conllevará otro decremento del valor de s. Cuando el proceso que inicialmente
entró en su sección crítica salga de ella, s se incrementa y uno de los procesos bloqueados (si
hay alguno) se extrae de la lista de procesos bloqueados asociada con el semáforo y se pone en
estado Listo. Cuando sea planificado por el sistema operativo, podrá entrar en la sección crítica.
El problema productor/consumidor
Examinemos ahora uno de los problemas más comunes afrontados en programación
concurrente: el problema productor/consumidor. El enunciado general es éste: hay uno
o más procesos generando algún tipo de datos (registros, caracteres) y poniéndolos en
un buffer. Hay un único consumidor que está extrayendo datos de dicho buffer de uno
en uno. El sistema está obligado a impedir la superposición de las operaciones sobre los
datos. Esto es, sólo un agente (productor o consumidor) puede acceder al buffer en un
momento dado. Analizaremos varias soluciones a este problema para ilustrar tanto la
potencia como las dificultades de los semáforos.
13
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
sale entra
Nota: el área sombreada indica la porción del buffer que está ocupada
Buffer finito circular para el problema productor/consumidor.
sale entra
14
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Implementación de semáforos
Como se mencionó anteriormente, es imperativo que las funciones semWait y
semSignal sean implementadas como primitivas atómicas. Una manera obvia es
implementarlas en hardware o firmware. A falta de esto, se han propuesto variedad de
esquemas. La esencia del problema es la de la exclusión mutua: sólo un proceso al
tiempo puede manipular un semáforo bien con la operación semWait o bien con
semSignal. Así, cualquiera de los esquemas software, tales como el algoritmo de
Dekker o el de Peterson (Apéndice A), pueden usarse, si bien esto supondría una
substancial sobrecarga de procesamiento. Otra alternativa es utilizar uno de los
esquemas soportados por hardware para la exclusión mutua.
Monitores
El monitor es una construcción del lenguaje de programación que proporciona una
funcionalidad equivalente a la de los semáforos, pero es más fácil de controlar.
La construcción monitor ha sido implementada en cierto número de lenguajes de
programación, incluyendo Pascal Concurrente, Pascal-Plus, Modula-2, Modula-3 y Java.
También ha sido implementada como una biblioteca de programa. Esto permite a los
programadores poner cerrojos monitor sobre cualquier objeto. En concreto, para algo
como una lista encadenada, pue- de quererse tener un único cerrojo para todas las listas,
por cada lista o por cada elemento de cada lista.
Al ser un proceso por vez, el monitor puede ofrecer un servicio de exclusión mutua
fácilmente. Así una estructura de datos puede protegerse situándola dentro de un
monitor.
El monitor proporciona variables de condición que son accesibles solo desde dentro del
monitor.
15
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
cwait (c): suspende la ejecución del proceso que llama bajo la condición "c". El
monitor está ahora disponible para otro proceso.
csignal (c): retorna la ejecución de un proceso suspendido después de un cwait,
bajo la misma condición. Si hay varios procesos elige uno de ellos.
Cola de
entrada
de
procesos
Área de espera del monitor Entrada
MONITOR
Variables condición
Procedimiento 1
Condición cn
Procedimiento k
Cola urgente
Código de inicialización
Salida
Estructura de un monitor.
16
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Pasos de Mensaje
Son 2 los requisitos básicos que deben satisfacerse cuando los procesos interactúan
entre si.
Ellos son:
La sincronización
La comunicación
Los procesos tienen que sincronizarse para cumplir la exclusión mutua, los procesos
cooperantes pueden necesitar intercambiar información.
El paso de mensajes es un método que permite que se realice ambas funciones. Este
método tiene la ventaja de que es de fácil implementación en sistemas distribuidos y
también es sistemas de multiprocesador y monoprocesador de memoria compartida.
send(destino, mensaje)
receive(origen, mensaje)
Este es el conjunto mínimo de operaciones necesarias para que los procesos puedan
dedicarse al paso de mensajes.
Sincronización
Considérese en primer lugar la primitiva send. Cuando se ejecuta una primitiva send en
un proceso, hay 2 posibilidades: o bien el proceso emisor se bloquea hasta que recibe el
mensaje o no se bloquea. Igualmente, cuando un proceso ejecuta una primitiva RECEIVE,
existen 2 opciones:
17
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Direccionamiento
Los distintos esquemas para hacer referencia a los procesos en las primitivas send y
receive se encuadran dentro de 2 categorías:
18
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Para los buzones en general el S.O. ofrece un servicio de creación de buzones. Son
considerados como propiedad del proceso creador en cuyo caso se destruyen junto con
el proceso, o como propiedad del S.O., en este caso se necesita una orden explicita para
destruir el buzón.
Formato De Mensajes
Para algunos S.O. los diseñadores han elegido mensajes cortos y tamaños fijos para
minimizar procesamiento y coste de almacenamiento. Si se van a pasar una gran
cantidad de datos, estos pueden ponerse en un archivo y el mensaje simplemente hará
referencia a este archivo. Una solución más flexible es utilizar mensajes de longitud
variable.
19
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Disciplina De Cola
La disciplina de cola más simple es FIFO, pero esta puede no ser suficiente para mensajes
más urgentes que otros. Una opción es habilitar la especificación de prioridades de los
mensajes, en función del tipo de mensajes o por designación del emisor. Otra es permitir
al receptor examinar la cola de mensajes y seleccionar el mensaje a recibir a
continuación.
Exclusión Mutua
Con el siguiente algoritmo de muestra una forma de usar el PASO DE MENSAJES para
cumplir la exclusión mutua.
2) Una vez que consiguió el mensaje, ejecuta su sección crítica y devuelve el mensaje al
buzón.
Esta técnica supone que, si hay más de un proceso ejecutando la acción RECEIVE
concurrentemente, entonces:
20
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Existe un área de datos compartida entre una serie de procesos, algunos sólo leen los
datos (lectores) y otros sólo escriben datos (escritores). El problema es satisfacer las
siguientes condiciones:
Es una solución que utiliza semáforos para respetar la exclusión mutua. Se permite el
acceso a varios lectores, pero mientras que un escritor está accediendo a los datos
compartidos, no se permite acceder a ningún escritor o lector.
El primer lector que intenta acceder debe esperar en el semáforo, Cuando haya al
menos un lector, los lectores siguientes no necesitan esperar para entrar, se les da
prioridad. El problema es que un escritor estará esperando mientras que haya al menos
un lector leyendo, que luego podría dar paso a otro lector, en este caso el lector estará
sujeto a inanición.
Esta solución garantiza que no se permitirá acceder a los datos a ningún nuevo lector una vez
que, al menos, un escritor haya declarado su deseo de escribir. Se utilizan los mismos semáforos
que en la solución anterior y se añaden otros más:
21
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Un semáforo Isem que inhibe todas las lecturas cuando al menos un escritor desea
acceder.
Una variable contesc que controla la activación de Isem.
Un semáforo y que controla la actualización de contesc.
Un semáforo y que controla la actualización de contesc.
Un semáforo z donde se encolan los lectores cuando ya hay uno en lsem.
22
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Conclusiones y recomendaciones
En un sistema multiprogramado con un único procesador, los procesos se intercalan en
el tiempo aparentando una ejecución simultánea. Aunque no se logra un procesamiento
paralelo y produce una sobrecarga en los intercambios de procesos, la ejecución
intercalada produce beneficios en la eficiencia del procesamiento y en la estructuración
de los programas.
23
FACULTAD DE INGENIERA DE
SISTEMAS Y MECANICA
ELECTRICA ESCUELA
` PROFESIONAL DE INGENIERA DE
SISTEMAS
Bibliografía
Cifuentes, A. (20015). Slideshare. Obtenido de Slideshare:
https://slideplayer.es/slide/3395440/
Vivanco Villamar, A. A. ( 2011). Evaluacion de la calidad del sistema integrado para casas de
valores sivac de la bolsa de valores de quito utilizando la norma ISO/IEC 14598. Quito.
24