miércoles, 18 de marzo de 2015

Estructura General De Los Sistemas Operativos


Estructura General Del Sistema Operativo
En Esta Unidad Examinaremos Cuatro Estructuras Distintas Que Ya Han Sido Probadas.

Estructura Modular.
También Llamados Sistemas Monolíticos. Este Tipo De Organización Es Con Mucho La Mas Común; Bien Podría Recibir El Subtitulo De "El Gran Embrollo". La Estructura Consiste En Que No Existe Estructura Alguna. El Sistema Operativo Se Escribe Como Una Colección De Procedimientos, Cada Uno De Los Cuales Puede Llamar A Los Demás Cada Vez Que Así Lo Requiera. Cuando Se Usa Esta Técnica, Cada Procedimiento Del Sistema Tiene Una Interfaz Bien Definida En Términos De Parámetros Y Resultados Y Cada Uno De Ellos Es Libre De Llamar A Cualquier Otro, Si Este Ultimo Proporciona Cierto Cálculo Útil Para El Primero. Sin Embargo Incluso En Este Tipo De Sistemas Es Posible Tener Al Menos Algo De Estructura. Los Servicios (Llamadas Al Sistema) Que Proporciona El Sistema Operativo Se Solicitan Colocando Los Parámetros En Lugares Bien Definidos, Como En Los Registros O En La Pila, Para Después Ejecutar Una Instrucción Especial De Trampa De Nombre "Llamada Al Núcleo" O "Llamada Al Supervisor".



Esta Instrucción Cambia La Máquina Del Modo Usuario Al Modo Núcleo Y Transfiere El Control Al Sistema Operativo. El Sistema Operativo Examina Entonces Los Parámetros De La Llamada, Para Determinar Cual De Ellas Se Desea Realizar. A Continuación, El Sistema Operativo Analiza Una Tabla Que Contiene En La Entrada K Un Apuntador Al Procedimiento Que Realiza La K-Esima Llamada Al Sistema. Por Ultimo, La Llamada Al Sistema Termina Y El Control Regresa Al Programa Del Usuario.

Esta Organización Sugiere Una Organización Básica Del Sistema Operativo:


·           Un Programa Principal Que Llama Al Procedimiento Del Servicio Solicitado.
·           Un Conjunto De Procedimientos De Servicio Que Llevan A Cabo Las Llamadas Al Sistema.
·           Un Conjunto De Procedimientos Utilitarios Que Ayudan Al Procedimiento De Servicio.



Estructura Jerárquica.

A Medida Que Fueron Creciendo Las Necesidades De Los Usuarios Y Se Perfeccionaron Los Sistemas, Se Hizo Necesaria Una Mayor Organización Del Software, Del Sistema Operativo, Donde Una Parte Del Sistema Contenía Subpartes Y Esto Organizado En Forma De Niveles.

Se Dividió El Sistema Operativo En Pequeñas Partes, De Tal Forma Que Cada Una De Ellas Estuviera Perfectamente Definida Y Con Un Claro Interface Con El Resto De Elementos.

