Sistemas y Telecomunicaciones
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.


Foro de discusión creado para desarrollar los contenidos Academicos de las materias y temas propuestos de interés para los estudiantes de Sistemas.
 
ÍndiceÍndice  SistemasSistemas  GaleríaGalería  Últimas imágenesÚltimas imágenes  BuscarBuscar  RegistrarseRegistrarse  Conectarse  
Bienvenidos a mis clase desarrolladas, las materias recientemente registradas son Analisis y Diseño de Sistemas Estructurados y Arquitectura Computacional.
No olviden que debn registrase para poder colocar respuestas. Y colocar sus deberes.

 

 Galo Galarza Acosta

Ir abajo 
AutorMensaje
GaloGalarzaAcosta
Novato
Novato



Cantidad de envíos : 13
Puntos : 38
Reputación : 1
Fecha de inscripción : 14/08/2010

Galo Galarza Acosta Empty
MensajeTema: Galo Galarza Acosta   Galo Galarza Acosta EmptySáb Sep 11, 2010 5:21 pm

HISTORIA DE LOS SISTEMAS OPERATIVOS.
Deber.
Completar la breve historia de los Sistemas Operativos. Tomando en consideración los siguientes hitos históricos.

Década 1940
Primeros computadores, no existen sistemas operativos.

A finales de los años 40, con la aparición de la primera generación de computadoras, se realizaba lo que se llama el proceso en serie. Por aquel entonces no existían los sistemas operativos, y los programadores debían interactuar con el hardware del computador sin ayuda externa. Esto hacía que el tiempo de preparación para realizar una tarea fuera excesivo.

ENIAC – Electronic Numerical Integrator and Calculator (Calculador e integrador numérico electrónico) fue creado por la Universidad de Pennsylvania en el año 1.946. Estaba compuesto por 18.000 tubos de vacio (válvulas eléctricas) de 16 tipos distintos – 30 toneladas – consumía una desaforada cantidad de energía, entre 100 y 140 Kwh. Medía 30 metros de largo, 3 de alto y 1 de ancho. El primer programa que ejecutó fue un cálculo de trayectoria balística, además revisiones atmosféricas, elaborar cómputos relativos a la bomba de hidrógeno, proyectar diseños de un túnel de viento o de comprobación de efecto aerodinámico. Funcionó hasta 1955, estimándose que realizó la misma cantidad de operaciones matemáticas hasta antes de 1945 en el mundo.

Integrantes de este proyecto ENIAC.
El norteamericano John Vincent Atanasoff, nació en 1.903, en el seno de una familia amante de la ciencia y las matemáticas. Atanasoff había de participar destacadamente en las innovaciones computacionales de los años 40.
John Mauchly dirigía el departamento de Física de una escuela universitaria de Filadelfia.
J. Presper Eckert técnico de laboratorio.



Arquitectura Von Neumann
La primera descripción de cómo un computador electrónico debía almacenar programas y procesar información fue escrita por John Von Neumann el 30 de Junio de 1946. Esta arquitectura comprendía:
1) Unidad Aritmética Lógica (ALU).
2) Unidad de Control.
3) Memoria.
4) I/O (Input / Output).





Estructura
Grandes máquinas ejecutándose desde una consola
Computadora dedicada a un usuario/programador a la vez.
Programador / usuario como operador
Tarjetas perforadas o cintas programadas
Programación y depuración mediante switches y focos de luz.
Primer Software
Ensambladores, cargadores, linkers, Librerías de subrutinas comunes.
Compiladores.
Drivers de dispositivos.
Uso ineficiente de recursos
Baja utilización del CPU
Mucho tiempo en inicialización del sistema (setup time)
Programación y depuración es lenta y tediosa.








Década 1950
Procesamiento Batch (procesamiento por lotes).
Llevar acabo una operación particular de forma automática en un grupo de archivos todos de una vez, en lugar de manualmente abrir, editar y guardar cada archivo por vez. Por ejemplo, un programa que convierta un grupo de imágenes de un formato a otra todas de una vez sería una utilidad de procesamiento batch.
Para facilitar la interacción entre persona y computador, los sistemas operativos hacen una aparición discreta y bastante simple, con conceptos tales como:
Monitor residente.
Proceso por lotes (batch processing).
Almacenamiento temporal.
EDVAC – Electronic Discrete Variable Automatic Computer
Una de las primeras computadoras en utilizar el sistema binario para realizar operaciones básicas.

