La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Contenido Arranque del computador.

Presentaciones similares


Presentación del tema: "Contenido Arranque del computador."— Transcripción de la presentación:

0 Sistemas Operativos Tema 1 Introducción

1 Contenido Arranque del computador.
Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

2 Arranque del computador
El arranque de una computadora tiene dos fases: Arranque del hardware y arranque del Sistema Operativo (SO). El resumen de actividades son: Iniciador ROM: Test de hardware. Carga de memoria del cargador del SO. Control del cargador (boot) del SO: Carga de memoria de las componentes del SO. Inicialización bajo residente del SO: Test del sistema de archivos. Creación de estructuras de datos internas. Completa la carga del SO residente. Creación de procesos login. Puesta en fase normal de funcionamiento del SO. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

3 Iniciador ROM El hardware proporciona una memoria permanentemente grabada llamada memoria ROM. Existe un mapa de memoria permanente llamada Iniciador ROM con tres funciones: Comprobación del sistema y detectar sus características: tamaño de memoria principal, periféricos instalados, etc. Fase de lectura y almacenamiento en memoria del programa cargador del SO. Dar el control al programa cargador del SO. El cargador es una operación combinada de lectura de un programa almacenado en el periférico y almacenarlo en el programa principal. El iniciador ROM es independiente del SO. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

4 Arranque del computador
El Reset carga valores predefinidos en registros Cargador de Procesos (CP)  dirección de arranque del cargador ROM Se ejecuta el cargador ROM del sistema Test del sistema Trae a memoria el boot del SO En el caso del PC la ROM contiene, además, software de E/S (BIOS) Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

5 Ubicación del sistema operativo
El SO está almacenado en el disco. El cargador o Boot se encuentra en los primeros sectores del disco y tiene tamaño prefijado. Existe un convenio entre el inicializador ROM y el SO. La máquina permite diversos SO. El cargador del SO incluye una posición prefijada por el iniciador ROM. Esto permite verificar al iniciador ROM si en tal zona se encuentra el programa cargador. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

6 Arranque del sistema operativo
El cargador ROM carga el sector de boot del SO y le da control El boot del SO carga el SO residente y da control al programa de arranque del SO, que: Comprueba el hardware Comprueba el sistema de ficheros Establece las tablas del SO Crea procesos (según el tipo de SO) Proceso INIT Procesos o tareas del sistema (demonios) Procesos de login (uno por terminal) Tras la autenticación, el proceso login se convierte en shell Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

7 Contenido Concepto y funciones del sistema operativo.
Arranque del computador. Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

8 Concepto y funciones del sistema operativo
Un programa que actúa como intermediario entre el usuario de un computador y el hardware del mismo Objetivos del sistema operativo: Ejecutar programas y facilitar la solución de los problemas del usuario Hacer un uso conveniente del computador Usar el computador de forma eficiente Proporcionar una máquina virtual extendida Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

9 Funciones del sistema operativo
Gestor de recursos (UCP, memoria, ...) Asignación y recuperación de recursos: Control de asignación y liberación de programas. Prioridades entre programas. Recuperación de recursos y gestión de la memoria disponible. Detectar si el programa ha terminado o no es necesario. Protección de los usuarios: Asegurar la confidencialidad de la información y que unos trabajos no interfieran a otros. Contabilidad/monitorización: Medir la cantidad de recursos en uso. Conocer la carga de utilización de cada recurso y por cada usuario. La monitorización mide la carga de componentes del sistema. Soporte de usuario. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

10 Funciones del sistema operativo
Máquina extendida (servicios): Provee un conjunto de servicios o llamadas al sistema. Posee servicios de software que permiten ejecutar de forma cómoda y protegida ciertas operaciones. Cuatro clases de servicios: Ejecución de programas (procesos) Órdenes de E/S Operaciones sobre archivos Detección y tratamiento de errores Ejecución de programas: Servicios para ejecutar, parar o abortar programas. Servicios para conocer y modificar las condiciones de ejecución, para comunicar y sincronizar con otros programas. Proceso: programa en ejecución. Se traduce el programa a código máquina y es almacenado. El SO crea un proceso para ejecutar el programa. Varios procesos pueden estar ejecutando el mismo programa. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

