Sunteți pe pagina 1din 26

FCC-BUAP

Company

LOGO

Sistemas Operativos I

Sistemas Operativos I
MC Hilda Castillo Zacatelco

Cubculo 9 Edificio 104A


Horario: LUNES Q10 MIERCOLES Antiguo laboratorio de HW VIERNES Modulo III Sistema operativo: Linux Lenguaje: ANSI C

FCC-BUAP

Company

LOGO

Sistemas Operativos I

Evaluacin 20% prcticas 10% tareas 35% exmenes parciales 35% proyecto Para aprobar el curso se deben aprobar cada uno de los exmenes parciales con una calificacin mnima de 6 y adems presentar el proyecto final. El proyecto final consta de uno o varios programas que funcionan de acuerdo con las especificaciones solicitadas y su correspondiente manual tcnico (no manual de usuario). No hay trabajos extras para subir calificacin. Las prcticas solo se recibirn en los horarios y fechas sealadas. Tanto la entrega como el proyecto es por equipo.

FCC-BUAP

Company

LOGO

Sistemas Operativos I

Evaluacin El equipo tendr como mximo 4 integrantes, no se aceptan trabajos individuales. Solo los exmenes parciales son estrictamente individuales. No hay recuperacin de tareas. Hay una sola fecha (al finalizar el curso) para realizar exmenes de recuperacin. Se podrn recuperar como mximo dos exmenes parciales, si se reprueban todos los exmenes, estar automticamente en extraordinario. El examen extraordinario es un solo examen que abarca todo el curso, se tendr derecho a l solo si se entrega el proyecto y el 60% de las prcticas y tareas.

FCC-BUAP

Company

LOGO

Sistemas Operativos I

Por favor enviar su direccin de correo electrnico a hildacz@gmail.com para agregarlo a la lista del grupo de operativos I
Esta lista se utilizar para enviar avisos, tareas, calificaciones, material, etc.,

Unidad 1. Ncleo

Sistemas Operativos I
MC Hilda Castillo Zacatelco hildacz@gmail.com

FCC-BUAP

Company

LOGO

Definicin de Sistema Operativo

El sistema operativo es el programa fundamental de todos los programas del sistema, protege y libera a los programadores de la complejidad del hardware. El sistema operativo es un programa maestro que se carga al encender la computadora, se puede ver como una mquina extendida o mquina virtual y como un controlador de recursos. (Tanenbaum)

FCC-BUAP

Company

LOGO

Definicin de Sistema Operativo

Puede considerarse que un sistema operativo tiene tres objetivos: Comodidad: un sistema operativo hace que un computador sea ms cmodo de utilizar. Eficiencia: un sistema operativo permite que los recursos de un sistema informtico se aprovechen de una manera ms eficiente. Capacidad de evolucin: un sistema operativo debe construirse de modo que permita el desarrollo efectivo, la verificacin y la introduccin de nuevas funciones en el sistema y, a la vez, no interferir en los servicios que brinda.

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

La evolucin de los SO ha estado relacionada histricamente con la arquitectura de las computadoras. Primero computadora digital. Ingls matemtico Charles Babbage (17921871) Primera generacin conexiones de computadoras (1945-1955): Bulbos y

A mediados de los 40s Howard, Aiken, John Von Neumann, J. Presper, William Mauchley, Konrad Zuse lograron construir mquinas de clculo mediante bulbos A principios de los 50s se introdujeron las tarjetas perforadas (lector de tarjetas)

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

Las computadoras eran enormes, lentas y contenan miles de bulbos Un solo grupo de personas diseaba, contrua, programaba, operaba y daba mantenimiento El lenguaje utilizado era el lenguaje de mquina (conexiones) A principios de los 50s se introdujeron las tarjetas perforadas (lector de tarjetas)

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

Segunda generacin (1955-1965): Transistores y sistemas de procesamiento por lotes A mediados de los 50s se introduce el transistor, esto dio origen a computadoras ms confiables, adems de que se podan fabricar varias y venderlas Hay una clara separacin entre los diseadores, operadores, programadores, etc.

Las computadoras estaban aisladas en cuartos de cmputo con aire acondicionado y un equipo de operadores profesionales a cargo para su ejecucin
Utilizaban tarjetas perforadas

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