• Cuenta con un operador distinto al usuario.
• Incluye un lector de tarjetas. El usuario/programador somete un conjunto de tarjetas perforadas que contienen un job a ejecutarse.
• Reduce el tiempo de inicialización ejecutando en batch jobs similares.
• Jobs de varios usuarios son ejecutados en secuencia por un monitor residente. Primer sistema operativo rudimentario.
• Monitor residente
Control inicial en el monitor.
Transfiere el control al primer job.
Cuando el job termina se transfiere el control al monitor.


Década 1960.
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.
• Sistemas multiprogramados - varios jobs se conservan en memoria al mismo tiempo, y el cpu se comparte entre ellos
• Rutinas de E/S provista por el sistema ejecutadas simultáneamente con procesamiento del CPU.
• Administración de memoria - el sistema debe reservar memoria para varios jobs.
• Administración del CPU - el sistema debe elegir entre varios jobs listos para ejecución.
• Administración de dispositivos.



Tiempo compartido.
Al realizar una operación de E/S los programas ceden la CPU a otro programa, al 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 otro aplicación. Con esto se consigue repartir la CPU por igual entre los programas de los distintos usuarios, y los programas de los usuarios no se sienten demasiado ralentizados por el hecho de que los recursos sean compartidos y aparentemente se ejecutan de manera concurrente.
• El CPU se comparte entre varios jobs que se encuentran residentes en memoria y en disco (el CPU se asigna a un job solo si este esta en memoria).
• Un job es enviado dentro y fuera del la memoria hacia el disco.
• Existe comunicación en-línea entre el usuario y el sistema; cuando el sistema operativo finaliza la ejecución de un comando, busca el siguiente “estatuto de control” no de una tarjeta perforada, sino del teclado del operador.
• Existe un sistema de archivos en-línea el cual esta disponible para los datos y código de los usuarios

Multiprocesador.
Permite trabajar con máquinas que poseen más de un procesador. En un multiprocesador los procesadores comparten memoria y reloj.

Desarrollos Importantes
- COBOL
- BASIC
- Mouse
- LOGO
- UNIX


Década 1970.

Time-Sharing & minicomputadores.
El tiempo compartido se refiere a compartir un recurso de computación entre muchos usuarios por medio de la multitarea. Su introducción en los años 1960, y el surgimiento como el modelo prominente de la computación en los años 1970, representa un cambio importante en la historia de la computación. Al permitir que un gran número de usuarios interactuara simultáneamente en una sola computadora, bajó drásticamente el costo del servicio de computación, mientras que al mismo tiempo hacía la experiencia computacional mucho más interactiva.


El primer proyecto para implementar un sistema de tiempo compartido fue iniciado por John McCarthy a finales de 1957, en un IBM 704 modificado.

• Computadoras de menor tamaño.
• Desarrollo de sistemas operativos (UNIX, DOS, CP/M).
• Mejora en las interfaces de usuario.
• Introducción de Microprocesadores.
• Desarrollo de lenguajes de programación.


Cronología de la línea Unix


- MULTICS: primero en implementar time-sharing (multitarea)
- UNIX: iniciado debido a la complejidad de MULTICS, gracias a la invención de C
- MINIX: Escrito por Tannenbaum como respuesta para un sistema minimalista que pudiera usar en su curso de SO de pregrado.
- LINUX: Creado a partir de UNIX encuentra su cabida en el proyecto GNU



Década 1980.
Microprocesadores & PC.

• Computadoras Personales- sistemas de cómputo dedicados a un solo usuario.
• Dispositivos de E/S- teclados, ratón, pantalla, impresoras..
• Conveniente al usuario y de respuesta rápida.
• Puede adaptarse a la tecnología para soportar otros sistemas operativos.

• Aparición de software amigable con el usuario, destinado a usuarios no profesionales y con una interface gráfica muy desarrollada.
• Desarrollo de sistemas operativos de red y sistemas operativos distribuidos.
• Sistemas operativos de red:
• Los usuarios están conscientes de la existencia de varias computadoras conectadas.
• Cada máquina ejecuta su propio S. O. local.
• Son similares a los S. O. de un solo procesador pero con el agregado de:
• Controlador de interfaz de la red y su software de bajo nivel.
• Software para conexión y acceso a archivos remotos, etc.
• Sistemas operativos distribuidos:
Aparece ante los usuarios como un S. O. de un solo procesador, aún cuando de soporte a varios procesadores.
Los usuarios no son conscientes del lugar donde se ejecutan sus programas o donde se encuentran sus archivos, ya que lo debe administrar el S. O. automáticamente.
Deben permitir que un programa se ejecute mediante varios procesadores a la vez, maximizando el paralelismo.

