PDF de programación - Estructura del Sistema Operativo

Imágen de pdf Estructura del Sistema Operativo

Estructura del Sistema Operativográfica de visualizaciones

Publicado el 7 de Agosto del 2020
201 visualizaciones desde el 7 de Agosto del 2020
1,5 MB
9 paginas
Creado hace 10a (23/08/2010)
Estructura del Sistema

Operativo

Módulo 2

Estructuras de Sistemas Operativos

 Servicios de Sistemas operativos

 Interfaz de Usuario del Sistema Operativo

 Llamadas a Sistema

 Tipos de Llamadas a Sistema

 Programas de Sistemas

 Diseño e Implementación de un Sistema Operativo

 Estructura de un Sistema Operativo

 Máquinas Virtuales

 Depuración de un Sistema Operativo

 Generación de un Sistema Operativo

 Boot del Sistema

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Objectivos

Servicios del Sistema Operativo

 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.

 Un conjunto de servicios del SO proveen funciones que son útiles al

usuario:

 Interfaz de Usuario – Casi todos los SOs tienen una interfaz de usuario

(UI)

Varían entre Command-Line (CLI), Graphics User Interface (GUI),

Batch

 Ejecución de Programas- El sistema debe poder cargar un programa en
memoria y ejecutarlo, terminarlo en forma normal o anormal (indicando
el error).

 Operaciones de E/S - Un programa ejecutando puede requerir E/S, las

cuales pueden involucrar un archivo o un dispositivo de E/S.

 Manipulación del Sistema de Archivos - El sistema de archivos es de

particular interés. Obviamente el programa necesita leer y escribir
archivos y directorios, crearlos y borrarlos, borrarlos, listar información
de archivos y la administración de permisos.

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Una Visión de los Servicios de un Sistema Operativo

Servicios del Sistema Operativo (Cont)

 Un conjunto de servicios de SO provee funciones que son útiles al

usuario (Cont):

 Comunicaciones – Los procesos pueden intercambiar información, en

la red

Las comunicaciones pueden ser vía memoria compartida o por

medio de pasaje de mensajes (los paquetes son movidos por el SO)

 Detección de errores – Los SOs necesitan estar constantemente al

margen de errores.

Pueden ocurrir en la CPU y hardware de memoria, en dispositivos

de E/S, en programas de usuario

Para cada tipo de error el SO toma la operación apropiada para

asegurar una computación correcta y consistente

Las facilidades de depuración pueden mejorar las habilidades del

usuario y programador para hacer eficiente el uso del sistema.

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Servicios del Sistema Operativo (Cont)

Servicios del Sistema Operativo (Cont)

 Otro conjunto de funciones del SO existen para asegurar una

 Otro conjunto de funciones del SO existen para asegurar una

operación eficiente del propio sistema vía recursos
compartidos.

 Alocación de Recursos – Cuando corren

concurrentemente múltiples usuarios o múltiples tareas los
recursos deben ser alocados a cada uno de ellos.

Muchos tipos de recursos - Algunos (tales como ciclos
de CPU, memoria principal y almacenaje de archivos )
pueden tener código especial de alocación, otros (como
dispositivos de E/S) pueden tener código general de
requerimiento y liberación.

 Contabilidad – Lleva la pista como, cuanto y que clases de

recursos de computadora usan los usuarios.

operación eficiente del propio sistema vía recursos
compartidos.

 Protección y seguridad – Los propietarios de la

información almacenada en sistema de computadoras
multiusuarios o de red pueden querer controlar el uso de
esa información, los cprocesos concurrentes no deben
interferir uno con otro.

Protección implica asegurar que todos los accesos a

recursos del sistema están controlados.

Seguridad del sistema frente a los de afuera requiere
autenticación, extensión para defender los dispositivos
externos de E/S de intentos de accesos no válidos.

Si un sistema debe ser protegido y seguro, deben ser
tomadas precauciones pues una cadena es tan fuerte
como el más débil de los eslabones.

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Interfaz de Usuario del Sistema Operativo - CLI

Interfaz de Usuario Gráfica del Sistema Operativo - GUI

La interfaz de líneas de comando (Command Line Interface - CLI)

o intérprete de comando permite entrar comandos en forma
directa

Algunas veces implementadas en el kernel, otras como

programas de sistema

A veces múltiples variantes – shells

