Your SlideShare is downloading. ×
  • Like
Introducción a los Sistemas Operativos
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

Introducción a los Sistemas Operativos

  • 7,445 views
Published

 

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
7,445
On SlideShare
0
From Embeds
0
Number of Embeds
3

Actions

Shares
Downloads
49
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • inicio
  • Una API (del inglés Application Programming Interface - Interfaz de Programación de Aplicaciones ) es un conjunto de especificaciones de comunicación entre componentes software . Se trata del conjunto de llamadas al sistema que ofrecen acceso a los servicios del sistema desde los procesos y representa un método para conseguir abstracción en la programación , generalmente (aunque no necesariamente) entre los niveles o capas inferiores y los superiores del software

Transcript

  • 1. SISTEMAS OPERATIVOS
  • 2. Definición de SO
    • Máquina desnuda :
    • computadora que carece de SO. El término pone de relieve que una máquina sin SO no resulta útil. Un ordenador sólo es capaz de repetir una sencilla secuencia de operaciones a alta velocidad: leer instrucción máquina, incremento del contador del programa y ejecución.
    • Para que la máquina realice una determinada función debe tener un programa cargado en MP y ha de conseguir que el contador del programa apunte a la dirección de comienzo.
    • Misión del SO:
    • revestir a la máquina, añadiendo funcionalidad que permita su cómodo manejo y utilización
  • 3.
    • Funciones básicas del SO
    • gestión de recursos del equipo
    • ejecución de servicios para los programas
    • ejecución de mandatos de los usuarios
    • Todas ellas se caracterizan por pretender facilitar el uso del hardware.
    • Como se indica en la siguiente transparencia, el SO se articula en 3 capas principales. La más cercana al núcleo se denomina kernel , y es la encargada de gestionar los recursos hardware del sistema, suministrando la funcionalidad básica del SO.Esta capa ha de ejecutarse en nivel núcleo.
    Definición de SO
  • 4. Núcleo Servicios Programas Usuarios Shell Sistema operativo API Hardware Definición de SO
  • 5. La capa de servicios (o llamadas al sistema ) ofrece a los programas servicios en forma de interfaz de programación (API). Esta capa extiende la funcionalidad ofrecida por el kernel. Se suele decir que el SO ofrece a los programas una máquina virtual extendida (con funcionalidad añadida). La capa de intérprete de comandos o shell suministra una interfaz a través de la que el usuario puede interactuar con la máquina. La shell recibe comandos u órdenes de los usuarios, los interpreta y si puede los ejecuta. La shell suele ejecutarse en nivel de usuario. A continuación se analizan las diversas facetas de la funcionalidad de los SSOO. Definición de SO
  • 6.
    • El SO como gestor de recursos
    • En un ordenador suelen ejecutarse simultáneamente diferentes programas, que compiten por el uso de los recursos del sistema. Es el SO quien ha de arbitrar su uso y asignación. Además, el SO ha de garantizar la protección de unos programas frente a otros, suministrando información sobre el uso que se hace de los recursos.
    • Asignación de recursos: el SO ha de mantener estructuras de datos que le permitan saber qué recursos están libres y cuáles ocupados. La asignación de recursos se hace según su disponibilidad y la prioridad de los programas solicitantes. Es muy importante la recuperación de los recursos, de forma que cuando no estén en uso se liberen para su posible uso por parte de otros programas.
    Definición de SO
  • 7.
    • Protección: el SO debe garantizar la protección entre los usuarios del sistema. Ha de asegurar la confidencialidad de la información, y que no haya interferencias entre los trabajos en ejecución. Los recursos asignados a un programa no podrán ser asignados a ningún otro.
    • Contabilidad: el SO debe medir el nivel de uso de los recursos a lo largo de la ejecución de los programas. Así puede conocer la carga de uso de los recursos. Cuando la contabilidad se usa únicamente para conocer la carga de los componentes del sistema se habla de monitorización.
    Definición de SO
  • 8.
    • El SO como máquina extendida
    • El SO ofrece a los programas un conjunto se servicios denominados llamadas al sistema . Permiten ejecutar de forma cómoda y segura ciertas operaciones que manejan los recursos del sistema. Cuatro clases de llamadas: ejecución de programas (lanzar ejecución de programas, abortar, conocer las condiciones de ejecución, comunicar y sincronizar), operaciones de E/S (lectura, escritura y modificación de periféricos), operaciones de archivos y directorios (creación, borrado, renombrado, apertura, escritura, lectura) y detección y tratamiento de errores (errores en las operaciones de E/S, en accesos a memoria, en operaciones aritméticas, etc)
    Definición de SO Ocultar los detalles del hardware al usuario y proporcionar un entorno más cómodo. (Recursos Virtuales)
  • 9.
    • El SO como interfaz de usuario
    • El SO ha de permitir al usuario un diálogo interactivo con el sistema. Esto se logra mediante el intérprete de comandos o shell . El shell se comporta como un bucle infinito, que repite incesantemente la siguiente secuencia:
      • esperar nueva orden del usuario
      • analizar la orden y ejecutarla (usando para ello los servicios pertinentes del SO)
      • vuelta a modo de espera (hasta que llegue la nueva orden)
    • La mayoría de los SO ofrecen intérpretes de comandos que permiten la ejecución de archivos de mandatos o shell scripts . En ellos se incluyen varios mandatos, junto con instrucciones especiales que controlan en flujo de ejecución.
    Definición de SO
  • 10.
    • Deben quedar claros los siguientes conceptos:
    • Usuario: persona autorizada a utilizar el sistema. Se identifica mediante un nombre de cuenta y una clave. El SO no asocia el concepto de usuario con el de persona física. Por ejemplo, podría pensarse en un usuario genérico para todos los alumnos de una asignatura. Internamente el SO asigna a cada usuario un identificador ( uid : user identification ) y un perfil. En él se describen los permisos concedidos al mismo: es decir, las operaciones que puede realizar.
    • Usuario privilegiado (superusuario, administrador, root), al que se le concede autorización para realizar todas las operaciones posibles. Este usuario es imprescindible para administrar el sistema
    Definición de SO
  • 11.
    • Los usuarios se organizan en grupos (por ejemplo, en una Univ. podría haber un grupo de alumnos, otro de profesores, otro de personal de servicios, etc). Todo usuario ha de adscribirse a un grupo. La figura del grupo también se emplea en la protección del sistema, ya que los derechos de un usuario son los suyos propios más los recibidos por pertenecer a su grupo.
    Definición de SO
  • 12. Arranque del Equipo En el arranque de un equipo se pueden distinguir dos fases:arranque hardware y arranque del SO. a) Arranque hardware . Al ser la MP volátil, al encender el equipo la MP está vacía. Al no disponer de programa que ejecutar, el ordenador no es capaz de realizar ninguna tarea. Actualmente, los equipos suelen disponer de un programa especial permanentemente grabado en una memoria ROM (no volátil).
  • 13.
    • Como se observa en la figura anterior, parte del mapa de memoria está constituido por una memoria ROM no volátil. El programa especial cargado en este tipo de memoria se denomina iniciador ROM .
    • Al arrancar el equipo (o pulsar el botón de RESET), se genera una señal eléctrica que produce la carga de los registros del procesador, de forma que el contador del programa contendrá la dirección de comienzo del programa iniciador. Este programa realizará las siguientes tares:
    • comprobación del sistema, para determinar sus características (cantidad de MP, periféricos instalados, etc) y comprobar si el conjunto funciona de forma correcta.
    • fase de lectura y almacenamiento en memoria del programa cargador del SO (carga == lectura de periférico + almacenado en disco)
    Arranque del Equipo
  • 14.
    • dar control al programa cargador del SO.
    • Para mayor flexibilidad se hace que el iniciador ROM sea independiente del SO, de forma que en una misma máquina se puedan ejecutar diferentes SSOO.
    • En el caso de un PC la memoria ROM contiene software de E/S, denominado BIOS (Basic input-output system). La BIOS es proporcionado por el fabricante del equipo y contiene procedimientos para leer y escribir de disco, leer caracteres del teclado y escribir en pantalla.
    • El SO se encuentra almacenado en una unidad de disco, como se muestra en la transparencia siguiente. Por tanto, el cargador del SO (boot) se encuentra en cierta zona del disco (usualmente 4 primeros sectores del disco) y tiene un tamaño prefijado.
    Arranque del Equipo
  • 15. Programa cargador (identificador) Disco Sistema Operativo Como se indicó con anterioridad, el iniciador ROM trae a MP el cargador del SO. El programa iniciador y el SO tienen un convenio sobre la ubicación, dirección de arranque y tamaño del cargador del SO. De esta forma el iniciador ROM es independiente del SO en tanto en cuanto siga este convenio. Para mayor seguridad el programa cargador del SO incluye en una posición prefijada una contraseña. Así el iniciador puede comprobar si la información en el sector es en realidad un cargador. Arranque del Equipo
  • 16.
    • b) Arranque del SO . El cargador del SO aloja en memoria algunos componentes del SO. Cuando estén cargados se pasa a la fase de iniciación, que consta de las siguientes etapas:
    • comprobación del sistema: más pruebas del hardware, comprobación del sistema de archivos, etc. Operación costosa, ya que ha de revisar todos los directorios del sistema de archivos.
    • establecimiento de las estructuras de información propias del SO, tales como la tabla de procesos, las tablas de memoria y las de E/S.
    • carga en MP de la parte del SO que siempre ha de estar residente (sistema operativo residente).
    • creación de proceso de inicio ( login ) para cada terminal, así como algunos procesos auxiliares y demonios (de impresión, de comunicaciones, etc….).
    Arranque del Equipo
  • 17.
    • Los procesos de inicio presentan en cada terminal el mensaje de bienvenida y quedan a la espera de que un usuario arranque una sesión. Para ello ha de teclear su nombre de usuario y su clase (password). El proceso de inicio autentica al usuario, comprobando la validez de los datos introducidos y lanza un proceso shell , para ejecutar uno o varios archivos de mandatos.
            • DOS: autoexec.bat
            • UNIX: .login, .cshrc, etc
    • Después quedan a la espera de recibir órdenes por parte del usuario.
    Arranque del Equipo
  • 18. Componentes y estructura del SO
    • Se suele considerar que el SO está compuesto de tres capas: núcleo, servicios e intérprete de mandatos (o shell ).
    • El núcleo es la parte del SO centrado en la gestión de los recursos: procesador, tratamiento de interrupciones y funciones básicas de manipulación de memoria. Los servicios se suelen agrupar por su funcionalidad:
    • gestión de procesos: creación, planificación y destrucción de procesos
    • gestión de memoria: detectar y controlar zonas de memoria libres y ocupadas, asignación y liberación de memoria según se requiera, etc
    • gestión de E/S: facilitar el manejo de los periféricos
    • comunicación y sincronización de procesos
    • seguridad y protección
  • 19. Núcleo POSIX Programas de usuario Usuarios Sistema operativo Varias API Hardware Win 32 Shell 1 Shell 2 Gestión de procesos Gestión de memoria Gestión de la E/S Comunic. y sincroniz. Seguridad y protección Gestión de archivos y directorios Componentes y estructura del SO
  • 20. Todos estos componentes ofrecen su funcionalidad a través de un conjunto de llamadas al sistema. Como se aprecia en la figura de la transparencia anterior los SSOO operativos pueden ofrecer más de una interfaz de servicios: POSIX y WIN32, por ejemplo. En este caso los programas podrán elegir qué interfaz quieren ejecutar, pero no podrán usar servicios de ambas de forma simultánea. Debido a esta ocultación de las características hardware de la máquina a través de interfaces de programación se dice que el SO presenta al usuario varias máquinas virtuales. También puede ofrecer varios intérpretes de mandatos, unos textuales y otros en modo gráfico. Respecto a la forma en que se estructuran estos elementos, se puede distinguir entre SSOO monolíticos y estructurados. Componentes y estructura del SO
  • 21. Los SSOO monolíticos son aquellos que carecen de estructura clara y definida. Todos sus componentes se encuentran integrados en un único programa, que se ejecuta en un único espacio de direcciones. En este caso todas las funciones se ejecutan en modo núcleo. Suelen surgir de SSOO de pequeño tamaño, que evolucionan al añadir más y más funcionalidad. Ejemplos: MS-DOS y UNIX. Problemas : dificultad para modificarlos para añadir nuevos servicios, ya que ello supone “bucear” entre miles de líneas de código. Dentro de los sistemas estructurados cabe distinguir entre los sistemas por capas y sistemas cliente/servidor. En los sistemas por capas el SO está formado por un conjunto de capas interrelacionadas. Cada capa ofrece una interfaz clara y bien definida a la capa superior y sólo usa los servicios de la capa inferior. Componentes y estructura del SO
  • 22. La principal ventaja radica en la modularidad y ocultación de la información que ofrecen: una capa no necesita saber cómo es la implementación de las capas inferiores, sólo su interfaz . En el modelo cliente/servidor se implementan la mayoría de los servicios mediante procesos de usuario, dejando sólo una pequeña parte del SO ejecutando en modo núcleo ( micronúcleo ). Micronúcleo Procesos cliente Procesos servidores API API Hardware Servidor de procesos Servidor de memoria Servidor de la E/S Servidor de Comunicac. Servidor de Seguridad Modo núcleo Modo usuario Servidor de archivos y directorios Componentes y estructura del SO
  • 23. No hay definición clara de las funciones propias del micronúcleo y depende de un SO a otro. Suelen ser: gestión de interrupciones, gestión básica de procesos y de memoria, servicios básicos de comunicación entre procesos. Para solicitar un servicio a este tipo de sistemas, el proceso de usuario (cliente) solicita el servicio al servidor correspondiente. Puede que para cumplir la petición el servidor requiera, a su vez, los servicios ofrecidos por otros servidores. Ventaja básica: flexibilidad. Cada servidor sólo se ocupa de una funcionalidad concreta, lo que facilita la modularidad (por ejemplo, el desarrollo de pruebas, el mantenimiento, etc). Desventajas: mayor sobrecarga en el tratamiento de los servicios, ya que los servidores ejecutan en espacios de direcciones distintos, por lo que su activación es más lenta. Componentes y estructura del SO
  • 24. Tipos de SO
    • SO MONOUSUARIO: ADMINISTRA UN SOLO COMPUTADOR (DOS,OS/2...)
    • SO MONOUSUARIO Y MULTITAREA: SE EJECUTAN VARIAS TAREAS SIMULTANEAS EN UN SOLO COMPUTADOR (Win 3.1, 3.11, 95...)
    • SO MULTIUSUARIO Y MULTITAREA: ADMINISTRA GRAN NUMERO DE COMPUTADORES Y EJECUTA A LA VEZ VARIAS TAREAS (UNIX, Linux, Win NT...)
  • 25. [email_address] [email_address] 100101100