Вы находитесь на странице: 1из 26

Implantacin de Sistemas Operativos

SISTEMAS OPERATIVOS Introduccin

Autor: Enrique Lan

CONCEPTO DE SISTEMA OPERATIVO


Definicin.- Programa que provee de una interfaz entre el usuario y la mquina. Proporcionando Gestin de recursos, deteccin y gestin de errores, asignacin de recursos, proteccin del sistema, etc.

FUNCIONES DE UN SISTEMA OPERATIVO


PLANIFICACIN DE LA CPU GESTIN LA MEMORIA GESTIN DE ENTRADA/SALIDA GESTIN DEL SISTEMA DE ARCHIVOS

SISTEMAS OPERATIVOS. HISTORIA


1 GENERACIN (1940-1955). ORDENADORES SIN SISTEMA OPERATIVO Mquinas de gran tamao, precios elevadsimos, recursos escasos. Sistema ON LINE o INTERACTIVO. Lenguaje de programacin utilizado: lenguaje mquina (formada por 1 y 0). El Operador, el tcnico y el programador eran la misma persona. Elementos utilizados: vlvulas, tarjetas perforadas y lenguaje mquina. Finalmente cintas magnticas. Monoprograma y monousuario. La CPU permanece ociosa mientras espera la lectura de las tarjetas perforadas. Trabajo interactivo.
LECTORA DE TARJETAS

CPU

PRINTERS

SISTEMAS OPERATIVOS. HISTORIA


2 GENERACIN (1955-1964). Aparecen los primeros ordenadores transistorizados, as como los lenguajes de programacin: FORTRAN, COBOL, ALGOL. Agrupacin de trabajos similares o que utilizaran los mismos recursos por lotes (PROCESADO POR LOTES o batch). Sigue siendo un sistema muy lento, ya que el operador de la computadora tena que cambiar las cintas, ordenar los trabajos que se iban a ejecutar y recoger los resultados. Entonces surge el primer sistema operativo: MONITOR RESIDENTE. MONITOR RESIDENTE: Cargaba los programas a memoria, leyndolos de una cinta o de tarjetas perforadas, y los ejecutaba. Para optimizar el tiempo entre la retirada de un trabajo y el montaje del siguiente utilizaba tarjetas de control (programadas en JCL). Sistema OFF LINE (no interactivo). Aparecen los compiladores.
Unidad de cinta LECTORA DE TARJETAS Ordenador satlite Ordenador principal Ordenador satlite Unidad de cinta

SISTEMAS OPERATIVOS. HISTORIA


3 GENERACIN (1964-1972). Aparecen los circuitos integrados y los lenguajes de programacin estructurados: PASCAL, BASIC, C, APL, SNOBOL, etc. Multiprogramacin, tiempo compartidos (varios usuarios simultneamente). Memoria virtual. SPOOLING (Simultaneous Peipheral Operation On Line).- Permite simultanear la E/S de un proceso con la ejecucin de otro. Aparecen los SOs: OS/360 de IBM y MULTICS (que soportaba miles de usuarios en tiempo compartido.
DISCO

Proceso de Usuario

SPOOLER

SISTEMAS OPERATIVOS. HISTORIA


4 GENERACIN (1972-1981). Aparecen los SOs: UNIX, CP/M, DOS. Aparece el MICROPROCESADOR. Surgen nuevos lenguajes de programacin: SQL y PROLOG (diseados para aplicaciones de inteligencia artificial). Aparecen los sistemas operativos en Red (entorno cooperativo). 5 GENERACIN (1981-Ahora). Aparicin del primer PC de IBM para uso departamental y domstico. Universalizacin de las Redes: INTERNET. Aparicin de ADA y los lenguajes Orientados a Objetos: C++, Java, Eiffel, Visual Basic, Power Bilder, herramientas CASE...). Generalizacin del entorno grfico (GUI). SOs: WINDOWS 9X, Millenium, 2000, XP, 2003, LINUX. Universalizacin de los SO en Red, tecnologas Cliente-Servidor.

ARQUITECTURA DE LOS SO. ESTRUCTURA MONOLTICA


MODO USUARIO 4 LLAMADAS_AL_SISTEMA (PARMETROS)

1
Procedimientos de servicio

MODO KERNEL

2 3

Tablas de punteros a servicio Procedimientos de utilidad

ARQUITECTURA DE LOS SO. ESTRUCTURA MONOLTICA