Aparición de emuladores de terminal para el acceso a equipos remotos desde computadoras personales (PC).
Gran énfasis en la seguridad, en especial por el desarrollo de los sistemas de comunicaciones de datos.
El S. O. crea un ambiente de trabajo según el concepto de máquina virtual, que lo aísla del funcionamiento interno de la máquina.
Proliferación de sistemas de bases de datos, accesibles mediante redes de comunicación.





Década 1970, 1980.
Redes.


• Estaciones de Trabajo: (Sun, Vax, Silicon Graphics).
• Redes de Area Local (Ethernet, Token Ring, FDDI, ATM), Redes de larga distancia (Arpanet).
• Redes organizadas como clientes-servidores.
• Servicios de S.O. Protocolos de comunicación, encriptación de datos, seguridad, consistencia en datos distribuidos.


Sistemas Paralelos.
• Sistemas paralelos - sistemas de múltiples procesadores con mas de 1 procesador con comunicación entre ellos.
• Sistema fuertemente acoplado - los procesadores comparten memoria y reloj; la comunicación usualmente se realiza mediante memoria compartida.
• Ventajas:
– Incremento de throughput.
– Económica.
– Incremento en la confiabilidad.


Década 1990 y Futuro.
PC’s, WWW, Sistemas Móviles (redes móviles e inalámbricas), Sistemas Distribuidos.


• Computo Paralelo (Teraflops).
• PC’s poderosas (1.5 GigaHertz), Computadoras Multimedia.
• Redes de Comunicación de distancia mundial, con envío de imágenes, grandes cantidades de datos, audio y video.
• World Wide Web.
• Notebooks utilizando tecnologías de comunicación inalámbrica: Computo Móvil.
• Computo Embebido y Robótica.


Sistemas Distribuidos.
• Sistemas Distribuidos - distribuyen el cómputo entre varios procesadores geográficamente dispersos.
• Sistemas débilmente acoplados - cada procesador tiene su propia memoria local y el procesador se comunica con los demás procesadores mediante líneas de comunicación, buses de alta velocidad y líneas telefónicas.
• Ventajas:
– Compartición de recursos
– Incremento en la velocidad de cómputo
– compartición de carga
– Confiabilidad
– Comunicación

Otras definiciones:

“Un Sistema Distribuido es una colección de computadores independientes que aparecen ante los usuarios como un único sistema coherente.” (Andrew S. Tannenbaum)
“Un sistema en el cual tanto los componentes de hardware y software de un computador conectados en red se comunican y coordinan mediante paso de mensajes.” (G.Coulouris, J.Dollimore, T.Kindberg)

Sistemas Operativos Multicomputador
 Múltiples computadores conectados por red.
 Cada procesador tiene su propia memoria.
 Comunicación únicamente a través de paso de mensajes.
 Sincronización basada en semánticas particulares de paso de mensajes

Multiprogramación y sistemas embebidos
La multiprogramación no se aplica solamente en sistemas de cómputo completos (PC, MainFrames, etc.)

La primera computadora personal al principio de los años 80 tenía 40KB de ROM, 256 o 512KB de RAM, y opcionalmente un disco duro de 5 o 10 MB de capacidad. A mediados de los años 90 una computadora personal moderna tenia un poco mas de ROM, 32 MB de RAM y un disco duro con 2 o 4GB de capacidad. Los discos flexibles “Floppy” con 360KB o 720KB de capacidad, los cuales fueron los medios standards para la distribución de paquetes de software y para respaldos, han sido reemplazados por unidades CD-ROM y dispositivos de almacenamiento magnético en cinta con capacidades por encima de 500MB.

Una computadora personal es un sistema abierto que puede ser extendido tanto en términos de memoria y periféricos. Por un corto tiempo, una computadora personal puede estar al día con los desarrollos tecnológicos añadiendo memoria y periféricos hasta que últimamente dejen de ser actualizados. De todas formas una computadora personal puede vivir por décadas; pero su tiempo de vida real a menudo está determinado por la creciente demanda de memoria de los sistemas operativos y aplicaciones más que por la vida útil de su hardware. Así que para extender la vida útil de una computadora personal lo más posible y aún reducir los costos, su configuración debe ser debidamente planificada.