11 Funciones del sistema operativo
Órdenes de E/S: La programación de operaciones de E/S es muy compleja y dependiente del hardware especifico. Los servicios del SO ofrecen un alto nivel de abstracción de forma que el usuario no tenga que preocuparse por esos detalles. Operaciones sobre archivos: Creación, borrado, renombrado, apertura, escritura y lectura. Detección y tratamiento de errores: Tratar las condiciones de error que detecte el hardware. Algunos errores: errores en las operaciones E/S, desbordamientos y violaciones de memorias, códigos de instrucción prohibidos, etc. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

12 Funciones del sistema operativo
Interfaz de usuario: El módulo del sistema que permite que los usuarios dialoguen de forma iteractiva con el sistema es el interprete de comandos o shell. Shell: Se comporta como un bucle infinito realizando las siguiente sequencia: Espera la orden del usuario. En el acaso de interfaz textual, el shell esta pendiente de la línea de comandos, y en interfaz gráfica de los eventos que se manipulan por el usuario. Analiza la orden y emplea los servicios necesarios. Concluida la orden vuelve a la espera. Casi todos los intérpretes de mandatos se pueden ejecutar como archivos de mandatos o scripts, que recojen funciones de control de flujo como for, if, etc.... Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

13 Concepto de usuario y grupo de usuarios
El usuario es una persona autorizada a usar un sistema informático. Se autentifica con su nombre y contraseña. El SO tiene un numero de cuentas con identificador (user identifier (uid)) y perfil. Existe un usuario privilegiado denominado superusuario o administrador sin restricciones. Los usuarios se organizan por grupos y todo usuario debe pertenecer a un grupo. Dichos grupos utilizan su propio modo de protección pudiendo ser distintos los derechos del usuario de los del grupo al que pertenece. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

14 Niveles del sistema operativo
El nucleo o kernel es la capa más cerca al hardware. Este nivel suministra la funcionalidad básica y es muy permisivo. La capa de servicios ofrece un interfaz de programación o API (Application Programming Interface). El interprete de mandatos o shell suministra un interfaz para que el usuario dialogue con el ordenador. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

15 Contenido Componentes y estructura de un sistema operativo.
Arranque del computador. Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

16 Componentes del SO Un sistema operativo esta formado por tres capas: el núcleo, los servicios y el interprete de mandatos o shell. El núcleo es la parte del sistema operativo que interacciona directamente con el hardware. Las funciones del núcleo se centran en la gestión de recursos, como el procesador, tratamiento de interrupciones y funciones básicas de manipulación de memoria. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

17 Componentes de un SO Los servicios se suelen agrupar según su funcionalidad en varios componentes. Cada uno de los cuales se ocupa de las siguientes funciones: Gestión de procesos. Creación, planificación y destrucción de procesos. Gestión de memoria. Componente encargada de saber que zonas de memoria están ocupadas, así como asignación y liberación de memoria. Gestión de la E/S. Se ocupa de facilitar el manejo de dispositivos periféricos. Gestión de archivos y directorios. Se encarga del manejo de archivos y directorios y de la administración de almacenamiento secundario. Comunicación y sincronización entre procesos. Encargada de ofrecer mecanismos para que los procesos puedan comunicarse y sincronizarse. Seguridad y protección. Este componente garantiza la identidad de los usuarios y define los recursos del sistemas que son permitidos a cada usuario. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