CARACTERSTICAS:
Un sistema operativo con ncleo monoltico concentra todas las funciones del SO (planificacin de procesos, sistema de archivos, redes, controladores de dispositivos, gestin de memoria, etc) dentro de un gran programa. Puede tener un tamao considerable, y ha de recompilarse por completo al aadir una nueva funcionalidad. Todos los componentes funcionales del ncleo tienen acceso a todas sus estructuras de datos internas y a sus rutinas. Un error en una rutina puede propagarse a todo el ncleo. Estructura mnima No es vlido para las crecientes necesidades de los sistemas informticos. Kernel similar a un programa. La alternativa es tener una estructura de microncleo, donde las partes funcionales estn divididas en unidades separadas con mecanismos de comunicacin estrictos entre ellos. Su funcionamiento consistira en los siguientes pasos: 1.- Un programa principal de usuario llama al sistema como un procedimiento del servicio solicitado. 2.- Los procedimientos de servicio llevan a cabo las llamadas al sistema. 3.- Los de procedimientos de utilidad ayudan al procedimiento de servicio. Ejemplos de SO monolticos: Unix, DR-DOS, MS-DOS, WIN95, WIN98, WIN Millenium, etc.

ESTRUCTURAS REALES. MODELO UNIX


Nivel de Usuario Programas de usuario LIBRERAS

Manejador de E/S

INTERFACE DE LLAMADAS AL SO

FILE SUBSYSTEM Nivel kernel


PROCESS CONTROL SUBSYST

IPC
SCHELUDER MANEJADOR DE MEMORIA

BUFFER CACH

CARCTER

BLOQUE

DEVICE DRIVER

HARDWARE CONTROL Nivel Hardware HARDWARE

ARQUITECTURA DE LOS SOs. ESTRUCTURA EN CAPAS


Programas y comandos de usuario CARACTERSTICAS:
Interfaz de Usuario Servicios del SO

Gestin de memoria Interfaz SOhardware Gestin E/S Gestin CPU

HARDWARE

Gestin ficheros

Gestin procesos

Su diseo se puede mostrar a travs de niveles (ejemplo: Sistema Operativo THE) o por CAPAS (p.e MULTICS). Estructuras internas y algoritmos de cada capa invisibles a las dems. Fcil explotacin e independencia entre capas. Cada capa se puede codificar o probar independientemente. Si todas las Capas se encontrasen dentro del ncleo sera un sistema monoltico. Arquitectura utilizada por el SO VMS, Windows NT, Windows Server.

ESTRUCTURAS REALES. MODELO W2003 SERVER

ARQUITECTURA DE LOS SOs. ESTRUCTURA DE MQUINAS VIRTUALES


Presentan al usuario una abstraccin de la mquina real sobre la que est trabajando. Permite ejecutar sobre la mquina real varios sistemas operativos de simultneamente (mquinas virtuales). El ncleo de estos sistemas operativos se denomina monitor virtual y tiene como misin asignar de manera ordenada los recursos reales de la mquina a los recursos de cada mquina virtual. Ventajas: Cada mquina virtual est completamente aislada de las dems, no exitiendo problemas de seguridad entre usuarios diferentes. Permite realizar mltiples pruebas sin que el sistema se caiga. Resuelve el problema de la compatibilidad del software. Simulacin de una infraestructura de red Ejemplos de software privativo y software libre para virtualizar sistemas operativos son: VMware, VirtualPC, VirtualBox, etc.

ARQUITECTURA DE LOS SO. ESTRUCTURA CLIENTE-SERVIDOR


CLIENTE SERVIDOR FICHEROS SERVIDOR PROCESOS SERVIDOR MEMORIA Modo usuario Modo supervisor

KERNEL CARACTERSTICAS: Utilizado en los sistemas operativos modernos.

Es necesario que una computadora trabaje como servidor, proporcionando servicios que son demandados por los equipos clientes. KERNEL mnimo (MICROKERNEL) encargado de controlar la comunicacin entre clientes y servidores: Gran parte del SO se ejecuta en Modo Usuario Sencillez y modularidad. Utilizada en Servidores especficos. Fcil de adaptar en sistemas distribuidos. La funcin del ncleo es controlar la comunicacin entre clientes y servidores. Ejemplos de Sistemas Operativos cliente-servidor: Netware de Novell, Mach, Chours,.. NOTA: Por ejemplo Windows Server no sera un SO cliente/servidor, ya que puede actuar como cliente y como servidor al mismo tiempo.

