Your SlideShare is downloading. ×
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Conceptos fundamentales 2ª Diapositiva
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Conceptos fundamentales 2ª Diapositiva

606

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
606
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
12
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Sistemas Operativos I Procesos
  • 2. Proceso
    • Proceso: Programa en ejecución.
    • Las computadoras modernas pueden hacer varias cosas al mismo tiempo.
    • La CPU ejecuta un solo programa a la vez, en el curso de un segundo puede ejecutar varios programas, creando la ilusión de paralelismo.
    • El modelo esta organizado en una serie de procesos secuenciales.
    • La constante conmutación de la CPU es lo que llamamos multiprogramación.
  • 3. Proceso (a) Multiprogramación de cuatro programas. (b) Modelo conceptual de cuatro procesos secuenciales independientes. (c) Sólo un programa está activo en cada momento.
  • 4. Proceso
    • Creación de procesos:
      • La inicialización del sistema
      • La ejecución por parte de un proceso (en ejecución) de una llamada al sistema de creación de un nuevo proceso.
      • La petición por parte del usuario de la creación de un nuevo proceso.
      • El inicio de un trabajo en batch.
    • Terminación de procesos:
      • El proceso completa su trabajo y termina (voluntariamente).
      • El proceso detecta un error y termina (voluntariamente).
      • El sistema detecta un error fatal del proceso y fuerza su terminación.
      • Otro proceso fuerza la terminación del proceso (por ejemplo en UNIX mediante la llamada al sistema kill).
  • 5. Estados de los Procesos
    • Los bloques de control de los procesos se almacenan en colas, cada una de las cuales representa un estado particular de los procesos, existiendo en cada bloque, entre otras informaciones.
    • Los estados de los procesos son internos del sistema operativo y transparentes al usuario.
    • Los estados de los procesos se pueden dividir en dos tipos: activos e inactivos.
  • 6. Estados activos
    • Son aquellos que compiten con el procesador o están en condiciones de hacerlo. Se dividen en:
    • En ejecución (utilizando realmente la CPU en ese instante).
    • Preparado (ejecutable; detenido temporalmente para permitir que otro proceso se ejecute).
    • Bloqueado (incapaz de ejecutarse hasta que tenga lugar algún suceso externo).
  • 7. Estados inactivos:
    • Son aquellos que no pueden competir por el procesador, pero que pueden volver a hacerlo por medio de ciertas operaciones.
    • En estos estados se mantiene la información del proceso hasta que vuelva a ser activado. Se trata de procesos que no han terminado su trabajo que lo han impedido y que pueden volver a activarse desde el punto en que se quedaron sin que tengan que volver a ejecutarse desde el principio. Son de dos tipos:
    • Suspendido bloqueado. Es el proceso que fue suspendido en espera de un evento, sin que hayan desaparecido las causas de su bloqueo.
    • Suspendido programado. Es el proceso que han sido suspendido, pero no tiene causa para estar bloqueado.
  • 8. Implementación de Procesos
    • Tabla de procesos (bloque de control de procesos).
    • Es una estructura de datos que contiene la información correspondiente al proceso.
      • Estado actual del proceso.
      • Hora de inicio.
      • Reparto de memoria.
      • Situación de los archivos abiertos.
      • Todos los datos necesarios al momento de conmutar del estado ejecución a los otros a fin de poder reanudar su ejecución.
  • 9. Interrupciones
    • Recurso que utiliza un dispositivo cuando necesita detener el proceso que está realizando la CPU.
    • Pueden ser producidas por el hardware( al mover el ratón, ingresar una tecla) o por el software( cuando un programa necesita leer del disco duro).
    • Cuando ocurre una interrupción el control es transferido al Sistema Operativo, este guarda los datos correspondientes al proceso en ejecución y pasa a ejecutar el proceso correspondiente
    • Todas estas operaciones son controladas por una parte del sistema operativo que se llama Núcleo o Kernel.
  • 10. Núcleo o Kernel
    • Funciones:
    • Creación y finalización de procesos.
    • Cambios de estados de los mismos.
    • Sincronización de procesos.
    • Comunicación de procesos.
    • Manejo de interrupciones.
    • Soporte de actividades de Entrada /Salida.
    • Soporte del sistema de archivos.
    • Soporte de funciones contables del Sistema operativo.
  • 11. Sistema de Archivos
  • 12. Sistema de Archivos
    • Requisitos esenciales para el almacenamiento de información a largo plazo.
      • Posibilidad de almacenar grandes cantidades de información.
      • La información debe sobrevivir al proceso que la usa.
      • Debe poder ser accedidas por múltiples procesos.
    • Solución: almacenar en discos en unidades llamadas archivos.
  • 13. Sistema de Archivos
    • Nombres de archivos.
    • Cuando un proceso crea un archivo le asigna un nombre, este sobrevive al proceso y puede ser accedido por el mismo u otro proceso utilizando este nombre.
    • Las reglas para nombrar archivos varían de un sistema a otro.
    • Todos los sistemas permiten cadenas de 1 a 8 caracteres.
    • Los mas actuales permiten cadenas de 256 caracteres.
    • Algunos distinguen entre mayúsculas y minúsculas (UNIX) y otros no (MS-DOS).
    • Muchos sistemas reconocen nombres en dos partes. (archivo.txt, archivo.zip, archivo.c)
  • 14. Sistema de Archivos
    • Estructura de archivos.
    • Los archivos pueden estructurarse de varias maneras.
      • Secuencia de Bytes (máxima flexibilidad).
      • Secuencia de registros de longitud fija (en desuso).
      • Árbol de registros (registros de longitud variable, se acceden por una clave, el árbol esta ordenado por esta).
  • 15. Sistema de Archivos
    • Tipos de archivos.
    • Existen varios tipos de archivos.
      • Normales (información del usuario).
      • Directorios (sirven al S.O. para mantener la estructura del sistema de archivos.
      • Por caracteres y por bloques (UNIX), para modelar dispositivos E/S como terminales, impresoras y redes.
    • Los archivos normales son generalmente ASCII o binarios
  • 16. Sistema de Archivos
    • Acceso a archivos.
    • Secuencial: se comienza en el primer byte del archivo y se leen byte a byte hasta el fin (cinta).
    • Aleatorio: Se pueden leer en desorden o acceder a los registros por clave (discos). (S.O. actuales)
    • Atributos de Archivos:
    • Información adicional que guarda el S.O. sobre el archivo (fecha, hora de creación, tamaño).
    • Varían considerablemente de un Sistema a otro.
    • Solo lectura, ocultos, del sistema, contraseña, etc.
  • 17. Sistema de Archivos
    • Operaciones con Archivos:
    • Llamadas al sistema mas comunes.
      • CREATE: crea archivo sin datos, establece algunos atributos.
      • DELETE: elimina el archivo.
      • OPEN: abre el archivo, el sistema obtiene los atributos y lo coloca en memoria para agilizar acceso.
      • CLOSE: cierra el archivo, libera espacio en tablas internas y memoria.
      • READ: se leen datos del archivo.
      • WRITE: se escriben datos en el archivo.
      • SEEK: carga en el apuntador la posición actual en el archivo.
      • GET ATTRIBUTES: lee los atributos del archivo.
      • SET ATTRIBUTES: establece atributos del archivo.
      • RENAME: Cambia el nombre a un archivo existente.
  • 18. Sistema de Archivos
    • Directorios:
    • En muchos sistemas son también archivos.
    • Sistemas de directorios jerárquicos:
      • Un directorio para todos los archivos del sistema.
      • Un directorio para cada usuario del sistema.
      • Estructura de árbol:
      • cada usuario puede tener
      • tantos directorios como
      • necesite.
  • 19. Sistema de Archivos
    • Nombres de ruta:
    • Existen dos métodos para especificar las rutas de archivos.
      • Nombre de ruta absoluto : consiste en la ruta desde el directorio raíz hasta el archivo
      • Nombre de ruta relativo : se utiliza en combinación con el concepto de directorio de trabajo ( directorio actual).
  • 20. Sistema de Archivos
    • Operaciones con Directorios:
    • Llamadas al sistema para administrar directorios varían mas de un sistema a otro que las de archivos. Los ejemplos corresponden a UNIX
      • CREATE: crea un directorio.
      • DELETE: elimina un directorio.
      • OPENDIR: abre el directorio (para leerse y listar los archivos contenidos).
      • CLOSEDIR: cierra el directorio.
      • RENAME: Cambia el nombre de un directorio.
  • 21. Entrada/Salida
    • El S.O. debe controlar todos los dispositivos de Entrada/Salida.
      • Enviar comandos.
      • Detectar interrupciones.
      • Manejar errores.
      • Interfaz entre los dispositivos y el resto del sistema.
  • 22. E/S - Principios del Hardware
    • Pueden verse desde la programación o del diseño y construc-ción, nos interesa el punto de vista desde la programación.
    • Dispositivos de E/S: Se dividen en dos categorías:
    • Dispositivos por bloques.
      • Almacenan información en bloques de tamaño fijo, deben manejarse con independencia de los demas(disco).
    • Dispositivos por caracteres.
      • Suministra o acepta una corriente de caracteres (impresoras, interfaces de red, ratones).
    • Esta clasificación no es perfecta, los relojes no son direccionables por bloques ni generan ni aceptan cadenas de caracteres, generan interrupciones.
  • 23. E/S – Controladores de dispositivos
    • Las unidades de entrada salida consisten en un componente mecánico y otro electrónico , este último se llama controlador de dispositivo o adaptador.
    • En general la interfaz entre el dispositivo y el controlador es una norma ( protocolo) estándar (ANSI, IEEE, IDE SCSI).
    • El S.O. trata generalmente con el controlador y no con el dispositivo por medio de un sistema ya sea de bus único o múltiple.
    • La función del controlador es convertir un flujo de bits a un bloque de bytes y realizar la corrección de errores necesaria.
    • Cada controlador tiene registros para comunicarse con el S.O., este realiza la E/S escribiendo comandos en dichos registros.
  • 24. E/S – Acceso directo a memoria (DMA)
    • Muchos controladores (en especial dispositivos por bloques) manejan el acceso directo a memoria.
    • Proceso de lectura normal: el controlador lee un bloque BIT a BIT, lo carga en el buffer interno, realiza la verificación de errores de lectura y luego causa una interrupción, cuando el sistema operativo se ejecuta puede leer la información desde el buffer del controlador.
    • Proceso utilizando DMA (libera a la CPU de trabajo de bajo nivel): La CPU proporciona al controlador la dirección de memoria donde debe colocarse el bloque y el numero de Bytes que deben transferirse.
    • No todas las computadoras usan DMA, en algunos casos la CPU es mas rápida que el controlador DMA.
  • 25. E/S - Principios del Software
    • El software se organiza como una serie de capas, las inferiores ocultan las peculiaridades del hardware y las superiores presentan una interfaz amigable para los usuarios.
    • Objetivos del software E/S:
    • Independencia del dispositivo.
      • Escribir programas que puedan leer un archivo desde un disquete , disco o memoria flash, sin necesidad de modificar el mimo para cada tipo de dispositivo.
    • Manejo de errores.
      • Deben manejarse tan cerca del hardware como sea posible.
      • Si el controlador descubre un error de lectura debería solucionarlo el mismo.
  • 26. E/S - Principios del Software
    • Transferencias síncronas (bloqueo) o asíncronas (interrupciones):
      • es mas fácil programar si las operaciones de E/S producen bloqueos, es tarea del S.O. hacer que las operaciones controladas por interrupciones parezcan por bloqueos.
    • Dispositivos de uso exclusivo y no exclusivo:
      • Exclusivos: pueden ser utilizados por un usuario a la vez (unidad de cinta).
      • No exclusivo: pueden ser utilizados por varios usuarios al mismo tiempo (discos).
  • 27. E/S - Principios del Software
    • Estos objetivos pueden lograrse estructurando el software en cuatro capas.
      • Manejadores de interrupciones (capa inferior).
      • Controladores de dispositivos en software.
      • Software del S.O. independiente del dispositivo.
      • Software de usuario (capa superior).
    • 1. Manejadores de interrupciones:
    • Se ocultan iniciando un bloqueo en el proceso hasta que la E/S se halla llevado a cabo y ocurra la interrupción, en este momento el proceso de interrupción desbloquea el proceso que la origino, quedando en condiciones de ejecutarse.
  • 28. E/S - Principios del Software
    • 2. Controladores de dispositivos:
    • Cada controlador maneja un tipo de dispositivo o a lo sumo una clase de dispositivos similares.
    • Son los que emiten y verifican la ejecución de los comandos que reciben los registros de los controladores de hardware.
    • Se bloquean o no al emitir un comando de acuerdo al tiempo que deba esperar al controlador de hardware para que este realice cierto trabajo.
    • En caso de bloquearse será despertado por una interrupción.
    • El controlador debe determinar si no ocurrieron errores, puede tener que devolver datos al software independiente del dispositivo.
    • Si no tiene otras peticiones en cola se bloquea y queda a la espera la próxima petición.
  • 29. E/S - Principios del Software
    • 3. Software de E/S independiente del dispositivo.
    • Su función básica es realizar las funciones de E/S comunes a todos los dispositivos.
    • La frontera entre éste y los controladores de dispositivos depende del S.O.
    • Establece la correspondencia entre los nombres simbólicos de dispositivos y el controlador apropiado.
    • Se ocupa de la protección de dispositivos.
    • Almacenamiento intermedio (buffers).
    • Es informado por el controlador cuando éste no puede solucionar un error, de aquí en mas el tratamiento de el error es independiente del dispositivo.
  • 30. E/S - Principios del Software
    • 4. Software de E/S de espacio de usuario.
    • Procedimientos de bibliotecas que se enlazan a los programas. (en C: write, printf, scanf).
    • Sistema de spool, maneja los dispositivos de E/S de uso exclusivo en un sistema multiprogramado (impresora, red, se crea un proceso llamado demonio y se crea un directorio de spooling).
  • 31. E/S - Principios del Software
    • Las cuatro capas de software del sistema de E/S.
  • 32. E/S – Bloqueo mutuo
    • Los sistemas de cómputo tienen muchos recursos que sólo pueden ser utilizados por un proceso a la vez.
    • El bloqueo mutuo se produce cuando dos procesos requieren recursos comunes, obtienen uno y proceden al bloqueo y quedan a la espera del otro.
    • Estos recursos pueden ser tanto dispositivos de hardware como elementos de información (un registro de una base de datos)
    • Recursos: cualquier cosa que solo puede ser usada por un proceso en un instante dado.
    • Expropiables: puede arrebatarse al proceso sin efectos adversos.
    • No expropiables: si se quita el computo falla.
  • 33. E/S – Bloqueo mutuo
    • Secuencia de sucesos necesaria para utilizar un recurso.
    • Solicitar Recurso.
    • Utilizar Recurso.
    • Liberar Recurso.
    • Bloqueo mutuo: Conjunto de procesos en el que cada elemento del conjunto está esperando un evento que sólo otro proceso del conjunto puede causar.
  • 34. Memoria
    • En general una computadora tienen:
      • Memoria cache (volátil, pequeña, rápida y costosa).
      • Memoria RAM (volátil, mediana en velocidad y precio).
      • Disco (no volátil, lento y económico).
    • La parte del S.O. que la jerarquía de memoria se denomina Administrador de memoria.
      • Controla que parte de memoria esta en uso y que no.
      • Asigna memoria a los procesos cuando la necesitan y luego la recupera.
      • Controla el intercambio entre memoria principal y disco.
  • 35. Administración de Memoria
    • Los sistemas de administración de memoria se pueden dividir en dos clases:
      • Los que trasladan información entre la memoria y el disco (intercambio y paginación).
      • Los que no lo hacen.
  • 36. Administración de Memoria
    • Mono programación sin intercambio ni paginación:
    • Esquema sencillo, se ejecuta un solo programa y se comparte la memoria entre este y el S.O., se ejecuta un solo proceso a la vez.
  • 37. Administración de Memoria
    • Multiprogramación con particiones fijas:
    • Se divide la memoria en particiones fijas, posiblemente desiguales.
    • Cuando se genera un proceso nuevo se lo coloca en la cola de la partición de memoria mas pequeña que pueda contenerlo.
    • La parte de la partición memoria que el programa no utilice se desperdicia.
    • Las colas independientes para cada partición tienen notorias desventajas.
  • 38. Administración de Memoria
    • Multiprogramación con particiones fijas:
  • 39. Administración de Memoria
    • Intercambio:
    • Consiste en traer a la memoria cada proceso en su totalidad, ejecutarlo durante un tiempo y después colocarlo otra vez en el disco.
    • El número, la ubicación y el tamaño de las participaciones cambian de manera dinámica de acuerdo a los procesos.
    • Esta asignación dinámica de la memoria es administrada por el S.O., existen dos métodos: Administración de la memoria con mapa de bits y Administración de la memoria con listas enlazadas.
  • 40. Administración de Memoria
    • Administración de la memoria con mapa de bits
      • Se divide la memoria en unidades de asignación (de una palabra a varios kilobytes).
      • A cada unidad le corresponde un BIT en el mapa de bits que tomara valor 0 si la unidad esta libre y 1 si esta en uso.
    • Administración de la memoria con listas enlazadas.
      • Es una lista de los segmentos de memoria libres o enlazados.
      • Cada entrada a la lista especifica o un agujero o un proceso, la dirección en que comienza, la longitud y el apuntador a la siguiente entrada.
  • 41. Administración de Memoria
    • Memoria virtual
      • Se basa en la idea de que el tamaño combinado del programa, los datos y la pila puede exceder la memoria física disponible para él.
      • El S.O. mantiene en memoria las partes del programa que se están utilizando y el resto en el disco.
      • La memoria virtual funciona en un sistema de multiprogramación manteniendo segmentos de muchos programas en memoria a la vez.
      • La mayor parte de los sistemas de memoria virtual utilizan una técnica llamada paginación.
  • 42. Administración de Memoria
    • Paginación:
    • El espacio de direcciones virtual se divide en unidades llamadas páginas.
    • Las unidades correspondientes en la memoria física se llaman marcos de páginas.
    • Las páginas y los marcos de páginas tienen exactamente el mismo tamaño.
    • Con 64K de espacio de direcciones virtuales y 32K de memoria física tenemos 16 páginas virtuales y 8 marcos de páginas.
    • La transferencia entre memoria y disco siempre se efectúa en unidades de una página.
  • 43. Administración de Memoria
    • Paginación:

×