18 Estructura del sistema operativo
Un SO es un programa muy grande y complejo compuesto por las componentes que hemos visto. Dos grandes grupos: SO monolíticos. SO estructurados. Sistemas operativos monolíticos: Todas sus componentes se encuentran integrados en un solo programa (SO) que se ejecuta en un único espacio de direcciones. Todas la funciones del SO se ejecutan en modo núcleo. Surgen de SO pequeños y sencillos a los que se le añaden funcionalidades. Ej: MS-DOS y UNIX. Dificultad en añadir nuevas funcionalidades y servicios. Cambiar un programa muy grande con miles de líneas de código fuente. Necesidad de dotar de cierta estructura al SO. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

19 Estructura del sistema operativo
Sistemas operativos estructurados: Sistemas por capas: El SO se organiza como una jerarquía de capas, donde cada capa ofrece un interfaz clara y bien definida a la capa superior y solamente utiliza los servicios de la capa inferior. Modularidad y ocultar la información. Solo se necesita el interfaz que ofrece la capa anterior. Las capas se pueden ir construyendo y depurando por separado. Ej: SO THE [Dijkstra 1968], SO formado por 6 capas. SO OS/2 [Deitel, 1994] descendiente del MS-DOS. Modelo cliente-servidor: El enfoque consiste en implementar la mayor parte de los servicios y funciones del SO en procesos de usuario, dejando sólo una pequeña parte del sistema ejecutando en modo núcleo. A esta parte se le denomina micronúcleo y al resto de las funciones se les denomina servidores. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