CLASIFICACIN DE LOS SISTEMAS OPERATIVOS I


A) POR EL NMERO DE USUARIOS

MONOUSUARIO Son aquellos sistemas operativos que soportan SLO un usuario simultneamente, independientemente del nmero de procesadores que tenga el equipo, nmero de procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo. Los ordenadores personales pertenecen a esta clasificacin. Algunos ejemplos son: Windows 3.x, Windows NT, W9X, Millenium, MS-DOS, W7, Windows Vista. MULTIUSUARIO Cuando varios usuarios pueden ejecutar procesos distintos sobre la CPU simultneamente. independientemente del nmero de procesadores que tenga el equipo, nmero de procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo Pertenecen a esta clasificacin los siguientes sistemas operativos: UNIX, LINUX, Novell, aquellos Windows que cuentan con el servicio de Terminal Services: W2000 server y superiores.

CLASIFICACIN DE LOS SISTEMAS OPERATIVOS II


B) POR EL NMERO DE TAREAS O PROCESOS MONOTAREA Slo permiten la ejecucin simultnea de UNA tarea o proceso. Ejemplos: MS-DOS o W9X. MULTITAREA Son aquellos SO que permiten la ejecucin simultnea de varias tareas o procesos. Pertenecen a esta clasificacin los siguientes sistemas operativos: UNIX, LINUX, WXP y superiores. NOTA: Para que la ejecucin simultnea de tareas o procesos sea REAL se necesitara un sistema multiprocesador.

CLASIFICACIN DE LOS SISTEMAS OPERATIVOS III


C) POR EL TIEMPO DE RESPUESTA TIEMPO COMPARTIDO Se comparte el tiempo de CPU entre los distintos procesos de los distintos usuarios. TIEMPO REAL Donde los procesos tienen un tiempo de respuesta crtico y un tiempo mximo para finalizar. Por ejemplo: robtica, instrumentacin, procesos industriales... D) POR EL NMERO DE PROCESADORES DEL SISTEMA MONOPROCESADOR Formado por una nica CPU. MULTIPROCESADOR Formado por varias CPUs (Multitarea real).

CLASIFICACIN DE LOS SISTEMAS OPERATIVOS IV


E) POR SUS SERVICIOS
SISTEMAS CENTRALIZADOS Se utilizaban antes para conectar los mainframes (grandes ordenadores) a los terminales tontos (sin capacidad de procesamiento). Actualmente se utiliza por ejemplo Terminal Services de Windows Server como sistema centralizado, donde el SERVIDOR lleva la mayora de la carga de procesamiento y almacenamiento de la Red. SISTEMAS DISTRIBUIDOS Aquellos que permiten distribuir las tareas entre varios procesadores, aunque el usuario perciba que el sistema est formado por un nico procesador. El usuario trabaja sobre una mquina virtual sin saber en que equipos estn los archivos y dems recursos. Para l, todo est en local y forma un sistema operativo nico.o equipos independientes. Por ejemplo los SO: Mach, Chorus, Sprite, Solaris-MC, Taos, etc. son sistemas distribuidos. SISTEMAS OPERATIVOS DE EQUIPOS AUTNOMOS Se trata de los sistemas operativos que se instalaban en las primeras mquinas y cuya funcin era controlar y gestionar el software y el hardware de cada equipo, no se contemplaba su interconexin para crear una red. SISTEMAS OPERATIVOS EN RED Son aquellos que permiten integrarse en una red, pudiendo distinguirse: Sistemas operativos para equipos servidores.- Que adems de los servicios de Red, pueden ofrecer otros: Servicios DNS, DHCP, FTP, de impresin, de archivos, Web, etc. Ejemplos de stos SO: Windows Server, Ubuntu Server, etc. Sistemas operativos para equipos clientes.Por ejemplo: W95,W98, W2000, WXP, Wvista,W7, Linux...

CLASIFICACIN DE LOS SISTEMAS OPERATIVOS V


