sistemas operativos - gjoyuela/archivos/linux/presentacion_linux.v.6.pdfآ  autor: alejandro...

Download Sistemas Operativos - gjoyuela/archivos/linux/Presentacion_Linux.v.6.pdfآ  Autor: Alejandro Furfaro

Post on 10-Mar-2020

4 views

Category:

Documents

0 download

Embed Size (px)

TRANSCRIPT

  • Autor: Alejandro Furfaro 1

    Sistemas Operativos Universidad Tecnológica Nacional - FRBA

    Técnicas Digitales III

  • Autor: Alejandro Furfaro 2

    Introducción Sistema Operativo ¿Que es? Es un programa de control que se ocupa de: 2 Administrar los recursos de la computradora. 2 Administrar la ejecución de los diferentes programas en muchos casos

    pueden ser de diferentes usuarios. 2 Facilitar la tarea del programador permitiendole acceso a los recursos de

    manera independiente del hardware. 2 Proveer servicios a los programas de aplicación a través de un conjunto de

    llamadas standard. Estas acciones se resuelven a través de una implementación que puede representarse en capas:

    Hardware

    Sistema Operativo

    Utilidades / Servicios

    Aplicaciones Programador de Aplicaciones

    Programador de Sistemas

  • Autor: Alejandro Furfaro 3

    Clasificación de los Sistemas Operativos

    Sistemas Real Time: 2Se utilizan para sistemas de control industriales, centrales de

    conmutación, instrumentación científica. 2Por lo general tienen una muy pobre capacidad de interfaz con el

    usuario, no tienen utilitarios. 2Su fortaleza consiste en administrar los recursos de la computadora, de

    modo de ejecutar una operación en particular en la misma cantidad de tiempo cada vez que ocurre el evento que la dispara. Concepto even- driven. 2En el tipo de aplicaciones que resuelven estos sistemas operativo, si una

    parte se mueve mas rápido solo porque los recursos están disponibles puede generar resultados tan catastróficos como si no se mueve porque el recurso está ocupado. 2Ejemplos de implementaciones

    iQNX i RT-Linux

  • Autor: Alejandro Furfaro 4

    Clasificación de los Sistemas Operativos

    Monotarea - Monousuario 2 Están preparados para ejecutar solo una tarea a la vez. no puede

    ejecutar mas de una en forma concurrente. 2 Interfaz para un solo usuario, (una sola sesión de trabajo). 2 Transfiere el control de la máquina a la aplicación que va a

    ejecutarse, y solo interviene a demanda de ésta mediante alguna llamada a los servicios de su kernel, o cuando la aplicación finaliza y devuelve el control.

    2 El viejo MS-DOS (sucesor del mas viejo aún CPM/86), es el mas difundido de este tipo de sistemas.

    2 Un ejemplo muchísimo mas actual, útil, y eficiente de este tipo de sistemas es el Palm OS que corre en las computadoras de mano Palm Pilot. Aquí no hay programas residentes y se tiene un sistema operativo con una interfaz de usuario muy cómoda que permite ejecutar aplicaciones de a una por vez.

  • Autor: Alejandro Furfaro 5

    Clasificación de los Sistemas Operativos

    Multitarea Monousuario 2 Hoy en día es habitual utilizar estos sistemas operativos en las PC de

    escritorio. 2 Interfaz para un solo usuario, pero pueden mantener en memoria

    múltiples aplicaciones en forma estable y dentro de un entorno de protección (algunos con mas suerte que otros...)

    2 Es habitual descargar correo de Internet o bajar un archivo extenso durante minutos mientras se trabaja en la redacción de un documento, o en la escritura de un programa de aplicación, y hasta se chequea el estado de una unidad de disco , y se realiza un backup de información, todo a la vez.

    2 Ejemplos habituales de este tipo de sistemas. i Windows XP, i NT Workstation, i 2000 Workstation, i OS/2, i Machintosh, i Linux o cualquier UNIX instalado como Workstation

  • Autor: Alejandro Furfaro 6

    Clasificación de los Sistemas Operativos

    Multiusuario 2 Esta es la forma mas avanzada de los sistemas operativos, y curiosamente

    la que primó en los sistemas pioneros como UNIX. 2 La falta de capacidad del hardware de por entonces (1969) hizo que se

    implementasen versiones mas simplificadas para usuarios individuales. 2 Aquí la interfaz de usuario soporta múltiples sesiones. Esto por extensión

    implica que tiene capacidades multitarea, ya que con solo ejecutarse un proceso por usuario se tiene mas de una tarea en ejecución en la memoria del sistema.

    2 Estos sistemas son los mas poderosos y normalmente los mas eficientes: MVS, para los mainframes, UNIX (o cualquiera de sus versiones free como LINUX, o free BSD, por ejemplo) son los mejores exponentes de este tipo de sistemas.

    2 Microsoft tiene versiones denominadas Server de Windows XP 2000, y una evolución de 2000, denominada 2003 que soporta al procesador Itanium.

  • Autor: Alejandro Furfaro 7

    Funciones de un Sistema Operativo Gestión del procesador 2 Gestión del tiempo de procesamiento para cada tarea (scheduling de

    procesos).

    Gestión de la Memoria. 2 Asignación de memoria RAM para las aplicaciones aplicando

    criterios basados en la MMU del procesador. 2 Gestión de la Memoria Virtual 2 Gestión de la memoria cache

    Gestión de los dispositivos de E/S. 2 Acceso al hardware de manera transparente para las aplicaciones. 2 Manejo de la concurrencia de acceso en sistemas multiusuario o

    multitarea especialmente

  • Autor: Alejandro Furfaro 8

    Funciones de un Sistema Operativo Gestión del storage 2 (File Systems en los medios masivos de almacenamiento: discos

    rígidos, CD-ROMs, DVDs).

    Interfaz para las Aplicaciones. 2 Colección de llamadas para ejecutarse desde los programas de

    aplicación para acceder a servicios brindados pro código del sistema operativo. Se las conoce como System Calls.

    2 En los multitarea se manejan mediante este subsistema, los diferentes niveles de privilegio que posea el Sistema Operativo (y que dependen del procesador utilizado en el sistema)

    Interfaz para los usuarios. 2 Manejo de interfaces sencillas para usuarios no expertos

    iGUI i Texto i Combinación de ambas

  • Autor: Alejandro Furfaro 9

    Modelo derivado de las funciones

    Hardware

    Device Drivers

    Bu ffe

    rs de

    E /S

    Fi le

    Sy st

    em Ma

    na ge

    r

    Ge st

    ió n

    de P

    ro ce

    so s

    Gestión de Memoria

    Interfaz de aplicaciones (API o System Call)

    Aplicaciones de usuario Programas de Aplicacióny Utilitarios Ejecutan en el menor nivel de privilegio

    Capa de interfaz para acceso a los servicios del S.O. Por parte de las aplicaciones

    KERNEL

    Hardware (lo que golpeamos a causa de los estándares de calidad de algunos S.O.’s ....)

    Servicios de E/S

    Sc he

    du le

    r

  • Autor: Alejandro Furfaro 10

    Caso Práctico

    Linux

  • Autor: Alejandro Furfaro 11

    Linux: Introducción Sistema Operativo Unix-like Basado en POSIX (Portable OS based on UNIX) Kernel monolítico (programa único +módulos) 2 Opuesto a los Sistemas MicroKernel que reinaron en los 70’s.

    Diseñado bajo el concepto Lightweight Processes (LWP) Preemptive Kernel 2 Hasta la versión 2.4 el kernel no puede intercalar arbitrariamente flujos de ejecución mientras está

    en modo privilegiado (PL=00). 2 La versión 2.6, compilada con la opción “Preemptive Kernel”, sí puede . 2 Solaris 2.x y Mac 3.0 son full preemptive

    Soporta SMP (Symetric MultiProcessing) Soporta varios File Systems (IBM AIX, SGI Irix, FAT32, etc) Puede ser muy pequeño. Se puede ajustar a un floppy 3”1/2 Puede ejecutarse un web server o proxy server basado en Linux en una PC basada en 80386. Es libre. Podemos intslarlo y modificar su código sin otra limitación que nuestro hardware. Versiones. Se representan con tres números separados por puntos. Ej: 2.4.18, o 2.5.22. El primero es la Versión. El segundo indica si es un kernel estable (par) o en desarrollo (impar). El tercero es el release.

  • Autor: Alejandro Furfaro 12

    El Kernel Es el principal programa del SO Actualmente soportado por las siguientes arquitecturas: 2 ARM (ARM based Computers) 2 ARM26 2 Alpha (Compaq) 2 Intel (ia32 e ia64-Itanium) 2 Familia 68K (Motorola) 2 Parisc (WS basadas en procesadores RISC HP-9000 de Hewlett Packard) 2 MIPS (Silicon Graphics) 2 Power PC y PowerPC 64 2 Sparc y Ultra Sparc (32 y 64 bits Sun Microsystems) 2 S390 (IBM) 2 SuperH. Línea SuperH de Procesadores de Hitachi y STMicroelectronics 2 V850. Microcontroladores NEC basados en un RISC de 32 bits Arquitectura Harvard.

    Aprovecha las capacidades del hardware 2 Maneja el acceso a los recursos hardware específicos. A través de Device Drivers. 2 Provee servicios de acceso al hardware a los programas de usuario. Es reentrante 2 Múltiples procesos acceden al kernel de manera simultánea.

    Ref: Understanding the Linux Kernel 3erd. Ed. D. Bovet. Cap 1

  • Autor: Alejandro Furfaro 13

    El Kernel Maneja niveles de Protección 2 Ejecución en modo Kernel. 2 Ejecución en modo User. 2 Maneja Stacks separados.

    In te

    rr up

    ci ón

    d e

    tim er

    Fa llo

    d e

    Pá gi

    na

    Se rv

    ic io

    d el

    Si

    st em

    a

    R eq

    ue rim

    ie nt

    o a

    un

    dr iv

    er / I

    nt er

    ru pc

    ió n

    de sd

    e un

    d is

    po si

    tiv o

    Modo Usuario

    Modo Kernel

    System Call Handler

    System Call Handler

    SchedulerScheduler Exception Handler

    Exception Handler

    Devic

Recommended

View more >