20 Estructura cliente-servidor
Cada una de las partes del SO pueden desarrollarse por separado. Las gestiones del micronúcleo suelen ser gestión de interrupciones, gestión básica de proceso y de memoria y servicios de comunicación entre procesos. El proceso usuario llamado cliente, solicita el servicio al proceso servidor que puede requerir a su vez servicios de otros servidores (Ej, servidor de memoria. Procesos Procesos cliente servidores Servidor de Servidor Servidor de Servidor de Servidor de Servidor de Modo usuario archivos y de procesos memoria la E/S Seguridad API API directorios Comunicac. Micronúcleo Modo núcleo Hardware Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

21 Estructura cliente-servidor
Desventajas: presentan una mayor sobrecarga en el tratamiento de servicios monolíticos. Las distintas componentes se realizan en espacios de direcciones diferentes. MIMIX [Tanenbaum, 1998], Mach [Accetta, 1996] y Amoeba [Mullender, 1990] son ejemplos que siguen este modelo. Windows NT también sigue esta filosofía de diseño aunque con más servidores. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

22 Contenido Gestión de procesos. Arranque del computador.
Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

23 Gestión de procesos Un proceso es un programa en ejecución. De forma más precisa, se puede definir un proceso como la unidad de procesamiento gestionada por un sistema operativo. Un programa no es más que un conjunto de instrucciones máquina, mientras que un proceso surge cuando un programa se pone en ejecución. Un proceso necesita recursos, tales como UCP, memoria, ficheros, etc., para llevar a cabo su tarea. El SO tiene la responsabilidad de gestionar los siguientes aspectos de procesos: Creación y destrucción. Suspensión y reanudación. Asignación y mantenimiento de los recursos del proceso. Proporcionar mecanismos de sincronización y comunicación. Gestionar los interbloqueos. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

24 Elementos de un proceso
Al contenido de los segmentos de memoria en los que reside el código y los datos del proceso se le denomina imagen de memoria. Durante ejecución se cambia los registros del modelo de programación de la computadora. El contenido de los registros del modelo de programación es lo que se entiende como estado del procesador. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

25 Gestión de procesos. El sistema operativo mantiene por cada proceso una serie de estructuras de información que permite identificar las características de éste, así como los recursos que tiene asignados. El bloque de control del proceso (BCP) incluye entre otra información el estado de los registros del proceso, cuando no se está ejecutando. Dependiendo del número de procesos y de usuarios que puedan ejecutar simultaneamente un SO puede ser: Monotarea o monoproceso. Multitarea o multiproceso. El SO gestiona los procesos. Monousuario. Soporta un solo usuario. Multiusuario. Soporta diversos usuarios a la vez desde varios terminales. Los sistemas multiusuario reciben el nombre de tiempo compartido, porque el SO debe repartir el tiempo entre los usuarios. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

26 Servicios de procesos Crear un procesos Ejecutar un proceso
A partir de un proceso padre (UNIX). El hijo es una copia exacta del proceso padre. A partir de un archivo ejecutable (Windows NT). Ejecutar un proceso Se pueden ejecutar de dos formas: batch e iterativa. Un proceso batch no está asociado a ningún terminal. Deberá tomar sus datos de entrada de un fichero y depositar sus resultados en otros. Ej: gestión de nóminas. Un proceso en modo iterativo está asociado a un terminal, por el que recibe la información del usuario y contesta con resultados. Ej: edición. Terminar la ejecución de un proceso Se termina de ejecutar el programa. Se produce una condición de error en su ejecución. Otro proceso o el usuario deciden que ha de terminar. Muerte del proceso Cambiar el programa que ejecuta un proceso por otro programa almacenando en disco. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

27 Contenido Comunicación y sincronización de procesos.
Arranque del computador. Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

28 Comunicación y sincronización entre procesos
Los procesos son entes independientes y aislados, donde por razones de seguridad no deben interferir unos con otros. En trabajos complejos, varios procesos que cooperan entre si deben comunicarse para transmitirse datos y órdenes, además de sincronizar la ejecución de sus acciones. Los mecanismos básicos de comunicación a través de cadenas de bytes deben de permitir la interpretación del mensaje. Deben ponerse de acuerdo en la longitud y el tipo de datos utilizados. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

29 Servicios de comunicación y sincronización
Dependiendo del servicio utilizado, la comunicación se limita a procesos de una máquina (procesos locales) o puede involucrar a proceso de máquinas distintas (proceso remotos). Servicios de comunicación: Crear el mecanismo de comunicación Enviar datos a un proceso Recibir datos de un proceso Destruir el servicio de comunicación La comunicación puede ser síncrona o asíncrona. En comunicación síncrona el emisor ha de estar en el servicio de enviar y el receptor de recibir. Uno esta en espera a que el otro ejecute. En comunicación asíncrona el emisor no espera a que el receptor solicite el servicio. Esto obliga al SO a un almacenamiento intermedio para guardar la información hasta que el receptor la solicite. Servicios de sincronización Crear el mecanismo de sincronización Bloquear un proceso hasta que ocurra un evento Despertar a un proceso bloqueado Destruir el mecanismo de sincronización Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

30 Tipos de comunicación Comunicación síncrona
Los dos procesos han de ejecutar los servicios de comunicación al mismo tiempo Comunicación asíncrona Los dos procesos no tiene que ejecutar los servicios de comunicación al mismo tiempo Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

31 Contenido Gestión de memoria. Arranque del computador.
Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

32 Gestión de memoria Memoria: vector enorme de palabras o bytes, cada uno con su propia dirección. Compartido por UCP y dispositivos E/S. Volátil: pierde su contenido si el sistema falla. El SO tiene la responsabilidad de gestionar los siguientes aspectos de la memoria: Asignar memoria a los proceso para crear su imagen de memoria. Mantener un mapa de las partes de memoria en uso y saber quién las está usando. Decidir qué procesos se deben cargar, y dónde, cuando hay memoria disponible. Asignar y liberar espacio de memoria cuando sea necesario. Tratar errores de acceso a memoria, evitando que unos procesos interfieran en la memoria de otros. Ofrecer servicios para que los procesos puedan compartir memoria. Gestionar la jerarquía de memoria y tratar los fallos de página con la memoria virtual Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

33 Servicios de gestión de memoria
Solicitar memoria: Aumenta el espacio de datos de la imagen de memoria del proceso. El SO satisface esta petición siempre que tenga recursos. En general, el sistema operativo devuelve un apuntador de la nueva memoria. Liberar memoria: Este servicio sirve para devolver trozos de memoria del proceso. El SO recupera el recurso liberado y lo añade a la lista de recursos libres. Compartir memoria: El gestor de memoria se encarga de ofrecer servicios que permiten que los procesos puedan comunicarse utilizando un segmento de memoria compartida. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

34 Contenido Gestión de E/S. Arranque del computador.
Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

35 Gestión de E/S El gestor de E/S debe alcanzar los siguientes objetivos: Facilitar el manejo de dispositivos periféricos. Para ello debe ofrecer una interfaz sencilla, uniforme y fácil de utilizar entre los dispositivos, y gestionar los errores que se pueden producir en el acceso a los mismos. Ofrecer mecanismos de protección que impidan a los usuarios acceder sin control a los dispositivos periféricos. El gestor de E/S está formado por: Un sistema global de almacenamiento intermedio en memoria. Manejadores genéricos, uno por cada clase, de dispositivos. Manejadores específicos para cada dispositivo. Almacenamiento secundario no volátil en dispositivos rápidos de E/S (discos, NAD, etc.) como respaldo de la memoria. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

36 Servicios de E/S El SO tiene la responsabilidad de gestionar los siguientes aspectos de la E/S y el almacenamiento secundario: Traducir peticiones a formato de manejador. Copiar memoria de/a memoria a/de controlador. Controlar operaciones por DMA. Controlar dispositivos de E/S serie: teclado, ratón, etc. Asignación y liberación de espacio. Planificación de accesos a los dispositivos. Servicios orientados a caracteres Impresoras, terminales Servicios orientados a bloques La operación de E/S se hace sobre un bloque de información de un número fijo de caracteres Discos Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

37 Contenido Gestión de archivos y directorios. Arranque del computador.
Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

38 Gestión de archivos y directorios
Archivo: conjunto de información lógicamente relacionada y definida por su creador. Directorio: conjunto de identificadores lógicos de archivos y su relación con identificadores internos del SO. Archivos frecuentes: programas (fuentes y ejecutables) y datos. El SO tiene la responsabilidad de gestionar los siguientes aspectos del servicio de archivos: Creación y borrado de archivos y directorios. Primitivas para manipular archivos y directorios. Proyectar los ficheros sobre almacenamiento secundario. Hacer respaldo de archivos sobre dispositivos estables y no volátiles. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

39 Visión lógica del sistema de archivos
Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

40 Servicios de archivos Un archivo es una unidad de almacenamiento lógico no volatil que agrupa un conjunto de información relacionada bajo el mismo nombre. Entre las informaciones más usuales en un archivo cabe destacar: Tipo de archivo (datos, ejecutable, etc...) Propietario del archivo (identificador de usuario y grupo del usuario) Tamaño del fichero Instante de creación, última modificación, último acceso. Derechos de acceso. La solución más común en su visión lógica es tratarlo como un vector de bytes o caracteres. La ventaja de esta visión en vector es su flexibilidad, puesto que no supone ninguna estructura especifica interna del archivo. La visión lógica supone un puntero a posición. Este puntero permite hacer operaciones de lectura y escritura consecutivas si tener que indicar la posición de la operación. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

41 Visión lógica de un archivo
La visión física está formada por los elementos físicos del periférico que soportan al archivo. En discos supone la enumeración de los bloques de disco que supone el archivo. Debe existir una estructura de información que recoja la composición física de cada archivo que se denomina descripción física del archivo. Esta estructura es la FAT en MS-DOS y el nodo-i en UNIX. Estas estructuras han de residir en el propio periférico para poder ser autocontenido y transportarse de un sistema a otro. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

42 Visión física de un archivo
Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

43 Servicios de archivos Crear un archivo: interpretación de que el nombre es correcto y el usuario puede hacer la operación solicitada. Abrir un archivo: comprueba que el fichero existe, que el usuario tiene derechos de acceso, y trae a memoria información del objeto. Escribir y leer: utilizan el identificador, descriptor o manejador del archivo. Lectura: se expecifica el identificador, la posición de memoria y la cantidad de información a leer. Idem Escribir. Cerrar un archivo: elimina el identificador temporal obtenido en la apertura y libera los recurso de memoria ocupados. Borrar un archivo: Se borra su nombre del correspondiente directorio y la información auxiliar que se necesita para ofrecer una visión lógica de una archivo. Se crea el archivo ! Se abre: se genera un descriptor de archivo ! Se escribe y lee (el archivo puede crecer) ! Se cierra ! Se borra ! Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

44 Esquema jerárquico de un directorio
En un directorio se relaciona de forma unívoca un nombre con un archivo. El servicio de directorios también presenta una visión lógica y una visión física. La visión lógica consiste en el esquema jerárquico de nombres mostrado en la figura. Directorio raiz, camino absoluto, camino relativo /Textos/Tipo/Sec1/Ap11 Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

45 Servicios de directorios
Permite una gestión distribuida de los nombres para garantizar que no existan nombres repetidos. La visión física de directorios consiste en unas estructuras de información que permiten relacionar cada nombre lógico con la descripción física del correspondiente archivo. Se trata de una tabla NOMBRE-IDENTIFICADOR por cada subdirectorio. El IDENTIFICADOR es una información que permite localizar la descripción física del archivo. Servicios del directorio: Crear: Lo crea y lo sitúa en el árbol de directorios. Borrar: Elimina el objeto de forma que no pueda ser ya accesible y borra su entrada del árbol de directorios. Abrir: Abre un directorio para leer los datos del mismo. Esto es necesario para acceder a su contenido. Devuelve al usuario un identificador, para su manipulación. Leer: Extrae la siguiente entrada y devuelve una estructura de datos como la que define la entrada de directorios. Cerrar: Cierra el directorio, liberando el identificador devuelto en la operación de apertura, así como los recursos de memoria y del SO relativos al mismo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

46 Sistema de archivos Se denomina sistema de archivos al conjunto de archivos incluidos en una unidad de disco. Se denomina metainformación a toda la información auxiliar que es necesario para mantener un volumen. La metainformación esta compuesta por los siguientes elementos: Estructura física de los archivos (nodos-i en UNIX o FAT en MS-DOS). Directorios (archivos que contienen las tablas nombre-puntero). Estructura física del sistema de archivos (superbloque en UNIX). Estructura de información de bloques y nodos-i libres (mapas de bits). Cada SO organiza las particiones del disco de formas diferentes, repartiendo el espacio disponible entre: el programa de carga (boot) del sistema operativo, la metainformación y los datos. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

47 Contenido Seguridad y protección. Arranque del computador.
Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

48 Seguridad y protección
Protección: controlar accesos a los recursos de usuario y sistema. El servidor de protección debe: Distinguir entre uso autorizado y no autorizado. Especificar los controles de acceso a llevar a cabo. Proporcionar métodos de control de acceso. Seguridad: proteger al sistema de un uso indebido. La seguridad reviste dos aspectos, uno es la de garantizar la identidad de los usuarios y otro es definir lo que puede hacer cada uno de ellos. El primer aspecto se trata bajo el termino autentificador, mientras que el segundo se hace mediante los privilegios. Los privilegios especifican los recursos a los que puede acceder cada usuario. Se suele organizar la información en grupos, asignando privilegios a los grupos. El servidor de seguridad debe: Autenticar a los usuarios. Evitar amenazas al sistema (gusanos, virus, piratas, fuego, etc.) Evitar la intercepción de comunicaciones: cifrado, canales seguros, etc. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

49 Contenido Activación del sistema operativo. Arranque del computador.
Concepto y funciones del sistema operativo. Componentes y estructura de un sistema operativo. Gestión de procesos. Comunicación y sincronización de procesos. Gestión de memoria. Gestión de E/S. Gestión de archivos y directorios. Seguridad y protección. Activación del sistema operativo. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

50 Activación de los servicios del SO
El SO es un servidor que esta en espera a que se le encargue un trabajo. Fuentes de las peticiones. Mandatos de los usuarios interpretados por el shell. Llamadas al sistema emitidas por los programas. Interrupciones producidas por los periféricos. Condiciones de excepción o error del hardware. Los mecanismos para romper la secuencia lineal de ejecución son dos: las instrucciones de bifurcación y las interrupciones. El primero de estos mecanismos no sirve para invocar al SO, puesto que el proceso se ejecuta en el nivel de usuario y el SO ha de ejecutar a nivel de núcleo y en espacios de direcciones distintos. Por tanto, la activación del sistema operativo solamente se realiza mediante el mecanismo de interrupciones. Cuando un programa en un lenguaje de alto nivel como C, la solicitud del servicio al SO se hace con una llamada a función. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

51 Fases en la activación del SO
Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

52 Servicios del SO: llamadas al sistema
Interfaz entre aplicaciones y SO. Generalmente disponibles como funciones en ensamblador. Actualmente en otros lenguajes de alto nivel (C, Bliss, …). Esta funciones se componen de: Una parte inicial que prepara los parámetros del servicio de acuerdo con la forma en que los espera el SO. La instrucción TRAP, que genera una interrupción para dar paso al SO. La parte final que recupera los parámetros de contestación del SO, para devolverlos al programa que los llamó. Servicios típicos del sistema operativo Gestión de procesos Gestión de procesos ligeros Gestión de señales, temporizadores Gestión de memoria Gestión de ficheros y directorios Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

53 Paso de los parámetros a las llamadas
Ejemplos de llamada read: permite leer datos de un fichero fork: permite crear un nuevo proceso Tres métodos genéricos para pasar parámetros a las llamadas al sistema: En registros. En una tabla de memoria, cuya dirección se pasa al SO en un registro. Poner los parámetros en la pila del programa y dejar que el SO los extraiga. Cada SO proporciona sus propias llamadas al sistema: Estándar POSIX en UNIX y LINUX. Win32 en Windows NT. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

54 Servicios del SO Los servicios se programan mediante sentencias de un lenguaje (p.e. C) Estas sentencias son como llamadas a función Se convierten, mediante una rutina de biblioteca de sistemas en un conjunto de instrucciones de máquina que terminan con una instrucción de trap El trap, como toda interrupción es tratada por el SO El SO realiza el servicio pedido y devuelve un valor Ejemplo: int fork() { int r; LOAD R8, FOR_SYSTEM_CALL TRAP LOAD r, R9 return r; } Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

55 Paso de llamadas al sistema
Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez

56 Ejemplo Si el programa quiere escribir datos en un archivo, el código del programa de usuario hace un CALL a la rutina en código máquina write, con código similar al mostrado con fork. Se preparan los parámetros de la operación escritura y se ejecuta una instrucción TRAP. El SO identifica la interrupción y la trata como una solicitud de servicio. El SO ejecuta la rutina que lanza la pertinente operación E/S. Se ejecuta el planificador y la activación da paso a la ejecución de otro proceso. Cuando el periférico termina la operación, su controlador genera una solicitud de interrupción que es tratada por el SO. En este momento la rutina de código máquina write recibe los parámetros que ha devuelto el SO y ejecuta un RET para volver al programa de usuario que la llamó. Sistemas operativos: una visión aplicada © J. Carretero, F. García, P. de Miguel, F. Pérez


Descargar ppt "Contenido Arranque del computador."

Presentaciones similares


Anuncios Google