Para un sistema embebido, en contraste, los requerimientos de memoria son conocidos por adelantado; así que los costos pueden ser reducidos usando solo la memoria que se necesite. A diferencia de las computadoras personales, donde la memoria ROM es solo usada para el sistema de carga, el tamaño de la ROM juega un rol mayor en los requerimientos de memoria de sistemas embebidos, y eso es porque la ROM es usada como memoria de programa. Para las ROM, varios tipos de memoria están disponibles, y sus precios difieren de manera dramática EEPROM es la mas costosa, seguida por RAM, EPROM estáticas, RAM dinámica, discos duros, discos flexibles, CD-ROMs, y cintas magnéticas. La solución más económica es combinar discos duros (el cual provee no volatibilidad) y RAM dinámica (que provee tiempos de acceso rápidos).

Generalmente, la tecnología de memoria usada para una aplicación embebida está determinada por la misma aplicación. Por ejemplo: Para una impresora láser, la RAM será dinámica, y la memoria de programa será EEPROM, EPROM o RAM cargada desde un disco duro. Para un teléfono móvil, EEPROM y RAM estática serían preferiblemente usadas.



World Wide Web (WWW)
Aparecen antes los usuarios como un repositorio gigantesco de documentos
Está compuesto por un conjunto de documentos de hipertexto interconectados que se encuentran en diferentes servidores Web y otros documentos, menús y bases de datos que se encuentran disponibles a través de los URL (localizadores de recursos uniformes). Todos estos documentos están realizados y enlazados con el HTML y los servidores utilizan el HTTP para distribuir las páginas. En su origen este sistema fue ideado como un recurso de documentación en línea para los físicos del CERN (Conseil Européen pour Recherce Nucleaire). Ahora se llama European Particle Physics Laboratory (Laboratorio europeo de partículas físicas) Son los creadores de la WWW y del primer Web browser.

Sistemas de tiempo real.
A menudo utilizados como dispositivo de control en aplicaciones dedicadas, como control de experimentos científicos, sistemas de procesamiento de imágenes médicas, sistemas de control industrial, etc.
Exige complimiento de restricciones de tiempos.
Sistemas de tiempo real críticos.
– Cumplimiento forzoso de plazos de respuesta.
– Predecibilidad y análisis de cumplimiento de plazos de respuesta
Sistemas de tiempo real acríticos.
– Exigencia “suave” de plazos de respuesta.
– Atención lo más rápido posible a eventos, en promedio.

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.


Sistema operativo.- conjunto de programas o software destinado a permitir la comunicación del usuario con un ordenador y gestionar sus recursos de manera cómoda y eficiente. Comienza a trabajar cuando se enciende el ordenador, y gestiona el hardware de la máquina desde los niveles más básicos.


Sistemas móviles
Android.
Android es un sistema operativo, además de una plataforma de software basada en el núcleo de Linux. Diseñada en un principio para dispositivos móviles. Permite controlar dispositivos por medio de bibliotecas desarrolladas o adaptadas por Google mediante el lenguaje de programación Java. Es una plataforma de código abierto, esto quiere decir que cualquier desarrollador puede crear y desarrollar aplicaciones escritas con lenguaje C u otros lenguajes y compilarlos a código nativo de ARM (Api de Android). Inicialmente Android fue desarrollado por Google Inc., aunque poco después se unió Open Handset Alliance, un consorcio de compañías de hardware, software y telecomunicaciones.
Entre sus ventajas, es que se puede tener varias cuentas en el teléfono.
Soporte a múltiples resoluciones de pantalla.
Base de datos para almacenamiento estructurado que se integra directamente con las aplicaciones.
Volver arriba Ir abajo
 
Galo Galarza Acosta
Volver arriba 
Página 1 de 1.
 Temas similares
-
» XaVier Acosta; Galo Galarza
» Asiganción de espacios - Galo Galarza - Xavier Acosta
» Xavier Acosta Ch.
» EJERCICIO DE PAGINACION -- FREDDY SANCHEZ, GALO GALARZA, XAVIER ACOSTA
» Asignación de Espacios - Galarza Acosta - Acosta Choez

Permisos de este foro:No puedes responder a temas en este foro.
Sistemas y Telecomunicaciones :: Foro de Sistemas Operativos :: CISC 2010-C2 :: Deber 1 - Historia de los Sistemas Operativos-
Cambiar a: