Introduccin - PowerPoint PPT Presentation

1 / 37
About This Presentation
Title:

Introduccin

Description:

Un fichero tiene un nombre. Absoluto, desde el directorio ra z (root directory) ... Los tres segmentos de un proceso: texto, datos, pila. brk (newDirection) ... – PowerPoint PPT presentation

Number of Views:49
Avg rating:3.0/5.0
Slides: 38
Provided by: steve1903
Category:

less

Transcript and Presenter's Notes

Title: Introduccin


1
Introducción
  • Capítulo 1

1.1 Qué es un sistema operativo? 1.2 Evolución
de los sistemas operativos 1.3 Tipos de sistemas
operativos 1.4 Recordando aspectos hardware 1.5
Conceptos de sistemas operativos 1.6 Llamadas al
sistema 1.7 Estructuras de los sistemas
operativos
2
Introducción
Acceso a periféricos
Ruta de datos ALU Registros CPU
  • Un ordenador consiste de
  • hardware
  • Programas del sistema
  • Programas de aplicación

3
Qué es un sistema operativo? (1)
  • Es una máquina extendida
  • Esconde los detalles del hardware
  • Presenta una máquina virtual
  • instrucciones del
  • lenguaje máquina
  • Presenta abstracciones fichero, proceso, I/O,
    memoria
  • Por ejemplo lectura de un fichero (Minix)

llamadas al sistema
4
Qué es un sistema operativo? (2)
5
Qué es un sistema operativo? (3)
2427/ puertos de E/S utilizados por la tarea de
floppy disk / define DOR 0x3F2 / bits de
control del motor / define FDC_STATUS 0x3F4 /
registro de estado controlador / define
FDC_DATA 0x3F5 / registro de datos del
controlador / define DMA_ADDR 0x004 / puerto
16 bits inferiores dir DMA / define
DMA_TOP 0x081 / puerto 4 bits superiores dir
DMA / define DMA_COUNT 0x005 / puerto para
cuenta de DMA / define DMA_M2 0x00C / puerto
de estado de DMA / define DMA_M1 0x00B /
puerto de estado de DMA / define
DMA_INIT 0x00A / puerto de inicialización de
DMA / 2466 / bytes de comandos para el
controlador de floppy / define FDC_SEEK 0x0F
/ comando de búsqueda a la unidad / define
FDC_READ 0xE6 / comando de lectura a la unidad
/ define FDC_WRITE 0xC5 / comando de escritura
a la unidad / define FDC_RECALIBRATE 0x07 /
vete al cilindro 0 / 2490 / códigos de error
/ define ERR_SEEK -1 / error en búsqueda
/ define ERR_TRANSFER -2 / error en
transferencia / define ERR_STATUS -3 / error
al obtener el estado / define ERR_RECALIBRATE
-4 / error al recalibrar / define
ERR_WR_PROTECT -5 / disquete protegido contra
escritura / define ERR_DRIVE -6 / algo va mal
con la unidad /
6
Qué es un sistema operativo? (4)
  • Es un gestor de recursos
  • Memoria, procesador, discos, impresoras,
  • Dispositivos no compartidos (impresora)
  • Protección de memoria
  • Quién utiliza qué recurso?
  • Multiplexación de recursos en tiempo y espacio

7
Evolución sistemas operativos (1)
  • Primera generación 1945 - 1955
  • tubos de vacío, tarjetas cableadas
  • Segunda generación 1955 - 1965
  • transistores, sistemas batch
  • Tercera generación 1965 1980
  • circuitos integrados y multiprogramación
  • Cuarta generación 1980 hoy
  • Ordenadores personales

8
Evolución sistemas operativos (2)
  • Primeros sistemas batch (2ª generación)
  • lleva las tarjetas al 1401
  • Lee tarjetas a la cinta
  • Monta la cinta en el 7094 que realiza el cálculo
  • Monta la cinta en 1401 que imprime los resultados

9
Evolución sistemas operativos (3)
  • Un trabajo FORTRAN 2ª generación

10
Evolución sistemas operativos (4)
  • 3ª generación
  • - Multiprogramación
  • - Simultaneous Peripheral Operation On Line
  • - Tiempo compartido CTSS, MULTICS, UNIX

11
Evolución sistemas operativos (5)
  • 4ª generación
  • - Alta escala de integración microcomputadores
  • - Control Program for Microcomputer
  • - Disk Operating System
  • - MicroSoft Disk Operating System
  • - Graphical User Interface
  • - Windows 3.x, 95, 98, NT, 2000, Me, XP, Vista
  • - Linux (Red Hat, Debian, Caldera, ...)
  • - Sistemas operativos de Red
  • - Sistemas operativos distribuidos
  • 1.2.5 (leerlo)

12
Tipos de sistemas operativos (1)
  • Sistemas operativos para mainframe
  • Batch, transacciones, tiempo compartido
  • OS/390
  • Sistemas operativos para servidores
  • Servicios de impresión, ficheros, web
  • Unix, Windows 2000, Linux
  • Sistemas operativos multiprocesador
  • Unix, Encore
  • Sistemas operativos para ordenadores personales
  • Sistemas operativos de tiempo real
  • Hard real-time system, soft real-time system
  • Sistemas operativos empotrados (embarcados)
  • PalmOS, Windows CE
  • Sistemas operativos para tarjeta inteligentes

13
Conceptos de sistemas operativos (1)
  • Proceso
  • Un programa en ejecución.
  • Espacio de direccionamiento
  • Código (texto)
  • Datos
  • Pila
  • Contexto (entrada a la tabla de procesos)
  • Registros de la CPU
  • PC, SP, PSW (SR).
  • Tabla de ficheros abiertos
  • Mapa de memoria
  • .......

14
Conceptos de sistemas operativos (2)
  • Proceso
  • operaciones asociadas a un proceso
  • Crear un proceso (relación padre-hijo)
  • Terminar un proceso
  • Comunicación y sincronización entre procesos
  • Pedir/Liberar memoria
  • Esperar a que termine uno de los hijos
  • Cargar una imagen de texto
  • Establecer/tratar/enviar señales
  • Un proceso tiene varios identificadores
  • uid, identificador del propietario del proceso
  • pid, identificador del propio proceso
  • gid, identificador del grupo al que pertenece el
    proceso

15
Conceptos de sistemas operativos (3)
  • Interbloqueo entre procesos

Los interbloqueos se producen por la competencia
entre procesos por conseguir los recursos del
sistema
16
Conceptos de sistemas operativos (4)
  • Gestión de memoria
  • Asignación/Liberación de memoria
  • Mecanismos de protección
  • Gestión de huecos y compactación
  • Gestión de la memoria virtual (paginación,
    segmentación)
  • Gestión de dispositivos de E/S
  • Teclados, monitores, impresoras, discos, ...
  • Software de E/S independiente del dispositivo
    (protección,
  • buffering, esquema de nombrado, tamaño de
    bloque, ...)
  • Software de entrada salida dependiente del
    dispositivo (drivers)

17
Conceptos de sistemas operativos (5)
  • Sistema de ficheros

18
Conceptos de sistemas operativos (6)
  • Operaciones sobre ficheros
  • Crear, abrir, cerrar, leer, escribir, posicionar,
    borrar, ...
  • Un directorio también es un fichero (árbol)
  • Un fichero tiene un nombre
  • Absoluto, desde el directorio raíz (root
    directory)
  • /Faculty/Prof.Brown/Courses/CS101
  • Relativo al directorio de trabajo (working
    directory)
  • si wk /Faculty/Prof.Brown,
  • Courses/CS101
  • Existe una llamada para establecer el directorio
    de trabajo
  • Descriptor de fichero
  • Cuando se abre un fichero, el SO devuelve un
    identificador

19
Conceptos de sistemas operativos (7)
  • Sistema de ficheros montado
  • Antes de montar
  • Los ficheros del disquete son inaccesibles
  • Después de montar el floppy en b,
  • Los ficheros del disquete forman parte del
    sistema de ficheros

20
Conceptos de sistemas operativos (8)
  • Tipos de ficheros
  • Ficheros ordinarios (regulares)
  • Ficheros especiales
  • Los dispositivos de E/S se ven como ficheros.
  • Especial de bloques (por ejemplo, discos,
    /dev/hd01)
  • Especial de caracteres (por ejemplo, impresora
    /dev/lpt)
  • Tuberías (pipes)
  • Un pseudofichero
  • Dos descriptores para leer y para escribir
  • Comunican procesos

21
Conceptos de sistemas operativos (9)
  • Shell
  • Intérprete de comandos
  • No es parte del sistema operativo
  • sh, csh, ksh, bash
  • Crea procesos para ejecutar comandos
  • Gestiona las redirecciones (entrada/salida) y
    pipes
  • cat file1 file2 file3 sort gt /dev/lp
  • Ejecución en background
  • cat file1 file2 file3 sort gt /dev/lp
  • Seguridad
  • Bits rwx de los ficheros (3 juegos propietario,
    grupo, otros)
  • rwx rwx rwx
  • 1.5.8 (leerlo)

22
Llamadas al sistema (1)
Veremos llamadas en POSIX Son invocaciones de
rutinas de biblioteca
23
Llamadas al sistema (2)
?
  • Ejemplo count read (fd, buffer, nbytes)

24
Llamadas al sistema (3)
25
Llamadas al sistema (4)
  • Esqueleto de una shell
  • while (TRUE) / repeat forever /
  • type_prompt( ) / display prompt /
  • read_command(command, parameters) / input
    from terminal /
  • if (fork() ! 0) / fork off child process
    /
  • / Parent code /
  • waitpid (-1, status, 0) /
    wait for child to exit /
  • else
  • / Child code /
  • execve (command, parameters, 0) / execute
    command /

26
Llamadas al sistema (5)
27
Llamadas al sistema (6)
28
Llamadas al sistema (7)
Link
(a) Antes de que ast haga link
(/usr/jim/memo, /usr/ast/note) (b) Los
mismos directorios después de la llamada al
sistema
29
Llamadas al sistema (8)
Mount
(a) Sistema de ficheros antes de mount
(/dev/fd0, /mnt/, 0) (b) Sistema de ficheros
después de la llamada al sistema
30
Llamadas al sistema (9)
31
Llamadas al sistema (10)
brk (newDirection)
  • Los tres segmentos de un proceso texto, datos,
    pila

(La sección 1.6.5 no entra para el examen)
32
Estructura de los S.O. (1)
  • Sistema monolítico

Llamadas al sistema
33
Estructura de los S.O. (2)
Sistemas por capas
  • Capas del sistema operativo Minix

34
Estructura de los S.O. (3)
Máquinas virtuales
  • Estructura del VM/370 con CMS

35
Estructura de los S.O. (4)
Exokernels
  • El exokernel crea N máquinas virtuales y cada una
    tiene asignado un subset de los recursos hardware
    de la máquina real.
  • El exokernel (en modo kernel) valida que el
    acceso a los recursos sea correcto.

36
Estructura de los S.O. (5)
  • El modelo cliente-servidor

37
Estructura de los S.O. (6)
  • Modelo cliente-servidor en un sistema distribuido

(La sección 1.8 no entra para el examen ni las
últimas secciones del resto de los temas que sean
investigación en )
Write a Comment
User Comments (0)
About PowerShow.com