Los lenguajes utilizados era: FORTRAN, ENSAMBLADOR y JCL (lenguaje de control de trabajo) Se desperdiciaba tiempo de cmputo Eran muy caras, y solo las podan adquirir grandes corporaciones y universidades Para agilizar el proceso se utiliza un sistema de procesamiento por lotes (varios trabajos .bat) Solo se realizaban clculos cientficos y de ingeniera en ellos

Cinta de salida Lectora de cintas Unidad de cinta Cinta de entrada Cinta de sistema Impresora

Sistema de procesamiento por lotes

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

Los SO comunes eran: FMS (Fortran Monitor System), IBSYS que era el SO de IBM para la 7094 Se crean dos estados del SO: superusuario y usuario Aparecen las interrupciones y el gestor de interrupciones (int. de hw y de sw), la MMU, y ms perifricos y ms adelante los buffer (memorias intermedias) y con ello el buffering

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

Tercera generacin (1965-1980): Circuitos integrados y multiprogramacin A principios de la dcada de los 60s las computadoras eran caras y haba dos tipos de computadoras: cientficas y comerciales, las cuales eran incompatibles entre s IBM introdujo el sistema/360 que fue la primera lnea de computadoras que utiliz los circuitos integrados a pequea escala, a partir de esta se fabrican computadoras compatibles Cada tipo de computadora tena su propio sistema operativo Se intent un SO compatible que result enorme y complejo, el OS/360 (Fred Brooks) Debido a la prdida de tiempo en la E/S se particiona la memoria en varias partes, as cada parte puede realizar un trabajo distinto, multiprogramacin

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

Cuando una particin quedaba vacan el SO poda leer cargar un nuevo trabajo del disco en la particin desocupada y ejecutarla, a esta tcnica se le llama spooling (Simultaneous Peripheral Operation On Line [operacin simultnea y en lnea de perifricos]) La diferencia entre el buffering y el spooling es que en el primero almacenamos la E/S de un trabajo con su proceso, mientras que en el segundo almacenamos (solapamos) la E/S de varios procesos con otro proceso distinto En el procesamiento por lotes el programador perda muchsimo tiempo en compilar (mas si se equivocaba)

Aparece la escalabilidad (ampliar en un momento determinado las funciones del sistema)


Cada usuario tena una terminal en lnea, nace el tiempo compartido (timesharing)

Primer sistema de tiempo compartido: CTSS (1962)

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

Despus: MULTICS el cual no fue muy utilizado pero influy en los sistemas subsecuentes
Hay un crecimiento de las minicomputadoras, por ejemplo la DEC PDP-1 en 1961

UNIX hace su aparicin Ken Thompson lo crea en una PDP-7


Aparecen los sistemas de tiempo real

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

Cuarta generacin (1980-1990): Computadoras personales LSI (Large Scale Integration) Nacen los SO de red y los SO distribuidos Aparecen los problemas de criptografa que intenta asegurar la privacidad, la integridad del mensaje y la autentificacin del mismo. Nace MSDOS que utiliza un CPU 8088 de intel y sus sucesores 80286, 80386, ... UNIX utiliza un procesador RISC Se desarrolla el concepto de mquina virtual que simula otras mquinas en una plataforma concreta (emuladores). Esto alcanza su mayor desarrollo con la plataforma JAVA que es un lenguaje y una mquina virtual Uso de sistemas de gestin de bases de datos

FCC-BUAP

Company

LOGO

Evolucin de los sistemas operativos

SO de red: En este tipo de sistema los usuarios estn conscientes de la existencia de varias computadoras y pueden realizar operaciones con ellas.
SO distribuidos: Es aquel que aparece ante sus usuarios como un SO tradicional de un solo procesador, aun cuando est compuesto de varios procesadores

FCC-BUAP

Company

LOGO

Funciones de los sistemas operativos

Una de las principales funciones del sistema operativo es ocultar toda la complejidad y proporcionar al programador un conjunto de instrucciones ms conveniente con el cual trabajar. El sistema operativo desarrolla las siguientes tareas: Administracin de trabajos Administracin de datos Administracin de dispositivos (los controladores son proporcionados por los fabricantes) Seguridad (respaldo y recuperacin)

FCC-BUAP

Company

LOGO

Funciones de los sistemas operativos

