fundamentos de los sistemas ? es el sistema... · –fundamentos de sistemas operativos. teoría y

Download Fundamentos de los Sistemas ? es el sistema... · –Fundamentos de Sistemas Operativos. Teoría y

Post on 07-Oct-2018

216 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Fundamentos de losSistemas Operativos

    Tema 1. Conceptos generalesQu es un sistema operativo?

    2015 ULPGC - Jos Miguel Santos Espino

  • Bibliografa para el Tema 1

    Texto principal Fundamentos de los sistemas operativos

    (Silberschatz, 2006, 7 ed.)Captulos 1 y 2

    Textos alternativos Sistemas Operativos: aspectos internos y

    principios de diseo (Stallings, 2005, 5 ed.) Captulo 2

    Fundamentos de Sistemas Operativos. Teora y ejercicios resueltos(Candela, Garca, Quesada, Santana, Santos, 2007)Captulo 1

    (o las ediciones originales en ingls)

    2015 ULPGC - Jos Miguel Santos 2

  • QU ES UN SO?

    2015 ULPGC - Jos Miguel Santos 3

  • Primero: qu hay enun sistema informtico?

    Hardware Procesador y memoria Dispositivos de E/S: almacenamiento, red, HCI,

    impresin, etc.

    Software Software de sistema: compilador, GUI, shell, etc. Aplicaciones

    Personas Usuarios en general Administradores del sistema Desarrolladores / programadores

    4 2015 ULPGC - Jos Miguel Santos

  • Y ahora: qu es un SO?

    Un programa que acta de intermediario entre los usuarios y el hardware

    Pertenece al software del sistema

    Objetivos:

    Proveer un entorno para ejecutar las aplicaciones

    Administrar eficientemente los recursos

    Facilitar la interaccin con el computador

    Facilitar la evolucin del software y del hardware

    5 2015 ULPGC - Jos Miguel Santos

  • Definiciones breves

    1. Un sistema de software cuyo fin es que un sistema informtico sea operativo.

    2. Conjunto de programas que gestionan los recursos del sistema, optimizan su uso y resuelven conflictos.

    3. Cualquier cosa que un fabricante de software te venda como un sistema operativo.

    6 2015 ULPGC - Jos Miguel Santos

  • Los dos roles del SO

    Interfaz con el hardware Aade caractersticas no existentes en el hw

    Oculta caractersticas inconvenientes del hw

    Ofrece una mquina extendida

    Administrador de recursos Como si fuera un gobierno del hardware

    Concede recursos de forma segura, justa y eficiente

    No realiza trabajo productivo

    7 2015 ULPGC - Jos Miguel Santos

  • El SO como interfaz

    Visin: una capa que envuelve el hardware Ofrece una mquina abstracta con otras caractersticas

    Oculta detalles incmodos del hardware Ampla caractersticas no presentes en el hardware

    2015 ULPGC - Jos Miguel Santos 8

    proceso

    proceso

    proceso hardware

    Sistema operativo

  • Interfaz del SO

    Para quin es la interfaz?

    Usuarios en general entorno de ejecucin

    Administradores entorno de administracin

    Desarrolladores interfaz de programacin

    Qu aspecto tiene la interfaz?

    Texto (CLI = Command Line Interface)

    Grfica (GUI = Graphical User Interface)

    Servicios de programacin (API)

    2015 ULPGC - Jos Miguel Santos 9

  • Entorno de trabajo del SO

    El SO suele proporcionar utilidades bsicas para que el usuario pueda realizar tareas comunes:

    Trabajar con archivos y discos

    Ejecutar aplicaciones cargador de programas

    Imprimir

    Administrar el sistema: backups, usuarios

    2015 ULPGC - Jos Miguel Santos 10

  • CLI = Command Line Interface

    Incorpora un lenguaje sencillo para dar instrucciones al SO:

    Cargar programas, trabajar con archivos, etc.

    Se le llama shell, intrprete de rdenes, consola

    2015 ULPGC - Jos Miguel Santos 11

  • GUI = Graphical User Interface

    2015 ULPGC - Jos Miguel Santos 12

  • API del SO: llamadas al sistema

    API = Application Programming Interface

    El SO ofrece a los desarrolladores y a los procesos un conjunto de servicios pblicos, accesibles mediante una API llamadas al sistema (system calls)

    2015 ULPGC - Jos Miguel Santos 13

  • Llamadas al sistema: ejemplo

    Llamada write() de UNIX. Escribe un bloque de datos en un fichero o en un dispositivo de E/S.

    int write ( int fd, void* buffer, size_t size )

    2015 ULPGC - Jos Miguel Santos 14

    Resultado: nmero de bytes escritos

    Descriptor de fichero (identifica el fichero donde vamos a escribir)

    Apuntador a la zona de memoria donde estn los datos

    Longitud de los datos en bytes

  • BeneficiosQu ganamos interponiendo esta interfaz entre los

    programas y el hardware?

    Usabilidad (la interfaz es ms cmoda que el hw) Seguridad (se ocultan vulnerabilidades del interior del

    hardware) Portabilidad (independencia del hardware) Interoperabilidad (podemos compartir informacin

    con otros sistemas que usen la misma interfaz) Mantenibilidad (podemos hacer mejoras o

    adaptaciones dentro del SO sin obligar a hacer cambios en los programas de usuario)

    Productividad (por todo lo anterior)

    2015 ULPGC - Jos Miguel Santos 15

  • El SO como administrador de recursos

    Procesos y recursos

    Proceso: programa en ejecucin

    Recurso: algo fsico o virtual que necesita un proceso para ejecutarse

    Los recursos son escasos los procesos compiten por ellos

    El SO acta como rbitro/mediador, que asigna recursos de forma justa y eficiente

    2015 ULPGC - Jos Miguel Santos 16

  • El SO como administrador de recursos

    El SO debe determinar a quin se le entregan los recursos, qu cantidad, en qu momento y por cunto tiempo.

    polticas de gestin de recursos

    2015 ULPGC - Jos Miguel Santos 17

  • El SO como administrador de recursos

    Criterios que deben cumplir las polticas del SO:

    optimizar el rendimiento del sistema

    justicia en el reparto evitar acaparamientos e inanicin de los procesos perjudicados

    garantizar la seguridad del sistema (confidencialidad, integridad, disponibilidad)

    Estos criterios entran en conflicto

    Ej. no se puede dar el mximo rendimiento y al mismo tiempo dar un reparto justo

    2015 ULPGC - Jos Miguel Santos 18

  • Seguridad: los tres elementos

    CIA = Confidentiality + Integrity + Availability

    Confidencialidad intimidad, privacidad, etc.

    Integridad que la informacin no se corrompa

    Disponibilidad que el sistema contine prestando servicio

    2015 ULPGC - Jos Miguel Santos 19

  • GRANDES LOGROS DEL S.O.

    2015 ULPGC - Jos Miguel Santos 20

  • Algunos logros histricos de los SO

    Interfaz uniforme con la E/S

    Multiprogramacin

    Memoria paginada

    Memoria virtual

    Sistemas de archivos

    Control del acceso concurrente

    Proteccin y seguridad

    2015 ULPGC - Jos Miguel Santos 21

  • Interfaz uniforme con la E/S

    La E/S es tremendamente diversa

    Ej. almacenamiento: ptico, disco magntico, SSD, cinta magntica

    Cada clase de dispositivo se programa de forma distinta: Tamao de la unidad de transferencia de datos

    Protocolo de comunicacin (sncrono, asncrono)

    Codificacin de la informacin

    Control de errores

    2015 ULPGC - Jos Miguel Santos 22

  • Interfaz uniforme con la E/S

    Solucin del SO: ofrecer a los desarrolladores una API uniforme para acceder a cualquier dispositivo de E/S, ej.:

    readIO ( int device_id, void* data, int length )

    writeIO ( int device_id, void* data, int length )

    Para cada clase de dispositivo existe una implementacin de esta APImanejador de dispositivo (device driver)

    Interno del SO, es transparente para el usuario final

    2015 ULPGC - Jos Miguel Santos 23

  • Interfaz uniforme con la E/S

    Qu conseguimos? independencia del dispositivo

    Abstraemos los detalles de implementacin de cada clase de perifrico

    Ganamos en portabilidad (el mismo cdigo sirve para dispositivos diferentes)

    Adaptacin a futuras clases de perifricos

    Podemos prohibir el acceso directo a la E/S (slo trabajar con la API del SO) ms seguridad

    2015 ULPGC - Jos Miguel Santos 24

  • 25

    Multiprogramacin

    Tambin llamada multitarea (multitasking)

    Cuando un proceso se bloquea al esperar por la E/S, ejecutamos en la CPU instrucciones de otro proceso.

    Los procesos entrelazan su ejecucin: concurrencia.

    La CPU y la E/S trabajan a la misma vez se terminan ms trabajos en menos tiempo

    2015 ULPGC - Jos Miguel Santos

  • La memoria en un sistema multiprogramado

    2015 ULPGC - Jos Miguel Santos 26

    S.O.

    programa 1

    programa 2

    programa 3

    (libre)

    (libre)

  • Multiprogramacin

    Cuestiones que surgen en un sistema multiprogramado (y que no existen en un sistema sin multiprogramacin): Cuando el procesador queda libre, a qu proceso

    elegimos? planificacin de CPU

    Competencia por el consumo de la memoria

    Proteccin de las zonas privadas de memoria

    Conflictos ante el acceso simultneo a los recursos

    Riesgo de interbloqueo (deadlock)

    2015 ULPGC - Jos Miguel Santos 27

  • Paginacin y memoria virtual

    Paginacin. Podemos trocear un programa en pequeas pginas que se pueden colocar en zonas diferentes de la memoria.

    Memoria virtual. El programa no necesita estar cargado totalmente en memoria. El almacn secundario se usa como extensin de la memoria principal.

    Todo se resuelve automticamente, sin que el usuario ni el programador tengan que intervenir.

    2015 ULPGC - Jos Miguel Santos 28

  • Paginacin y memoria virtual

    2015 ULPGC - Jos Miguel Santos 29

    (Silberchatz, Galvin, Gagne, 2013)

  • Sistemas de archivos

    Usuarios trabajan con documentos, programas, imgenes, msica

    Almacenamiento fsico trabaja

Recommended

View more >