F) POR SU DISPONIBILIDAD SISTEMAS OPERATIVOS PRIVATIVOS O PROPIETARIOS Aquellos que son propiedad de alguna empresa y para utilizarlos se necesitan licencias. No se permite distribuirlo, modificarlo ni el acceso al cdigo fuente. Por ejemplo: Windows. SISTEMAS OPERATIVOS LIBRES Se definen por las cuatro libertades del software segn Richard Stallman: 1.La libertad de usar el programa, con cualquier propsito. 2.La libertad de estudiar cmo funciona el programa y modificarlo, adaptndolo a tus necesidades. 3.La libertad de distribuir copias del programa, con lo cual puedes ayudar a tu prjimo. 4.La libertad de mejorar el programa y hacer pblicas esas mejoras a los dems, de modo que toda la comunidad se beneficie. NOTA: Las libertades 1 y 3 requieren acceso al cdigo fuente porque estudiar y modificar software sin su cdigo fuente es muy poco viable.

CLASIFICACIN DE LOS SISTEMAS OPERATIVOS VI


G) POR SU TIPO DE LICENCIA
O.E.M ( Original Equipment Manufacturer) Este tipo de licencias se las otorga el desarrollador del sistema operativo al fabricante de hardware, con la condicin de que vaya acompaado de la compra de un equipo nuevo, de modo que tenemos real una licencia de uso del sistema operativo nicamente para ese hardware concreto. Estas licencias son las ms econmicas, y suelen tener restricciones especiales: n de veces que se puede reinstalar, no se puede ceder o vender sino es bajo las mismas condiciones. RETAIL Licencia comprada directamente del desarrollador. Por tanto, somos propietarios de la licencia y el programa o SO podr instalarse en cualquier hardware compatible. Este tipo de licencia se puede ceder o revender revender. Normalmente existen licencias completas de software o actualizaciones (ms econmicas). VLM (LICENCIAS POR VOLUMEN). Tipo de licencia especial con el desarrollador destinada a empresas, de modo que con una nica clave de licencia, podemos utilizar varias mquinas a la vez. Se vende en paquetes de x licencias y normalmente bajo condiciones similares a las O.E.M (salvo que no estn supeditadas a la compra de nuevos equipos). MSDN (LICENCIAS DE EDUCACIN.) Son licencias especiales de Microsoft destinadas a un uso nicamente educativo y de formacin (empresas de desarrollo, academias, etc.). Cualquier fuera de este mbito ser ilegal.

FUNCIONES DE LOS SISTEMAS OPERATIVOS


1) PLANIFICACIN DE LA CPU O GESTIN DE PROCESOS Reparto del tiempo de CPU entre procesos (schedulling), utilizando diferentes algoritmos: FIFO, RR (Round Robin), por prioridades, SJF (Primero el de la rfaga ms corta)... Existir un temporizador hardware (reloj del sistema) para evitar que un proceso monopolice la CPU (planificacin expulsiva). Comunicacin y sincronizacin entre procesos a travs de semforos, eventos, mensajes, monitores, etc. Realizar el cambio de contexto entre un proceso y otro (de sto se encarga el dispatcher).

FUNCIONES DE LOS SISTEMAS OPERATIVOS


2) GESTIN DE LA MEMORIA La gestin de memoria la realiza el Administrador de memoria (Planificacin MFT o MVT). Asignacin de memoria a los procesos cuando la solicitan y liberacin cuando acaban. Gestiona los huecos libres y los que estn en uso. Protege al SO frente al usuario y a usuarios entre s respecto al uso de la memoria. Administra el intercambio entre la memoria central y el disco (memoria auxiliar o virtual). Utiliza algoritmos de sustitucin de pgina cuando sta no se encuentra en memoria principal, si no en memorial virtual.

FUNCIONES DE LOS SISTEMAS OPERATIVOS


3) GESTIN DE ENTRADA/SALIDA El SO se comunicar con el manejador (driver o software especfico del dispositivo), que a su vez programar la controladora (parte electrnica) para manejar el dispositivo (parte fsica). El acceso a los dispositivos requiere dos modos de trabajo: modo supervisor (Kernel) y modo usuario (llamada al SO). Gestiona errores. Gestiona la comparticin de dispositivos de E/S para evitar interbloqueos. Gestin DMA (Acceso directo a memoria).

FUNCIONES DE LOS SISTEMAS OPERATIVOS