El sistema operativo se ejecuta en: Modo central o modo de supervicin, el cual esta protegido, el usuario no puede escribir su propio controlador de interrupciones de disco por ejemplo (el hw no lo permite) Modo usuario, dentro de este modo se ejecutan los compiladores y los editores, si el usuario quiere escribir su propio editor lo puede hacer

FCC-BUAP

Company

LOGO

Estructura de un sistema operativo

Microncleo (microkernel) es un pequeo ncleo del sistema operativo que proporciona las bases para ampliaciones modulares. Ncleo Monoltico Los primeros sistemas operativos fueron diseados sin demasiada preocupacin por la estructura. No haba gran experiencia en sistemas de software realmente grandes, por lo que no se tom en cuenta los problemas provocados por la interaccin y dependencia mutua, esto fue insostenible cuando el sistema operativo alcanz proporciones considerables (hablamos de alrededor de un milln de lneas de cdigo), este tipo de sistemas operativos estaban constituidos por un ncleo monoltico.

FCC-BUAP

Company

LOGO

Estructura de un sistema operativo

Ncleo monoltico es el ncleo o kernel de un sistema operativo que esta programado en forma no modular y tiene (?) un rendimiento mayor que un microkernel. Caractersticas: Cualquier cambio a realizar en cualquier servicio requiere la recopilacin del ncleo y el reinicio del sistema para aplicar los nuevos cambios. Concentra todas las funcionalidades posibles dentro de un gran programa. Todos los componentes funcionales del ncleo tienen acceso a todas sus estructuras de datos interna y a sus rutinas. Estos sistemas operativos han surgido, normalmente, de sistemas operativos sencillos y pequeos a los que se les ha ido aadiendo un nmero mayor de funcionalidades.

FCC-BUAP

Company

LOGO

Estructura de un sistema operativo

Capas Virtuales
El anlisis de los sistemas operativos suelen dividirse en funciones jerrquicas, desde niveles muy cercanos a la mquina misma hasta niveles ms virtuales, en el sentido de que ya no tratan a la computadora como una mquina sino como un esquema diseado para manejo de informacin, sin preocuparse demasiado por detalles como registros, direcciones, etctera. Ejemplos de sistemas operativos por capas: THE (Technische Hogeschool Eindhoven-Holanda). MULTICS

FCC-BUAP

Company

LOGO

Estructura de un sistema operativo

Mquinas virtuales Este concepto fue introducido por Seawright y MacKinnon en 1979 en un sistema originalmente llamado CP/CMS y que ahora se llama VM/370. El monitor de la mquina virtual es el corazn del sistema, se ejecuta en el hw simple y realiza la multiprogramacin , proporciona varias mquinas virtuales a la siguiente capa superior las cuales no son mquinas extendidas, con archivos u otras caractersticas adecuadas, son copias exactas del hw simple, con su modo ncleo/usuario, E/S, interrupciones y todo lo dems que posee la mquina real. Por lo tanto cada mquina virtual puede ejecutar diferentes SO. Las llamadas al sistema son atrapadas por su propio sistema operativo en su mquina virtual.

FCC-BUAP

Company

LOGO

Estructura de un sistema operativo

En la actualidad las capas que forman al sistema operativo son capas concntricas alrededor del ncleo. La parte interna del conjunto jerrquico de programas que forman un sistema operativo recibe precisamente el nombre de ncleo.

Las otras capas o subsistemas se encargan del manejo de la memoria, el procesador, los dispositivos de entrada/salida, los archivos, etctera.

FCC-BUAP

Company

LOGO

Estructura de un sistema operativo


Manejo de informacin Manejo de I/O

Manejo de Procesador

Manejo de memoria

kernel

FCC-BUAP

Company

LOGO

Estructura de un sistema operativo

Modelo cliente-servidor La tendencia de los SO modernos es tratar de mantener un ncleo mnimo implantando la mayora de las funciones del SO en los procesos del usuario Para solicitar un servicio un proceso del usuario (proceso cliente) enva un mensaje a un proceso servidor para que se realice el trabajo y regrese respuesta

El servidor se ejecuta como proceso en modo usuario y no sabe de donde viene el mensaje, si este es local o remoto.

Cliente

Servidor

S-ar putea să vă placă și