Se Constituyó Una Estructura Jerárquica O De Niveles En Los Sistemas Operativos, El Primero De Los Cuales Fue Denominado THE (Technische Hogeschool, Eindhoven), De Dijkstra, Que Se Utilizó Con Fines Didácticos. Se Puede Pensar También En Estos Sistemas Como Si Fueran `Multicapa’. Multics Y Unix Caen En Esa Categoría.


En La Estructura Anterior Se Basan Prácticamente La Mayoría De Los Sistemas Operativos Actuales. Otra Forma De Ver Este Tipo De Sistema Es La Denominada De Anillos Concéntricos O “Rings”.

En El Sistema De Anillos, Cada Uno Tiene Una Apertura, Conocida Como Puerta O Trampa (Trap), Por Donde Pueden Entrar Las Llamadas De Las Capas Inferiores. De Esta Forma, Las Zonas Más Internas Del Sistema Operativo O Núcleo Del Sistema Estarán Más Protegidas De Accesos Indeseados Desde Las Capas Más Externas. Las Capas Más Internas Serán, Por Tanto, Más Privilegiadas Que Las Externas.


Máquina Virtual.

Se Trata De Un Tipo De Sistemas Operativos Que Presentan Una Interface A Cada Proceso, Mostrando Una Máquina Que Parece Idéntica A La Máquina Real Subyacente. Estos Sistemas Operativos Separan Dos Conceptos Que Suelen Estar Unidos En El Resto De Sistemas: La Multiprogramación Y La Máquina Extendida. El Objetivo De Los Sistemas Operativos De Máquina Virtual Es El De Integrar Distintos Sistemas Operativos Dando La Sensación De Ser Varias Máquinas Diferentes.

El Núcleo De Estos Sistemas Operativos Se Denomina Monitor Virtual Y Tiene Como Misión Llevar A Cabo La Multiprogramación, Presentando A Los Niveles Superiores Tantas Máquinas Virtuales Como Se Soliciten. Estas Máquinas Virtuales No Son Máquinas Extendidas, Sino Una Réplica De La Máquina Real, De Manera Que En Cada Una De Ellas Se Pueda Ejecutar Un Sistema Operativo Diferente, Que Será El Que Ofrezca La Máquina Extendida Al Usuario .

Cliente-Servidor ( Microkernel)

El Tipo Más Reciente De Sistemas Operativos Es El Denominado Cliente-Servidor, Que Puede Ser Ejecutado En La Mayoría De Las Computadoras, Ya Sean Grandes O Pequeñas.

Este Sistema Sirve Para Toda Clase De Aplicaciones Por Tanto, Es De Propósito General Y Cumple Con Las Mismas Actividades Que Los Sistemas Operativos Convencionales.

Comunicación Entre Los Clientes Y Los Servidores. Los Procesos Pueden Ser Tanto Servidores Como Clientes. Por Ejemplo, Un Programa De Aplicación Normal Es Un Cliente Que Llama Al Servidor Correspondiente Para Acceder A Un Archivo O Realizar Una Operación De Entrada/Salida Sobre Un Dispositivo Concreto. A Su Vez, Un Proceso Cliente Puede Actuar Como Servidor Para Otro.” [Alcal92]. Este Paradigma Ofrece Gran Flexibilidad En Cuanto A Los Servicios Posibles En El Sistema Final, Ya Que El Núcleo Provee Solamente Funciones Muy Básicas De Memoria, Entrada/Salida, Archivos Y Procesos, Dejando A Los Servidores Proveer La Mayoría Que El Usuario Final O Programador Puede Usar. Estos Servidores Deben Tener Mecanismos De Seguridad Y Protección Que, A Su Vez, Serán Filtrados Por El Núcleo Que Controla El Hardware. Actualmente Se Está Trabajando En Una Versión De UNIX Que Contempla En Su Diseño Este Paradigma.

 Requerimientos Del Sistema


Windows 7 Ultímate Y Professional



Si Desea Ejecutar Windows 7 En Su Equipo, Necesitará:

Procesador De 32 Bits (X86) O 64 Bits (X64) A 1 Gigahercio (Ghz) O Más.
·           Memoria RAM De 1 Gigabyte (GB) (32 Bits) O Memoria RAM De 2 GB (64 Bits).
·           Espacio Disponible En Disco Rígido De 16 GB (32 Bits) O 20 GB (64 Bits).
·           Dispositivo Gráfico Directx 9 Con Controlador WDDM 1.0 O Superior.

La Funcionalidad Del Producto Y Los Gráficos Pueden Variar En Función De La Configuración Del Sistema. Algunas Funciones Pueden Requerir Hardware Avanzado O Adicional.
Equipos Con Procesadores De Varios Núcleos:
Windows 7 Fue Diseñado Para Trabajar Con Los Procesadores Actuales De Varios Núcleos. Todas Las Versiones De 32 Bits De Windows 7 Pueden Admitir Hasta 32 Núcleos De Procesadores, Mientras Que Las Versiones De 64 Bits Pueden Admitir Hasta 256 Núcleos De Procesadores.

Equipos Con Varios Procesadores (CPU):
Servidores Comerciales, Estaciones De Trabajo Y Otros Equipos De Última Generación Pueden Tener Más De Un Procesador Físico. Windows 7 Professional, Enterprise Y Ultimate Admiten Dos Procesadores Físicos, Lo Que Permite Obtener El Mejor Rendimiento En Estos Equipos. Windows 7 Starter, Home Basic Y Home Premium Reconocerán Solamente Un Procesador Físico.

Configuración Básica




El SO Se Instala En Una Sección Definida De La Unidad De Disco Duro, Denominada Partición De Disco. Existen Varios Métodos Para Instalar Un SO. El Método Seleccionado Para La Instalación Depende Del Hardware Del Sistema, El SO Elegido Y Los Requerimientos Del Usuario. Existen Cuatro Opciones Básicas Para La Instalación De Un Nuevo SO:

Instalación Limpia

Una Instalación Limpia Se Realiza En Un Sistema Nuevo O Donde No Exista Ruta De Actualización Entre El SO Actual Y El Que Se Está Instalando. Elimina Todos Los Datos De La Partición Donde Se Instala El SO Y Exige Que Se Vuelva A Instalar El Software De Aplicación. Un Sistema De Computación Nuevo Requiere Una Instalación Limpia. También Se Lleva A Cabo Una Instalación Limpia Cuando El SO Existente Se Ha Dañado De Alguna Manera.

Actualización

Si Se Conserva La Misma Plataforma De SO, Por Lo General Es Posible Realizar Una Actualización. Con Una Actualización Se Preservan Las Opciones De Configuración Del Sistema, Las Aplicaciones Y Los Datos. Sólo Se Reemplazan Los Archivos Del SO Antiguo Por Los Del Nuevo.

Arranque Múltiple

Se Puede Instalar Más De Un SO En Una Computadora Para Crear Un Sistema De Arranque Múltiple. Cada SO Tiene Su Propia Partición Y Puede Tener Sus Propios Archivos Y Sus Propias Opciones De Configuración. En El Inicio, Se Presenta Al Usuario Un Menú Donde Puede Seleccionar El SO Que Desee. Sólo Se Puede Ejecutar Un SO Por Vez, Y El SO Elegido Tiene El Control Absoluto Del Hardware.

Virtualización

La Virtualización Es Una Técnica Que Se Suele Implementar En Servidores. Permite Ejecutar Varias Copias De Un Mismo SO En El Mismo Grupo De Hardware, Lo Cual Crea Varias Máquinas Virtuales. Cada Máquina Virtual Se Puede Tratar Como Una Computadora Diferente. Así, Un Mismo Recurso Físico Parece Funcionar Como Varios Recursos Lógicos.




miércoles, 11 de marzo de 2015

Historia Y Evolución De Los Sistemas Operativos

LA DÉCADA DE 1940
------------------------------------------------------------
A finales de la década de 1940, con lo que se podría considerar la aparición de la primera generación de computadoras, se accedía directamente a la consola de la computadora desde la cual se actuaba sobre una serie de micro interruptores que permitían introducir directamente el programa en la memoria de la computadora.


La década de 1950 (Sistema Batch)

------------------------------------------------------------

A principios de los años 50 con el objeto de facilitar la interacción entre persona y computadora, los sistemas operativos hacen una aparición discreta y bastante simple, con conceptos tales como el monitor residente, el proceso por lotes y el almacenamiento temporal.



LA DÉCADA DE 1960
------------------------------------------------------------
En los años 60 se produjeron cambios notorios en varios campos de la informática, con la aparición del circuito integrado la mayoría orientados a seguir incrementando el potencial de los ordenadores. Para ello se utilizaban técnicas de lo más diversas.

Multiprogramación
En un sistema multiprogramado la memoria principal alberga a más de un programa de usuario. La CPU ejecuta instrucciones de un programa, cuando el que se encuentra en ejecución realiza una operación de E/S; en lugar de esperar a que termine la operación de E/S, se pasa a ejecutar otro programa. Si éste realiza, a su vez, otra operación de E/S, se mandan las órdenes oportunas al controlador, y pasa a ejecutarse otro. De esta forma es posible, teniendo almacenado un conjunto adecuado de tareas en cada momento, utilizar de manera óptima los recursos disponibles.



Tiempo compartido
En este punto tenemos un sistema que hace buen uso de la electrónica disponible, pero adolece la falta de interactividad; para conseguirla debe convertirse en un sistema multiusuario, en el cual existen varios usuarios con un terminal en línea, utilizando el modo de operación de tiempo compartido. En estos sistemas igual que en la multiprogramación. Pero, a diferencia de ésta, cuando un programa lleva cierto tiempo ejecutándose el sistema operativo lo detiene para que se ejecute otra aplicación.

Tiempo real
Estos sistemas se usan en entornos donde se deben aceptar y procesar en tiempos muy breves un gran número de sucesos, en su mayoría externos al ordenador. Si el sistema no respeta las restricciones de tiempo en las que las operaciones deben entregar su resultado se dice que ha fallado. El tiempo de respuesta a su vez debe servir para resolver el problema o hecho planteado. El procesamiento de archivos se hace de una forma continua, pues se procesa el archivo antes de que entre el siguiente, sus primeros usos fueron y siguen siendo en telecomunicaciones.


LA DÉCADA DE 1970
------------------------------------------------------------
Sistemas operativos desarrollados
Además del Atlas Supervisor y el OS/360, los años 1970 marcaron el inicio de UNIX, a mediados de los 60 aparece Multics, sistema operativo multiusuario - multitarea desarrollado por los laboratorios Bell de AT&T yUnix, convirtiéndolo en uno de los pocos SO escritos en un lenguaje de alto nivel. En el campo de la programación lógica se dio a luz la primera implementación de Prolog, y en la revolucionaria orientación a objetos,Smalltalk.


   BDOS (Basic Disk Operating System): Traductor de las instrucciones en llamadas a la BIOS.

·         CP/M: (Control Program for Microcomputers) fue un sistema operativo desarrollado por Gary Kildall para el microprocesador Intel 8080 (los Intel 8085 y Zilog Z80 podían ejecutar directamente el código del 8080, aunque lo normal era que se entregara el código recompilado para el microprocesador de la máquina). Se trataba del sistema operativo más popular entre las computadoras personales en los años 70. Aunque fue modificado para ejecutarse en un IBM PC, el hecho que IBM eligiera MS-DOS, al fracasar las negociaciones con Digital Research, hizo que el uso de CP/M disminuyera hasta hacerlo desaparecer. CP/Moriginalmente significaba Control Program/Monitor. Más tarde fue renombrado a Control Program for Microcomputers. En la época, la barra inclinada (/) tenía el significado de "diseñado para". No obstante, Gary Kildall redefinió el significado del acrónimo poco después. CP/M se convirtió en un estándar de industria para los primeros micro-ordenadores.

     La década de 1980
------------------------------------------------------------
   Con la creación de los circuitos LSI (integración a gran escala), chips que contenían miles de transistores en un centímetro cuadrado de silicio, empezó el auge de los ordenadores personales. En éstos se dejó un poco de lado el rendimiento y se buscó más que el sistema operativo fuera amigable, surgiendo menús, e interfaces gráficas. Esto reducía la rapidez de las aplicaciones, pero se volvían más prácticos y simples para los usuarios. En esta época, siguieron utilizándose lenguajes ya existentes, como Smalltalk o C, y nacieron otros nuevos, de los cuales se podrían destacar: C++ y Eiffel dentro del paradigma de la orientación a objetos, y Haskell y Miranda en el campo de la programación declarativa. Un avance importante que se estableció a mediados de la década de 1980 fue el desarrollo de redes de computadoras personales que corrían sistemas operativos en red y sistemas operativos distribuidos. En esta escena, dos sistemas operativos eran los mayoritarios: MS-DOS (Micro Soft Disk Operating System), escrito por Microsoft para IBM PC y otras computadoras que utilizaban la CPU Intel 8088 y sus sucesores, y UNIX, que dominaba en los ordenadores personales que hacían uso del Motorola 68000.