chapter03 sp

Upload: alfredo-diaz

Post on 25-Feb-2018

252 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/25/2019 Chapter03 Sp

    1/59

    1

    Control y Descripcin de Procesos

    Chapter 3

  • 7/25/2019 Chapter03 Sp

    2/59

    2

    Requerimientos de un

    Sistema Operativo Intercalar la ejecucin de multiples

    procesos para maimi!ar la utili!acin

    del procesador o"reciendo a la ve! un

    tiempo de respuesta ra!ona#le

    $si%nar los recursos a los procesos

    Dar soporte a la comunicacin entre

    procesos y a la creacin de procesos por

    parte del usuario

  • 7/25/2019 Chapter03 Sp

    3/59

    3

    Conceptos

    &na computadora consiste en una coleccin derecursos de hard'are

    (as aplicaciones se desarrollan para reali!aruna tarea determinada

    )s Ine"iciente que las aplicaciones sean escritasdirectamente para un hard'are dado*

    &n Sistema Operativo provee un uso adecuadode los recursos+ se%uridad+ y una inter"a!

    consistente con las aplicaciones* &n SO provee una representacin a#stracta yuni"orme del los recursos que pueden serrequeridos y accedidos por las aplicaciones

  • 7/25/2019 Chapter03 Sp

    4/59

    ,

    Control de ejecucin de

    $plicaciones

    (os Recursos pueden estar disponi#les a

    multiples aplicaciones

    )l Procesador es compartido entre

    multiples aplicaciones

    )l procesador y los dispositivos I-O

    pueden ser usados e"icientemente

  • 7/25/2019 Chapter03 Sp

    5/59

    .

    Proceso

    &n pro%rama en ejecucin

    &na instancia de un pro%rama en ejecucin

    &na entidad que puede ser asi%nada y

    ejecutada en un procesador

    &na unidad de actividad caracteri!ada por la

    ejecucin de una secuencia de instrucciones+

    un estado actual+ y un conjunto asociado deinstrucciones de sistema

  • 7/25/2019 Chapter03 Sp

    6/59

    /

    )lementos de un Proceso

    Identi"icador

    )stado

    Prioridad

    Pro%ram counter

    Punteros a 0emoria

    &n conteto

    In"ormacin de estado de I-O

    In"ormacin de conta#ilidad

  • 7/25/2019 Chapter03 Sp

    7/59

    1

    loque de Control de Proceso

    Contiene los elementos del proceso

    Creado y administrado por el sistema

    operativo

    Permite la coordinacin y la cooperacin

    entre procesos

  • 7/25/2019 Chapter03 Sp

    8/59

    Process Control loc4

    Identifer

    Figure 3.1 Simplifed Process Con

    State

    Priority

    Program counter

    Memory pointers

    Context data

    I/ statusin!ormation

    "ccountingin!ormation

  • 7/25/2019 Chapter03 Sp

    9/59

    5

    6ra!a de un Proceso

    Secuencia de instrucciones que se

    ejecutan para dicho proceso

    )l comportamiento del procesador puede

    caracteri!arse mostrando la "orma en que

    se intercalan las tra!as de varios

    procesos

    )l despachador intercam#ia el

    procesador entre un proceso y otro

  • 7/25/2019 Chapter03 Sp

    10/59

    78

    )jemplo de ejecucin

    Main Memory"ddress

    #ispatc$er

    Process "

    Process B

    Process C

    Program Coun%

    1%%

    &%%%

    '%%%

    '%%%

    1(%%%

    Figure 3.( Snaps$ot o! )xample )xecutio

    at Instruction Cycle 13

  • 7/25/2019 Chapter03 Sp

    11/59

    77

    6ra!a de un Proceso

  • 7/25/2019 Chapter03 Sp

    12/59

    72

  • 7/25/2019 Chapter03 Sp

    13/59

    73

    Modelo de procesos con dos

    estados

    un proceso puede estar en uno de estos dos

    estados

    9 )jecucin :Runnin%;

    9

  • 7/25/2019 Chapter03 Sp

    14/59

    7,

    Cola de procesos en I>O+ :>irst=in+ >irst=Out;

    Cada #loque de la cola representa a un proceso)l comportamiento del despachador se puede descri#ir en t?rminos de un dia%rama

    de colas

    )l procesador opera se%@n un turno rotatorio :round=ro#in;

  • 7/25/2019 Chapter03 Sp

    15/59

    7.

    Creacin de un

    proceso

    en un entorno de tra#ajo por lotes+ un proceso se crea

    como respuesta a la remisin de un tra#ajo*

    )n un entorno interactivo+ se crea un proceso cuando

    un nuevo usuario intenta conectarse el sistema operativo crea un proceso para dar servicio

    a una aplicacin sin que el usuario ten%a que esperar+

    ej* imprimir

    un proceso puede ori%inar la creacin de otro proceso(process spawning)+ ej* servidor de archivos puede

    crear un nuevo proceso por cada solicitud que reci#a

  • 7/25/2019 Chapter03 Sp

    16/59

    7/

    Terminacin normal )l proceso ejecuta una llamada a un servicio del SO

    que indica que ha terminado de ejecutar

    Tiempo limite excedido )l proceso se ha ejecutado mas que el limite de totalespeci"icado* Aay varias posi#ilidades para la clase detiempo que se mide* )ntre ?stas se incluyen el tiempo totaltranscurrido :Btiempo de reloj;+ el tiempo que se ha estadoejecutando y+ en el caso de un proceso interactivo+ el tiempo

    transcurrido desde que el usuario real reali! su @ltimaentrada de datos

    No hay memoria disponible )l proceso necesita ms memoria de la que el sistema lepuede proporcionar

    Violacin de limites )l proceso trata de acceder a una posicin de memoria a laque no le est permitido acceder

    Error de proteccin )l proceso intenta utili!ar un recurso o un archivo que no leest permitido utili!ar+ o trata de utili!arlo de "ormaincorrecta+ como escri#ir en un archivo que es solo delectura*

    Error Aritmtico )l proceso intenta hacer un clculo prohi#ido+ como unadivisin por cero+ o trata de almacenar un n@mero mayor

    del que el hard'are acepta*

    6erminacin de un proceso

  • 7/25/2019 Chapter03 Sp

    17/59

    71

    6erminacin de un procesoTiempo mx de espera rebasado )l proceso ha esperado ms all del tiempo

    mimo especi"icado para que se produ!ca cierto suceso*

    Fallo de E/S Se produce un error en la entrada o la salida+ tal como laincapacidad de encontrar un archivo+ un "allo de r-'despu?s de un n@mero mimo de intentos :cuando+ porejemplo+ hay un re%in de"ectuosa en una cinta;+ o unaoperacin ile%al :como intentar leer de una impresora;

    Instrccin in!lida )l proceso intenta ejecutar una instruccin ineistente :a

    menudo como resultado de un salto a una !ona de datospara intentar ejecutar los datos;*

    Instrccin pri!ile"iada )l proceso intenta usar una instruccin reservada para elsistema operativo

    Mal so de los datos &n elemento de dato es de un tipo equivocado o no estiniciali!ado*

    Inter!encin del oper o del S# Por al%una ra!n el operador o el sistema operativo terminacon el proceso :por ejemplo+ si eiste un inter#loqueo;*

    Terminacin del padre Cuando un proceso padre "inali!a+ el sistema operativopuede diseEarse para terminar automticamente con todossus descendientes

    Solicitd del padre &n proceso padre tiene normalmente la autoridad de

    terminar con cualquiera de sus descendientes

  • 7/25/2019 Chapter03 Sp

    18/59

    7

    (imitaciones del modelo

  • 7/25/2019 Chapter03 Sp

    19/59

    75

    0odelo de cinco estados

    )jecucin :Runnin%;

    (isto :Ready;

    loqueado :loc4ed;

  • 7/25/2019 Chapter03 Sp

    20/59

    28

    0odelo de cinco estados

  • 7/25/2019 Chapter03 Sp

    21/59

    27

    Process States

  • 7/25/2019 Chapter03 Sp

    22/59

    22

    &tili!acin de dos colas

    Cuando se produce un suceso+ el so de#e recorrer toda la cola

    de loqueados #uscando aquellos procesos que esperan al suceso

  • 7/25/2019 Chapter03 Sp

    23/59

    23

    0ultiples colas de loqueados

    )-ent 1 ait

    )-ent ( ait

    )-entnait

    #ispatc$eleaseeady 0ueue

    "dmitProcessor

    imeout

    )-ent 1 0ueue)-ent 1ccurs

    )-ent (ccurs

    )-entnccurs

    )-ent ( 0ueue

    )-entn0ueue

    *2, Multiple 2locked ueues

  • 7/25/2019 Chapter03 Sp

    24/59

    2,

    Procesos suspendidos

    )l procesador es tan rpido comparadocon la I-O que todos los procesos enmemoria podrFan estar #loqueados

    )l intercam#io :S'ap; de estos procesosa disco podrFa li#erar memoria para otroproceso o para crear uno nuevo

    )l estado #loqueado se trans"orma asuspendido cuando el proceso est endisco

  • 7/25/2019 Chapter03 Sp

    25/59

    2.

    &n estado suspendido

  • 7/25/2019 Chapter03 Sp

    26/59

    2/

    &n estado suspendido

    6odos los procesos que "ueron suspendidos esta#an en el estado loqueadoSon necesarios dos estados nuevosG

    Bloqueado y suspendido: )l proceso est en disco esperando un suceso*

    Listo y suspendido: )l proceso est en disco pero est disponi#le para

    su ejecucin tan pronto como se car%ue en la memoria principal*

  • 7/25/2019 Chapter03 Sp

    27/59

    21

    6'o Suspend States

  • 7/25/2019 Chapter03 Sp

    28/59

    2

    Ra!ones para suspender un

    proceso

    Intercambio )l sistema operativo necesita li#erar su"iciente memoriaprincipal para car%ar un proceso que est listo paraejecutarse

    #tra ra$n del S# )l sistema operativo puede suspender un proceso de "ondo+

    de utilidad o cualquier proceso que se sospecha sea el

    causante de un pro#lema

    Solicitd de n sario &n usuario puede querer suspender la ejecucin de unpro%rama con "ines de depuracin o en conein con el usode un recurso

    %or tiempo &n proceso puede ejecutarse peridicamente :por ejemplo+

    un proceso de conta#ilidad o de supervisin del sistema; ypuede ser suspendido mientras espera el si%uiente intervalo

    de tiempo

    Solicitd del proceso padre &n proceso padre puede querer suspender a ejecucin de unproceso padre descendiente para eaminar o modi"icar elproceso suspendido o para coordinar la actividad de variosdescendientes

  • 7/25/2019 Chapter03 Sp

    29/59

    25

    Procesos y Recursos

    P1 est ejecutndoseH una parte del proceso est en memoria principalH tiene el control de dos dispositivos de )-S

    P2 tam#i?n est en memoria principal+ pero est #loqueado esperando al dispositivo de )-S que est asi%nado a P1

    )l procesoPn ha sido descar%ado a disco y por tanto+ est suspendido

  • 7/25/2019 Chapter03 Sp

    30/59

    38

    )structuras de Control del SO

    In"ormacin so#re el estado actual de

    cada proceso y de cada recurso

    )l SO construye y mantiene ta#las de

    in"ormacin so#re cada entidad que est?

    administrando

    6a#lasG de memoria+ de )-S+ de archivos

    y de procesos

  • 7/25/2019 Chapter03 Sp

    31/59

    37

    6a#las de 0emoria

    (a asi%nacin de memoria principal a losprocesos

    (a asi%nacin de memoria secundaria a losprocesos

    $tri#utos de proteccin de se%mentos dememoria principal o virtual tales como qu?

    procesos pueden acceder a ciertas re%iones

    compartidas de memoria In"ormacin necesaria para %estionar lamemoria virtual

  • 7/25/2019 Chapter03 Sp

    32/59

    32

    6a#las de )-S

    )-S puede estar disponi#le o estar

    asi%nado a un proceso

    )stado de una operacin de )-S en curso

    (a posicin de memoria principal que se

    est utili!ando como ori%en o destino de

    una trans"erencia de )-S

  • 7/25/2019 Chapter03 Sp

    33/59

    33

    6a#las de $rchivos

    )istencia de los archivos

    Su posicin en la memoria secundaria

    Su estado actual

    Otros atri#utos

    &tili!ada por un sistema de %estin de

    archivos

  • 7/25/2019 Chapter03 Sp

    34/59

    3,

    6a#la de Procesos

    Dnde est u#icado el proceso

    $tri#utos del proceso

    9Pro%rama

    9Datos

    9Stac4

  • 7/25/2019 Chapter03 Sp

    35/59

    3.

    Im%en del Proceso

    Elementos T&picos de na Ima"en de %roceso

    'atos de (sario

    (a parte modi"ica#le del espacio de usuario* Puede %uardar

    datos del pro%rama+ una !ona para una pila del usuario y

    pro%ramas que pueden modi"icarse*

    %ro"rama de (sario

    )l pro%rama a ejecutar*

    %ila del Sistema

    Cada proceso tiene una o ms pilas asociadas a ?l* &na pila

    se utili!a para almacenar los parmetros y las direcciones de

    retorno*

    )lo*e de +ontrol de %roceso

    In"ormacin necesaria para que el sistema operativo controle

    al proceso

  • 7/25/2019 Chapter03 Sp

    36/59

    3/

    Memory

    #e-ices

    Files

    Processes

    Process 1

    Memory a2les

    ProcessImage

    Process1

    ProcessImage

    Processn

    I/ a2les

    File a2les

    Figure 3.11 4eneral Structure o! perating Syste

    Primary Process a2le

    Process (

    Process 3

    Processn

  • 7/25/2019 Chapter03 Sp

    37/59

    31

    loque de Control de Procesos

    Identi"icacin del Proceso

    9Identi"icadores

    (os identi"icadores num?ricos que se pueden

    %uardar en el #loque de control de procesoincluyenG

    9 Identi"icador de este proceso

    9 Identi"icador del proceso que cre a este proceso :el

    proceso padre;

    9 Identi"icador del usuario

  • 7/25/2019 Chapter03 Sp

    38/59

    3

    loque de Control de Procesos

    In"ormacin de )stado del Procesador

    9Re%istros isi#les para el &suario

    &n re%istro visi#le para el usuario es aqu?l al

    que puede hacerse re"erencia por medio dellen%uaje mquina que ejecuta el procesador*

  • 7/25/2019 Chapter03 Sp

    39/59

    35

    loque de Control de Procesos

    In"ormacin de )stado del Procesador

    9Re%istros de Control y de )stadoAay varios re%istros del procesador que se emplean para

    controlar su "uncionamiento* )ntre estos se incluyenG

    Program counter:Contiene la direccin de la prima

    instruccin a ser tratada

    Cdigos de condicin:0uestran el resultado de la

    operacin aritm?tica o l%ica ms reciente :si%no+ cero+

    acarreo+ i%ualdad+ des#ordamiento;*

    Informacin de estado:incluye los indicadores de

    ha#ilitacin o inha#ilitacin de interrupciones y el modo

    de ejecucin

  • 7/25/2019 Chapter03 Sp

    40/59

    ,8

    loque de Control de Procesos

    In"ormacin de )stado del Procesador

    9Stac4 Pointers

    Cada proceso tiene una o ms pilas (I>O del

    sistema asociadas* (as pilas se utili!an paraalmacenar los parmetros y las direcciones de

    retorno de los procedimientos y de las llamadas

    al sistema* )l puntero de pila siempre apunta a

    la cima de la pila*

  • 7/25/2019 Chapter03 Sp

    41/59

    ,7

    loque de Control de Procesos

    In"ormacin de Control del Proceso9 In"ormacin de Plani"icacin y de )stado)sta es la in"ormacin que se necesita por el sistema operativo parallevar a ca#o sus "unciones de plani"icacin* (os elementos tFpicosde esta in"ormacin son los si%uientesG

    Estado del proceso:De"ine la disposicin del proceso para serplani"icado para ejecutar :en ejecucin+ listo+ esperando+ detenido;*

    Prioridad:Se puede usar uno o ms campos para descri#ir laprioridad de plani"icacin de los procesos* )n al%unos sistemas senecesitan varios valores :por omisin+ actual+ la ms alta permitida;*

    Informacin de planificacin:)sta depender del al%oritmo deplani"icacin utili!ado* Como ejemplos se tienen la cantidad de

    tiempo que el proceso ha estado esperando y la cantidad de tiempoque el proceso ejecut la @ltima ve!*

    Suceso:(a identidad del suceso que el proceso est esperandoantes de poder reanudarse*

  • 7/25/2019 Chapter03 Sp

    42/59

    ,2

    loque de Control de Procesos

    In"ormacin de Control del Proceso

    9 )structuracin de Datos

    &n proceso puede estar enla!ado con otros

    procesos en una cola o al%una otra estructura*Por ejemplo todos los procesos que estn en

    estado de espera de un nivel determinado de

    prioridad pueden estar enla!ados en una cola*

    &n proceso puede mostrar una relacin padre=

    hijo con otro proceso* )l CP puede contener

    punteros a otros procesos para dar soporte a

    estas estructuras*

  • 7/25/2019 Chapter03 Sp

    43/59

    ,3

    loque de Control de Procesos

    In"ormacin de Control del Proceso

    9 Comunicacin entre Procesos

    Puede ha#er varios indicadores+ seEales y mensajes

    asociados con la comunicacin entre dos procesos

    independientes* &na parte de esta in"ormacin o toda ellase puede %uardar en el #loque de control de proceso*

    9 Privile%ios de los procesos

    $ los procesos se es otor%an privile%ios en t?rminos de la

    memoria a la que pueden acceder y el tipo de

    instrucciones que pueden ejecutar* $dems+ tam#i?n se

    pueden aplicar privile%ios al uso de los servicios y

    utilidades del sistema*

  • 7/25/2019 Chapter03 Sp

    44/59

    ,,

    loque de Control de Procesos

    In"ormacin de Control del Proceso

    9 Jestin de 0emoria

    )sta seccin puede incluir punteros a las ta#las de

    p%inas y-o se%mentos que descri#en la memoria virtual

    asi%nada al proceso*

    9 Propiedad de los Recursos y &tili!acin

    Se pueden indicar los recursos controlados por el

    proceso+ tales como los archivos a#iertos* 6am#i?n se

    puede incluir un histrico de la utili!acin del procesador

    o de otros recursosH esta in"ormacin puede ser necesaria

    para el plani"icador

  • 7/25/2019 Chapter03 Sp

    45/59

    ,.

    Control de Procesos

    Modos de e,eccin

    0odo de usuario

    9modo menos privile%iado

    9los pro%ramas de usuario ejecutan

    normalmente en ese modo

    0odo de sistema+ control+ o 4ernel

    9modo ms privile%iado

    9Kernel del sistema operativo

  • 7/25/2019 Chapter03 Sp

    46/59

    ,/

    Creacin de Procesos

    $si%na un @nico identi"icador al nuevoproceso

    $si%nar espacio para el proceso :ima%en;

    Iniciali!ar el #loque de control del proceso

    )sta#lecer los enlaces apropiados9 Por ejemplo+ si el sistema operativo mantiene cada

    cola de plani"icacin como una lista enla!ada+entonces el proceso nuevo se de#e poner en la colade (istos o de (istos y suspendidos

    Crear o ampliar otras estructuras de datos9 )jG el sistema operativo puede mantener un archivo

    de conta#ilidad

  • 7/25/2019 Chapter03 Sp

    47/59

    ,1

    Cam#io de Proceso

    Cundo cam#iar de procesoG

    Interrpcin de relo,-Si el SO determina que el proceso que est en ejecucin+ se haestado ejecutando durante la "raccin mima de tiempo permitida+el proceso de#e pasar al estado (isto y se de#e epedir otro proceso

    Interrpcin de E/S-Si la accin constituye un suceso que estn esperando uno o msprocesos+ entonces el SO traslada todos los procesos #loqueadoscorrespondientes al estado (isto o (isto suspendido

    Fallo de memoria-una re"erencia a una direccin de memoria virtual no est enmemoria principal* )l SO puede llevar a ca#o un cam#io deconteto para reanudar la ejecucin de otro procesoH el proceso quecometi el "allo de memoria se pasa a estado loqueado*

  • 7/25/2019 Chapter03 Sp

    48/59

    ,

    Cam#io de Proceso

    6rap

    9)rror o ecepcin

    9Si es "atal puede causar que el proceso pase

    al estado terminado

    (lamada al sistema

    9)jG a#rir un archivo* )l proceso de usuario

    pasa al estado suspendido

    C #i d ) t d d l

  • 7/25/2019 Chapter03 Sp

    49/59

    ,5

    Cam#io de )stado de los

    Procesos

    Salvar el conteto del procesador+ incluyendo

    el contador de pro%rama y otros re%istros

    $ctuali!ar el #loque de control del proceso

    que esta#a en estado de )jecucin 0over el #loque de control del proceso a la

    cola apropiada (istos+ loqueados (istos y

    suspendidos

    Seleccionar otro proceso para ejecucin

    C #i d ) t d d l

  • 7/25/2019 Chapter03 Sp

    50/59

    .8

    Cam#io de )stado de los

    Procesos

    $ctuali!ar el #loque de control del

    proceso seleccionado

    $ctuali!ar las estructuras de datos de

    %estin de memoria

    Restaurar el conteto del procesador a

    aquel que eistFa en el momento en el

    que el proceso seleccionado dej por@ltima ve! el estado de )jecucin

  • 7/25/2019 Chapter03 Sp

    51/59

    .7

    Fnciones )sicas del N.cleo

    de n Sistema #perati!oestin de %rocesos

    Creacin y terminacin de los procesos

    Plani"icacin y epedicin de los procesos

    Cam#io de procesos

    Sincroni!acin de procesos y soporte para la comunicacin entre procesos

    Jestin de los #loques de control de procesos

    estin de memoria

    $si%nacin de espacios de direcciones a los procesos

    Intercam#io

    Jestin de p%inas y se%mentos

    estin de E/S

    Jestin de #u""ers

    $si%nacin de canales de )-S y dispositivos a los procesosFnciones de Soporte

    6ratamiento de interrupciones

    Conta#ilidad

    Supervisin

    E,ec cin del sistema

  • 7/25/2019 Chapter03 Sp

    52/59

    .2

    E,eccin del sistema

    operati!o Ncleo fuera de todo proceso

    9 )jecucin del n@cleo "uera de cualquier proceso

    9 )l cdi%o del sistema operativo se ejecuta comouna entidad separada que opera en modo

    privile%iado Ejecucin dentro de los procesos de usuario

    9 SO en el conteto de un proceso de usuario:coleccin de rutinas que el usuario llama para

    llevar a ca#o varias "unciones y que son ejecutadasdentro del entorno del proceso de usuario;

    9 )l proceso se ejecuta en modo privile%iado cuandoejecuta cdi%o del SO

  • 7/25/2019 Chapter03 Sp

    53/59

    .3

    P1 P( Pn

    5ernel

    *a, Separate kernel

    P1 P( Pn S1 Sk

    *c, S !unctions execute as separate pro

    Figure 3.1& elations$ip Bet6ee

    System and 7ser Processe

    SFunc8tions

    SFunc8tions

    SFunc8tions

    P1 P( Pn

    Process S6itc$ing Functions

    Process S6itc$ing Functions

    *2, S !unctions execute 6it$in user proc

  • 7/25/2019 Chapter03 Sp

    54/59

    .,

    E,eccin del sistema

  • 7/25/2019 Chapter03 Sp

    55/59

    ..

    E,eccin del sistema

    operati!o

    Sistema operativo basado en procesos

    9implementacin del sistema operativo como

    una coleccin de procesos del sistema

    9@til en un entorno de multiprocesador o devarias computadoras

    &

  • 7/25/2019 Chapter03 Sp

    56/59

    ./

    &

  • 7/25/2019 Chapter03 Sp

    57/59

    .1

    &

  • 7/25/2019 Chapter03 Sp

    58/59

    .

    &

  • 7/25/2019 Chapter03 Sp

    59/59