4) GESTIN DEL SISTEMA DE ARCHIVOS I El SO se encarga de administrar los archivos fijando: A) Nombre del archivo MS-DOS: 8 caracteres + .+ 3 caracteres para extensin (BAT, COM, EXE) W95/NT/superiores: Admiten nombres de hasta 255 caracteres en Unicode. UNIX: Tamao libre, aunque se consideran los primeros 14 caracteres en ASCII. B) Estructura de un archivo
Secuencia de bytes. Ejemplos: MS-DOS, UNIX, WINDOWS Sucesin de registros de tamao fijo. Ejemplo: CP/M. Asociacin de registros a bloques y sectores de disco. Ya en desuso. Ejemplo: ISAM.

C) Tipos de archivo.
UNIX: Archivos regulares.- Contienen informacin de usuario y tienen extensiones distintas. Directorios.- Contienen entradas de los diferentes archivos. Archivos especiales: De bloque. Por ejemplo: Discos duros De caracteres. Por ejemplo: terminales modo texto. Pipelines o tuberas.- Utilizados para comunicacin entre procesos.

FUNCIONES DE LOS SISTEMAS OPERATIVOS


4) GESTIN DEL SISTEMA DE ARCHIVOS II El SO se encarga de administrar los archivos fijando: D) Acceso a la informacin Secuencial Aleatorio
e.1) Determinacin del tamao del bloque: Un tamao pequeo de bloque genera muchos accesos (ms lento) pero menos fragmentacin interna. Un tamao grande de bloque genera pocos accesos (mayor rapidez) pero ms fragmentacin interna. e.2) Asignacin y control del espacio de archivo Almacenamiento contiguo. Mediante lista enlazada. Ejemplos: MSDOS, W95, Millenium a travs de FAT. Mediante i-nodos. Utilizado en UNIX y WNT. e.3) Gestin del espacio libre: Mediante lista enlazada de bloques libres. Mediante mapa de bits contenido en bloques.

E) Implantacin de archivos

GESTORES DE ARRANQUE
Gestor de arranque. Definicin.- Programa necesario cuando en un ordenador tenemos varios SOs instalados. Se encarga por tanto de seleccionar y arrancar el Sistema Operativo elegido. Veamos de los Gestores de arranque ms utilizados: A) NTLDT (NT Loader).- Utilizado en WN7, W2000, WXP y Windows Server 2003. Ubicado en el directorio raz y necesita los siguientes archivos: boot.ini .- Que contiene un men con las opciones de inicio. NTDETECT.COM.- Encargado de arrancar el Sistema Operativo elegido. B) Bootmgr.- Gestor de arranque utilizado desde Windows Vista en adelante. Tras mostrar un men (ubicado en el archivo bcd) con los diferentes SOs instalados, WinLoad.exe (ubicado en system32) se encarga de arrancar el SO elegido y luego ser el archivo ntoskrnl.exe el encargado de continuar el proceso. C) GRUB.- Gestor de arranque utilizado en los sistemas LINUX y sucesor de LILO. Grub escribe la primera etapa del gestor en el MBR o en un VBR. Esta etapa carga el resto del programa (segunda etapa) y un fichero de configuracin que mostrar los SOs instalados en el ordenador (menu.lst). En el caso de fallar esta segunda etapa GRUB ofrece una lnea de comandos para solucionar el problema.

GESTORES DE ARRANQUE
Gestor de arranque. Definicin.- Programa necesario cuando en un ordenador tenemos varios SOs instalados. Se encarga por tanto de seleccionar y arrancar el Sistema Operativo elegido. Veamos de los Gestores de arranque ms utilizados: A) NTLDT (NT Loader).- Utilizado en WN7, W2000, WXP y Windows Server 2003. Ubicado en el directorio raz y necesita los siguientes archivos: boot.ini .- Que contiene un men con las opciones de inicio. NTDETECT.COM.- Encargado de arrancar el Sistema Operativo elegido. B) Bootmgr.- Gestor de arranque utilizado desde Windows Vista en adelante. Tras mostrar un men (ubicado en el archivo bcd) con los diferentes SOs instalados, WinLoad.exe (ubicado en system32) se encarga de arrancar el SO elegido y luego ser el archivo ntoskrnl.exe el encargado de continuar el proceso. C) GRUB.- Gestor de arranque utilizado en los sistemas LINUX y sucesor de LILO. Grub escribe la primera etapa del gestor en el MBR o en un VBR. Esta etapa carga el resto del programa (segunda etapa) y un fichero de configuracin que mostrar los SOs instalados en el ordenador (menu.lst). En el caso de fallar esta segunda etapa GRUB ofrece una lnea de comandos para solucionar el problema.

Вам также может понравиться