Capitulo4.ppt
Upcoming SlideShare
Loading in...5
×
 
  • 613 views

Politicas de planificacion de los sistemas operativos

Politicas de planificacion de los sistemas operativos

Statistics

Views

Total Views
613
Views on SlideShare
613
Embed Views
0

Actions

Likes
0
Downloads
5
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Capitulo4.ppt Capitulo4.ppt Presentation Transcript

  • 4.- PROCESOS 4.1.- Concepto de proceso 4.1.1.- Servicios de procesos 4.1.2.- Jerarquía de proceso 4.2.- Entorno del proceso 4.3.- Multitarea 4.3.1.- Base de la multitarea 4.3.2.- Planificador Vs. Activador 4.3.3.- Ventajas de la multitarea 4.3.4.- Grado de multiprogramación y necesidades de memoria principal CAPITULO 4
    • Deitel:
    • Programa en ejecución
    • Actividad asíncrona
    • “ Espíritu animado” de un procedimiento
    • La entidad a la que se asignan los procesadores.
    4.1.-¿ Qué es un proceso ? Tanenbaum : Un programa en ejecución E. Alcalde/J.Morera J.A. Perez-Campanero Un proceso es un programa en ejecución junto con su entorno asociado (registros, variables, etc.
  • 4.1.- Concepto de proceso
    • Programa en ejecución
    • UNIDAD DE PROCESAMIENTO GESTIONADA POR EL SISTEMA OPERATIVO.
    PROGRAMA PROCESO Conjunto Surge programa De pone en Instrucciones Ejecución EJERCICIO
  • MODELO Consideremos un científico de la computación con una mente culinaria, que está cocinando el pastel de cumpleaños de su hija. El tiene una receta para elaborar un pastel de cumpleaños y una cocina bien abastecida con los ingredientes necesarios: harina, huevo, azúcar, extracto de vainilla, etc. Realice una analogía con los siguientes elementos: Programa: …………………….. CPU: …………………………. Datos de entrada: ……………. Proceso: ………………………
  • RESULTADOS DE LA ANALOGÍA En esta analogía, la receta es el programa (es decir, un algoritmo expresado en cierta notación adecuada), el científico de computación es el procesador (CPU) y los ingredientes del pastel son los datos de entrada . El proceso es la actividad que consiste en leer la receta, obtener los ingredientes y hornear el pastel.
  • DIFERENCIA ENTRE PROGRAMA Y PROCESO Los recursos que utilizan ambos conceptos, podemos decir, que el programa utiliza únicamente memoria secundaria, en cambio el proceso utiliza memoria principal y procesador.
    • Varios procesos pueden estar ejecutando el mismo programa, por ejemplo, si dos o más usuarios están usando simultáneamente el mismo editor de texto. El programa es el mismo, pero cada usuario tiene un proceso distinto (y con distintos datos).
    • Conceptualmente cada proceso tiene su propia CPU virtual. En la práctica, hay una sola CPU real, que cambia periódicamente la ejecución de un proceso a otro, pero para entender el sistema es más fácil modelarlo como una colección de procesos secuenciales que ejecutan concurrentemente ( pseudoparalelismo ).
    El programa corresponde a una entidad pasiva, en cambio el proceso corresponde a una entidad activa.
  •  
  • 4.1.1.- SERVICIOS DE PROCESOS
    • Creación
    • Ejecución
    • Muerte
    • CREAR UN PROCESO .- Es creado por el S.O. cuando lo solicita otro proceso, que se convierte en el padre del nuevo. Existen 2 modos de creación:
      • Creación a partir de un proceso Padre . El proceso Hijo es una copia exacta del proceso Padre.
      • Creación a partir de un archivo ejecutable. Se define en el API Win32 de Windows NT.
    • EJECUTAR UN PROCESO.- Se ejecutan de 2 formas: Batch e Interactiva
      • BATCH .- Llamado Background, no está asociado a ningún terminal. Deberá tomar sus datos de entrada de un archivo y deberá depositar sus resultados en otro archivo. Ej: proceso de nóminas.
      • INTERACTIVA .- Proceso asociado a una terminal, por el que recibe la información del usuario y por el que contesta con los resultados. Ej. Proceso de edición.
    … SERVICIOS DE PROCESOS
    • TERMINAR EJECUCION UN PROCESO .- P uede finalizar por varias causas:
      • Ha terminado de ejecutar el programa.
      • Se produce una condición de error en su ejecución. Ej: Divisíón por cero o violación de memoria.
      • Otro proceso o el usuario deciden que ha de terminar.
    • CAMBIAR EL PROGRAMA DE UN PROCESO.- Cambia el programa que se está ejecutando un proceso por otro programa almacenado en disco.
    … SERVICIOS DE PROCESOS
  • 4.1.2.- Jerarquía de procesos
    • Grupos de procesos dependientes de cada shell
    • Familia de procesos
        • Proceso hijo
        • Proceso padre
        • Proceso hermano
        • Proceso abuelo
    • Vida de un proceso
        • Crea
        • Ejecuta
        • Muere o termina
    • Ejecución del proceso
        • Batch
        • Interactivo
    • Grupo de procesos
    • En los sistemas de multiprogramación es importante mantener un registro a que usuario pertenece cada proceso.
    • uid (identificación del usuario)
    • gid (identificación del grupo)
  • 4.2.- ENTORNO DEL PROCESO INFORMACION REGISTROS DATOS EN PILA (STACK) DATOS EN VARIABLES INSTRUCCIONES Programa en ejecución ENTORNO
    • Consiste conjunto variables que se le pasan al proceso en el momento de su creación.
    4.2.- ENTORNO DEL PROCESO Nombre-Valor Nombre variable Valor Ejemplo Unix: PATH=/usr/bin:/home/pepe/bin HOME=/home/pepe PWD=/home/pepe/libros/primero
    • Actividades:
    • El S.O. Decide detener la ejecución de un proceso y comenzar la ejecución de otro. Ej: 1 proceso ha utilizado una porción de tiempo de CPU mayor de la permitida.
    • Proceso que se detiene debe volver a inicializarse en el mismo estado en que se encontraba.
    • Las llamadas al sistema de control de procesos son las que se ocupan de la creación y fin de los procesos. Ej: Un proceso puede crear uno o más procesos (Hijos) y estos procesos pueden crear a su vez procesos hijos.
    ACTIVIDADES DEL S.O.
  • Usuario
    • Usuario: Persona autorizada a utilizar un sistema
      • Se identifica en la autenticación mediante:
        • Código de cuenta
        • Clave ( password )
      • Internamente el SO le asigna el “uid” ( user identification )
    • Super-usuario
      • Tiene todos los derechos
      • Administra el sistema
    • Grupo de usuarios
      • Los usuarios se organizan en grupos
        • Alumnos
        • Profesores
      • Todo usuario ha de pertenecer a un grupo
  • 4.3.- MULTITAREA
    • S.O. Puede ser:
      • Monotarea ó Monoproceso
      • Multitarea ó Multiproceso
      • Monousuario
      • Multiusuario (tiempo compartido)
  • PARALELISMO. Es la ejecución de diversas actividades simultáneamente en varios procesadores. Si sólo existe un procesador gestionando multiprogramación, se puede decir que existe PSEUDO-PARALELISMO. CONCURRENCIA. Es la existencia de varias actividades ejecutándose simultáneamente, y necesitan sincronizarse para actuar conjuntamente. Se trata de un concepto lógico, ya que sólo hace referencia a las actividades, sin importar el número de procesadores presentes.
  • 4.3.1.- Base de la multitarea
    • Se basa en tres características:
    • Paralelismo real entre E/S y UCP (DMA)
    • Alternancia en los procesos de fases de E/S y de procesamiento
    • La memoria almacena varios procesos activos.
    Alternancia de un Proceso con E/S
  • Ejemplo de ejecución en un sistema multitarea Ejecución de un Sistema Multitarea
    • Proceso Nulo.- Bucle infinito que no realiza níguna operación útil. El objetivo de este proceso es Entretener al procesador cuando no hay ninguna otra tarea.
    • Planificador.- (scheduler) forma parte del S.O. Entra en ejecución cada vez que se activa el S.O. y su misión es seleccinar el proceso que se ha de ejecutar a continuación.
    4.3.2.- PLANIFICADOR Y ACTIVADOR
    • Activador.- (Dispatcher) forma parte del S.O. Su función es poner en ejecución el proceso seleccionado por el planificador.
  • 4.3.3.- Ventajas de la multitarea
    • La multiprogramación presenta varias ventajas:
    • Facilita la programación, dividiendo los programas en procesos (modularidad)
    • Permite el servicio interactivo simultáneo de varios usuarios de forma eficiente
    • Aprovecha los tiempos que los procesos pasan esperando a que se completen sus operaciones de E/S
    • Aumenta el uso de la CPU
    S.O. MULTITAREA
  • 4.3.4.- Grado de multiprogramación
    • Grado de multiprogramación: nº de procesos activos
    • Necesidades de memoria principal: Sistema sin memoria virtual
  • Necesidades de memoria principal
    • Necesidades de memoria principal: Sistema con memoria virtual
  • Rendimiento del procesador y grado de multiprogramación
    • Necesidades de memoria principal: Sistema con memoria virtual