En primer lugar espera un comando del usuario y luego

lo ejecuta

– Algunas veces están embebidos, otras son solo

nombres de programas

» En este último caso, agregar nuevas

características no requiere modificaciones en la
shell.

 Interfaz desktop “amigable”

 Usualmente mouse, teclado y monitor

 Los Iconos representan archivos, programas, acciones, etc

 Varios botones del mouse sobre objetos en la interfaz causa varias

acciones (proveen información, opciones, ejecuta funciones, abre
directorios (conocidos como carpetas o folder)

 Inventada por Xerox PARC

 Casi todos los sistemas incluyen interfaces CLI y GUI

 Microsoft Windows es GUI con una CLI que es una shell de “comando”

 Apple Mac OS X como interfaz GUI “Aqua” soportada por un kernel

UNIX por debajo y sus shells disponibles.

 Solaris es CLI con una interfaz GUI opcional (Java Desktop, KDE)

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Intérprete de Comando Bourne Shell

La GUI Mac OS X

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Llamadas al Sistema

Ejemplo de Llamada a Sistema

 Son la interfaz de programación a los servicios provistos por el SO

 Llamada a sistema para copiar el contenido de un archivo a otro.

 Tipicamente escritas en lenguajes de alto nivel (C o C++)

 Mayoritariamente accedidas por programas vía Application

Program Interface (API) más que por el uso llamadas a sistema
directas

 Las tres API más 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 máquina virtual
Java (JVM)

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Ejemplo de una API Standard

Implementación de Llamadas a Sistema

 Considere la función ReadFile() en la Win32 API—una función para leer de un

archivo

 Una descripción de los f the parámetros pasados a ReadFile()

 HANDLE file—el archivo a ser leído

 LPVOID buffer—un buffer donde el dato será leído y previamente escrito

 DWORD bytesToRead— el número de bytes a ser leídos en el buffer

 LPDWORD bytesRead— el número de bytes leídos durante la última lectura

 LPOVERLAPPED ovl—indica si es usada una E/S solapada

 Tipicamente se asocia un número con cada llamada al sistema

 La interfaz de las llamadas a sistema mantiene una tabla indexada de

acuerdo con estos números

 La interfaz de las llamadas a sistema invoca la llamada a sistema entendida

en el kernel del SO y retorna el estado de la llamada a sistema y retorna
algún valor

 El llamador no necesita conocer nada acerca de como está implementada

la llamada a sistema

 Solo necesita invocar la API y entender lo que hará el SO como

resultado de la llamada

 La mayoría de los detalles de la interfaz del SO están escondidos para

el programador por la API

Manejada por librerías run-time (conjunto de funciones construídas

en librerías incluídas con el compilador)

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Relación API – Llamada a Sistema del SO

Ejemplo de Librería Standard C

 Un programa C invocando la llamada de librería printf(), la cual llama

a la llamada a sistema write()

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Pasaje de Parámetros en Llamadas a Sistema

Parámetros Pasados vía Tabla

 Frecuentemente es requerida más información que simplemente identificar

la llamada a sistema deseada.

 El tipo exacto y la cantidad de información varía de acuerdo al SO la

llamada

 Se usan tres métodos para pasar parámetros al SO

 El más simple: pasar los parámetros en registros

En algunos casos, puede haber más parámetros que registros

 Parámetros almacenados en un bloque, o tabla, en memoria, y la

dirección del bloque pasada como parámetro en un registro.

Es así en Linux y Solaris

 Parámetros ubicados , o pushed, en un stack por el programa y popped

del stack por el SO.

 Lo métodos por bloque y stack no limitan el número de parámetros a

ser pasados

X

registro

X: parámetros

load @X

system call 13

se usan los
parámetros
desde la
tabla X





código para
system call
13

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Programa de

usuario

Sistema operativo

Tipos Llamadas a Sistema

Examples of Windows and Unix System Calls

 Control de procesos

 Administración de archivos

 Administración de dispositivos

 Mantenimiento de Información

 Comunicaciones

 Protección

Blue box from page 51

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

JRA © 2009

Sistemas Operativos – Estructura de Sistemas Operativos

Ejecución MS-DOS

Múltiples Progr
  • Links de descarga
http://lwp-l.com/pdf18019

Comentarios de: Estructura del Sistema Operativo (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad