Академический Документы
Профессиональный Документы
Культура Документы
Interfaz de Usuario del Sistema Operativo Llamadas a Sistema Tipos de Llamadas a Sistema Programas de Sistemas Diseo e Implementacin de un Sistema Operativo Estructura de un Sistema Operativo
Mdulo 2
Mquinas Virtuales Depuracin de un Sistema Operativo Generacin de un Sistema Operativo Boot del Sistema
JRA 2009
Objectivos
Describir los servicio de un sistema operativo que se ofrecen a usuarios, procesos y otros sistemas. Discutir las distintas formas de estructurar un sistema operativo. Explicar como son instalados los sistemas operativos, personalizados y como se inician.
JRA 2009
JRA 2009
JRA 2009
JRA 2009
JRA 2009
JRA 2009
JRA 2009
JRA 2009
La GUI Mac OS X
JRA 2009
JRA 2009
Llamadas al Sistema
Son la interfaz de programacin a los servicios provistos por el SO Tipicamente escritas en lenguajes de alto nivel (C o C++) Mayoritariamente accedidas por programas va Application Program Interface (API) ms que por el uso llamadas a sistema directas Las tres API ms comunes son Win32 para Windows, POSIX API para sistemas POSIX (incluyendo virtualmente todas las versiones de UNIX, Linux, y Mac OS X), y Java API para la mquina virtual Java (JVM)
JRA 2009
JRA 2009
Una descripcin de los f the parmetros pasados a ReadFile() HANDLE fileel archivo a ser ledo LPVOID bufferun buffer donde el dato ser ledo y previamente escrito DWORD bytesToRead el nmero de bytes a ser ledos en el buffer LPDWORD bytesRead el nmero de bytes ledos durante la ltima lectura LPOVERLAPPED ovlindica si es usada una E/S solapada
Solo necesita invocar la API y entender lo que har el SO como resultado de la llamada La mayora de los detalles de la interfaz del SO estn escondidos para el programador por la API Manejada por libreras run-time (conjunto de funciones construdas en libreras includas con el compilador)
JRA 2009
JRA 2009
JRA 2009
JRA 2009
Programa de usuario
JRA 2009 Sistemas Operativos Estructura de Sistemas Operativos JRA 2009
Sistema operativo
Sistemas Operativos Estructura de Sistemas Operativos
JRA 2009
JRA 2009
Ejecucin MS-DOS
Inicio Programa ejecutando
intrprete
intrprete de comandos
intrprete de comandos
proceso B
kernel
kernel
kernel
JRA 2009 Sistemas Operativos Estructura de Sistemas Operativos
23
JRA 2009
Programas de Sistema
Los programas de sistema proveen un medio conveniente para el desarrollo de programas y ejecucin. Pueden ser divididos en: Manipulacin de archivos Informacin de estado Modificacin de archivos Soporte de lenguajes de programacin Carga de programas y ejecucin Comunicaciones Programas de aplicacin La visin que tienen la mayora de los usuarios del sistema operativo est dada por los programas de sistema y no por las llamadas a sistema (system calls).
Programas de Sistema
Proveen un medio conveniente para el desarrollo de programas y su ejecucin Algunos de ellos son simples interfaces a llamadas a sistema, otros son considerablemente ms complejos Administracin de archivos - Crea, borran, copian, renombran, imprimen, vuelcos, listan, y generallmente manipulan archivos y directorios Informacin de estado Algunos requieren del sistema informacin - fecha, hora, cantidad de memoria disponible, espacio de disco, nmero de usuarios Otros proveen detalles de rendimiento, bitcoras e informacin de depuracin Tipicamente estos programas dan forma e imprimen salidas a terminales o a otros dispositivos de salida. Algunos sistemas implementan un registro - usado para almacenar y recuperar informacin de configuracin
JRA 2009
JRA 2009
JRA 2009
JRA 2009
Estructura Simple
MS-DOS escrito para proveer mxima funcionalidad en el menor espacio No est dividido en mdulos Aunque MS-DOS tiene cierta estructura, sus interfaces y niveles de functionalidad no estn bien separados
JRA 2009
JRA 2009
programa de aplicacin
JRA 2009
JRA 2009
32
Estructura de UNIX
USUARIOS
shells y comandos compiladores e intrpretes libreras de sistema interfaz de system-call al kernel
signals manejo terminal sistema I/O caracter drivers terminal sistema de archivos swapping sistema I/O bloque drivers disco y cinta planificacin CPU reemplazo de pginas demanda de pginas memoria virtual
UNIX
UNIX est limitado por la funcionalidad del hardware, el sistema operativo UNIX original tena una estructura limitada. El SO UNIX consiste de dos partes separables. Programas de sistema El kernel Consiste de todo lo que esta debajo de la interfaz de los system calls y encima del hardware Contiene el sistema de archivos, la planificacin de CPU, manejo de memoria, y otras funciones del sistema operativo; un gran nmero de funciones en un solo nivel.
interfaz kernel al hardware controladores terminal terminales controladores disp discos y cintas controladores memoria memoria fsica
Sistemas Operativos Estructura de Sistemas Operativos
JRA 2009
JRA 2009
34
nuevas operaciones
Capa M
operacion es ocultas
Capa M-1
operaciones existentes
JRA 2009
JRA 2009
36
Estructura de Mac OS X
JRA 2009
JRA 2009
Mdulos
Los ms modernos SOs implementan el kernel en mdulos Usa un enfoque orientado a objetos Cada componente del ncleo est separado Los protocolos de comunicacin entre ellos son sobre interfaces conocidas Cada uno es cargado en la medida que sea necesitado dentro del kernel En resumen, similar a capas pero ms flexible
JRA 2009
JRA 2009
Mquinas Virtuales
Una mquina virtual lleva la propuesta por capas a su conclusin lgica. Trata el hardware y el kernel del sistema operativo como si fuera todo hardware. Una mquina virtual provee una interfaz idntica al hardware primitivo subyacente. El sistema operativo crea la ilusin de mltiples procesos, cada uno ejecutando en su propio procesador con su propia memoria (virtual). Cada invitado es provisto con una copia (virtual) de la computadora
JRA 2009
JRA 2009
Modelos de Sistema
Mquina no virtual Mquina virtual
Para-virtualizacin
Presenta invitados con un sistema similar pero no idntico hardware Los invitados deben ser modificados para correr en un hardware paravirtualizado
procesos procesos
Los invitados pueden ser un SO, o en el caso de Solaris 10 las aplicaciones corren en containers
procesos
procesos
Interfaz de programacin
kerne l
kernel
kernel
kernel hardware
hardware
JRA 2009
43
JRA 2009
Arquitectura de VMware
JRA 2009
JRA 2009
JRA 2009
JRA 2009
JRA 2009
JRA 2009
50
Mdulo 2
JRA 2009