Escolar Documentos
Profissional Documentos
Cultura Documentos
SISTEMAS OPERATIVOS
Cód. 301402_21
Presentado por:
Cód. 80194695
Grupo:
301402_21
Presentado a:
Villavicencio, Meta
Marzo de 2017
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
SISTEMAS OPERATIVOS
Cód. 301402_21
ACTIVIDAD INDIVIDUAL
1. Haga una lista con lo que usted considera son proceso que maneja un sistema operativo.
El cuadro debe tener dos columnas el proceso y la descripción del proceso.
Estados de un proceso
Nuevo: El proceso se acaba de crear, pero aún no ha sido admitido en el grupo de procesos
ejecutables por el sistema operativo.
Habitualmente en un sistema operativo multitarea como Windows, nada más que un proceso
se crea, éste resulta admitido, pasando al estado listo. Sin embargo, esto no tiene por qué ser
siempre así. Por ejemplo, en una situación de sobrecarga temporal del sistema, el SO puede
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
SISTEMAS OPERATIVOS
Cód. 301402_21
decidir retardar la admisión de los procesos nuevos. Así se alivia la carga del sistema, ya que
hasta que un proceso no es admitido, éste no compite por los recursos del sistema.
Listo: El proceso está esperando ser asignado al procesador para su ejecución. Una CPU
clásica (con un solo núcleo) solo se puede dedicar en cada momento a un proceso. Los procesos
que están preparados para ejecutarse permanecen en estado listo hasta que se les concede la
CPU. Entonces pasan al estado “En ejecución”.
En espera: El proceso está esperando a que ocurra algún suceso, como por ejemplo la
terminación de una operación de E/S.
Terminado: El proceso ha sido sacado del grupo de procesos ejecutables por el sistema
operativo. Después de que un proceso es marcado como terminado se liberarán los recursos
utilizados por ese proceso, por ejemplo, la memoria.
Clasificación de procesos
Los procesos que implementa un sistema operativo se clasifican según el grado en que comparten
la memoria.
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
SISTEMAS OPERATIVOS
Cód. 301402_21
El primer tipo de procesos se dice pesado porque el costo de implementación en tiempo de CPU y
memoria es mucho más elevado que el de los procesos livianos. Además, la implementación de
procesos pesados requiere de una MMU o Unidad de Manejo de la Memoria. Esta componente de
hardware del procesador se encarga de la traducción de direcciones virtuales a reales. La
implementación en software de esta traducción sería demasiado costosa en tiempo de CPU, puesto
que para garantizar una verdadera protección habría que recurrir a un intérprete del lenguaje de
máquina.
Unix estándar sólo ofrece procesos pesados, pero como veremos existen extensiones que
implementan procesos livianos para Unix. Un ejemplo de sistema de procesos livianos es el que
implementaba el sistema operativo de los antiguos computadores Commodore Amiga (1985), que
no tenía la MMU necesaria para implementar procesos pesados.
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
SISTEMAS OPERATIVOS
Cód. 301402_21
La ventaja de los procesos pesados es que garantizan protección. Si un proceso falla, los demás
procesos continúan sin problemas. En cambio, si un thread falla, esto causa la falla de todos los
demás threads que comparten el mismo procesador.
La ventaja de los threads es que pueden comunicarse eficientemente a través de la memoria que
comparten. Si se necesita que un thread comunique información a otro thread basta que le envíe
un puntero a esa información. En cambio, los procesos pesados necesitan enviar toda la
información a otros procesos pesados usando pipes, sockets, mensajes o archivos en disco, lo que
resulta ser más costoso que enviar tan solo un puntero.
3. Con sus propias palabras defina como se realiza la comunicación y sincronización entre
procesos en un sistema operativo.
a) síncrona: los dos procesos han de ejecutar servicios de forma simultánea. El emisor ha de
ejecutar el servicio enviar mientras el receptor ejecuta recibir.
b) asíncrona: el emisor hace el envío y prosigue su ejecución. El SO ofrece un
almacenamiento intermedio para guardar la información enviada, hasta que el receptor la
solicite.
4. Como cree usted que el sistema operativo planifica la ejecución de los procesos, que
herramientas utiliza y como lo realiza.
Cada proceso se representa en el sistema operativo mediante una estructura de datos llamada
bloque de control de proceso (PCB de Process Control Block), también llamado bloque de control
de tarea o estructura de tarea. Este bloque contiene muchos elementos de información asociados a
un proceso específico:
Estado del proceso: el estado puede ser nuevo, en ejecución, bloqueado, listo, etc.
Contador de programa: el contador indica la dirección de la siguiente instrucción que se
ejecutará para este proceso.
Registros de CPU: el número y el tipo de los registros varían dependiendo de la
arquitectura del computador. Los registros incluyen acumuladores, registro índice,
punteros de pila y registros de propósito general, así como cualquier información de
códigos de condición que haya. Junto con el contador de programa, esta información de
estado se debe guardar cuando ocurre una interrupción, para que el proceso pueda continuar
correctamente después.
Información de planificación de CPU: esta información incluye una prioridad del
proceso, punteros a colas de planificación y cualquier otro parámetro de planificación que
haya.
Información de gestión de memoria: esta información puede incluir datos tales como el
valor de los registros de base y de límite y las tablas de páginas o las tablas de segmentos,
dependiendo del sistema de memoria empleado por el sistema operativo.
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
SISTEMAS OPERATIVOS
Cód. 301402_21
El PCB sirve como depósito de cualquier información que pueda variar de un proceso a otro. En
los sistemas operativos más recientes, que utilizan hilos, se le suele llamar bloque de control de
hilo (TCB o Thread Control Block). Mantienen una información similar, pero suelen agregar un
puntero que referencie al PCB que lo contiene.
Conclusión personal: En mi opinión el algoritmo de Round Robín es el más fiable ya que cada
proceso se le asigna un tiempo de ejecución si se agota elige otro proceso.
Algoritmos de planificación
Los algoritmos de planificación son los que definen que política se va a seguir para que un
proceso pase al estado de ejecución.
Planificación Round-Robín
En este tipo de planificación cada proceso tiene asignado un quantum de tiempo para
ejecutarse y en el caso de que no pueda terminar la ejecución en su quantum el proceso
pasa de nuevo a la cola de procesos para ser ejecutado por otro quantum luego de recorrer
la cola para asegurarse que todos los procesos reciban ese quantum de procesamiento.
Planificación por prioridad
En la planificación round-robín todos los procesos son tratados con la misma prioridad.
Para el caso de este tipo de planificación a cada proceso se le asigna una prioridad y los
mismos son ejecutados.
Colas múltiples
Las colas múltiples están basadas en una pila que sirve como índice de una lista de procesos
que se tienen que ejecutar.
Primero el trabajo más corto
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
SISTEMAS OPERATIVOS
Cód. 301402_21
La memoria está estructurada en forma de una colección de celdas, en cada una de las cuales cabe
una unidad específica de información: octetos o palabras. El contenido de cada una de las
posiciones de memoria podrá ser bien dato o instrucción. Cada celda tiene asignada una posición
relativa con respecto a un origen, cuyo valor numérico constituye la dirección de la misma y que
no se encuentra almacenado en ella.
Con la misión de garantizar estabilidad y seguridad en las operaciones, la dirección y datos deben
mantenerse en registros durante ese tiempo. En la memoria nos encontramos con:
Registro de Información de memoria en donde se almacena el dato durante las fases de lectura o
escritura en la celda señalada por el registro anterior.
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
SISTEMAS OPERATIVOS
Cód. 301402_21
7. Defina con sus propias palabras como cree usted que el sistema operativo administra la
memoria.
En definición y conceptos claros la administración de la memoria tiene como tarea que consiste en
llevar un registro de las partes de memoria que se estén utilizando y las que no, con el fin de asignar
espacio en memoria a los procesos cuando éstos la necesiten y liberándola cuando terminen, así
como administrar el intercambio entre la memoria principal y el disco.
los sistemas de administración de memoria se pueden clasificar en dos tipos: los que desplazan los
procesos de la memoria principal al disco y viceversa durante la ejecución y los que no.
el propósito principal de una computadora es el de ejecutar programas, estos programas, junto con
la información que accedan deben de estar en la memoria principal (al menos parcialmente)
durante la ejecución.
Como administrador de la memoria, un sistema operativo multitarea debería cumplir con las
siguientes funciones, según Listery R. D. Eager (1993):
Reubicación. En sistemas con memoria virtual, los programas cargados en memoria deben
ser capaces de residir en diferentes partes de la misma en distintos momentos de su
ejecución. Una vez que se ha descargado (swap) un programa al disco, no es deseable que
deba volver a cargarse en la misma región de la memoria principal, sino que debería poder
reubicarse en otra, y el administrador de memoria del sistema operativo debería ser capaz
de manejar todas las referencias a memoria que hace el programa, de manera que apunten
a la dirección correcta.
Protección. Los procesos no deben ser capaces de acceder a direcciones de memoria de
otros procesos, a menos que esté explícitamente permitido, y con ello nos referimos tanto
a interferencias accidentales como intencionales. En última instancia, es el procesador
(hardware), y no el sistema operativo (software), el que debe satisfacer las exigencias de
protección de memoria. El sistema operativo no puede anticiparse a todas las referencias a
la memoria que hará un programa.
Compartimiento. No obstante, lo anterior, muchas veces es deseable que los procesos
puedan compartir información y. por lo tanto, acceder a un área de memoria ajena. La
memoria compartida es una técnica muy utilizada en la comunicación entre procesos.
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
SISTEMAS OPERATIVOS
Cód. 301402_21
FAT 32 (File Allocation table) Windows y en casi todas las memorias USB
CONCLUSIONES
computacional describiendo su proceso dentro del sistema y su vez definir los estados del
sistema.
Planteamos soluciones a la vida cotidiana ya que como futuros ingenieros damos soportes
a las problemáticas que se nos presente en la vida diaria y así dar soporte a un
planteamiento.
UNIVERSIDAD NACIONAL ABIERTA Y A DISTANCIA
SISTEMAS OPERATIVOS
Cód. 301402_21
REFERENCIAS BIBLIOGRAFICAS