lunes, 13 de diciembre de 2010

Quinta generacion de las computadoras

Quinta generación de computadoras


Las computadoras de quinta generación son computadoras basadas en inteligencia artificial.
La quinta generación de computadoras fue un proyecto ambicioso lanzado por Japón a finales de los 70. Su objetivoera el desarrollo de una clase de computadoras que utilizarían técnicasde inteligencia artificial al nivel del lenguajede máquina y serían capaces de resolver problemas complejos, como la traducción automática de una lenguanatural a otra.

Antecedentes y Diseño del Proyecto

A través de las múltiples generaciones desde los años 50, Japón había sido el seguidor en términos del adelanto y construcción de las computadoras de los Modelos de los Estados Unidosy el Reino Unido. Japón decidió romper con esta naturalezade seguir a los líderes y a mediados de la década de los 70 comenzó a abrirse camino hacia un futuro en la industria de la informática. El centro del desarrollo y proceso de la informaciónde Japón fue el encargado de llevar a cabo un planpara desarrollar el proyecto. En 1979 ofrecieron un contratode tres años para realizar estudios más profundos junto con industriasy la academia. Fue durante este período cuando el término "computadora de quinta generación" comenzó a ser utilizado.
Los campos principales para la investigación de este proyecto inicialmente eran:
  • Tecnologías para el proceso del conocimiento
  • Tecnologías para procesar bases de datosy bases de conocimientomasivo
  • Sitios de trabajo del alto rendimiento
  • Informáticas funcionales distribuidas
  • Supercomputadoras para el cálculocientífico
Debido a la conmoción suscitada que causó que los japoneses fueran exitosos en el área de los artículos electrónicos durante la década de los 70, y que prácticamente hicieran lo mismo en el área de la automoción durante los 80, el proyecto de la quinta generación tuvo mucha reputación entre los otros países.
Tal fue su impacto que se crearon proyectos paralelos. En Estados Unidos, la Corporación de Microelectrónica y Tecnologías de la Computación, en Inglaterra fue Alves, y en Europa su reacción fue conocida como el Programa Europeo en Investigación Estratégica de la Tecnología de la Información.
Como uno de los productos finales del Proyecto se desarrollaron 5 Maquinas de Inferencia Paralela (PIM) teniendo como una de sus características principales 256 elementos de Procesamiento Acoplados en red. El proyecto también produjo herramientas que se podían utilizar con estos sistemas tales como el Sistema Paralelo de Gerencia de Bases de Datos Kappa, el Sistema de Razonamiento Legal HELIC-II y el Teorema Autómata de Aprobaciones MGTP.
Tambien se ha hablado de que la quinta generacion incluye el uso de sistemas expretos estos son aplicaciones de inteligencia artificial que usa una base de conocimiento de la experiencia humana para ayudar a la resolución de problemas
Las computadoras de esta generación contienen una gran cantidad de microprocesadores trabajando en paralelo y pueden reconocer voz e imágenes. También tienen la capacidad de comunicarse con un lenguaje natural e iránadquiriendo la habilidad para tomar decisiones con base en procesos de aprendizaje fundamentados en sistemas expertos e inteligencia artificial.

Tercera y cuarta generacion de las computadoras

TERCERA GENERACIÓN DE COMPUTADORES (1965-1970)
Tecnología.
En 1958 Kilby de Texas Inst. concibió la idea de realizar un circuito integrado monolítico; esto es, la construcción de un circuito entero en un substrato de Ge o Si. En distintos sustratos semiconductores construyó una resistencia, un condensador, transistores, etc. Las conexiones entre los distintos elementos las realizó por termocompresión con hilos de oro; pero ya en su patente indicaba la posibilidad de que los componentes podrían ser integrados en único sustrato de semiconductor y las interconexiones sugería se efectuasen depositando sobre la superficie pistas o tiras de material conductor. En 1960, en un congreso anunció su idea sobre los circuitos sólidos, más adelante denominados circuitos integrados. Los primeros desarrollos comerciales de éxito se deben al desarrollo de la tecnología planar, propuesta por Noyce Y Moore, consistente en la fabricación de dispositivos utilizando procesos fotolitográficos y de difusión térmica. Esta propuesta posibilitó la comercialización de circuitos integrados a partir de 1961 por Fairchild y Texas Inst. La tecnología integrada hace posible la construcción, en un sólo bloque de semiconductor, de un circuito que realice una función electrónica compleja (puertas lógicas, biestables, etc.). Los distintos elementos quedan conectados directa e inseparablemente, obteniéndose sobre el sustrato de cristal una especie de microfotografía del circuito. Algunos de los hechos más relevantes de la nueva tecnología son los siguientes:
  • El bajo coste de los transistores que incluye el circuito integrado, hizo posible diseños de circuitos cada vez más complejos y perfectos.
  • Al estar todos los componentes de un circuito muy próximos, en el mismo cristal, los retardos en la transmisión de señales entre distintos puntos son mínimos.
  • Se reduce el consumo de energía y la fiabilidad de los circuitos.
  • Se consigue una gran minituarización.
  • Se reduce considerablemente el coste, ya que:
  • Se puede automatizar considerablemente la construcción de los circuitos, pudiéndose fabricar en grandes series.
  • Los nuevos dispositivos no sólo contienen conmutadores, sino circuitos completos; es decir, se reduce considerablemente el trabajo manual de interconexión de componentes, se construye simultánea y automáticamente todo el circuito.
Para darse cuenta del avance que toda esta tecnología supuso, hay que recordar que el ENIAC contenía aproximadamente 20000 conmutadores (18000 válvulas de vacío y unos 1500 relés), con lo que todos sus circuitos hubiesen podido integrarse fácilmente en un circuito VLSI (muy gran escala de integración). De hecho, cualquier calculadora electrónica de bolsillo actual realiza funciones más complejas, más rápidamente y con más precisión que el ENIAC, y ¡sin necesitar una superficie de unos 140 m2!
Tecnológicamente, la tercera generación de computadores se caracteriza por la utilización de circuitos integrados SSI (pequeña escala de integración) y MSI (media escala de integración), reemplazando a los circuitos de transistores directos, y consiguiéndose así una reducción significativa en coste y tamaño físico. También poco a poco se fueron imponiendo las memorias realizadas con circuitos integrados, desplazando a las memorias de núcleos de ferrita.
Computadores.
En esta época se desarrollan grandes computadores, dando servicio a gran diversidad de terminales de trabajando en forma local o remota. Con ello se desarrollaron procedimientos para compartir los recursos del computador como la unidad central de procesador, memoria, periféricos,...
También se desarrolló la memoria virtual, esta permite al usuario hacer programas de una capacidad muy superior a la que físicamente tiene el computador. Esto hace posible que la capacidad máxima de los programas venga limitada por el espacio que se reserva en disco para ella y no por la memoria principal.
La memoria virtual permite que aumente el número de procesos en la memoria principal en ejecución concurrente, ya que con ella sólo es necesario que este en memoria principal un trozo mínimo de cada proceso, y no el proceso completo.
Esta memoria se basa que las instrucciones de un programa que se ejecuta sucesivamente están en direcciones muy próximas y en que los programas suelen estar redactados con gran linealidad.
En un sistema de memoria virtual se mantiene en disco un archivo con la imagen del proceso completo, que está troceado en páginas o segmentos, dependiendo del método. La segmentada es más compleja que la del tipo de paginación, ya que los segmentos son de tamaño variable y son más difíciles de gestionar, las paginas son de capacidad constante y preestablecida.
En esta época el diseño arquitectónico del computador se le dio un amplio uso.
La unidad de control micro-programada es la sucesiva a la unidad de control cableada, la cual se generan mediante circuitos lógicos.
La unidad de control micro-programada fue introducida por el ingles Maurice V.Wilkes años antes(1951). Es la secuencia de señales que es codificada e introducida en una pequeña memoria denominada micro-memoria en la CPC.
Podemos tener una palabra con tantos bits como puertas lógicas tengamos que controlar, cada bit implica una puerta(1 abrirla, 0 cerrarla).
Ventajas:
  • Necesita menos HARD por el contrario se precisa más micro-memoria pero esta es más barato.
  • Es más fácil verificar la secuencia al diseñarla y más fácil comprobar en secuencias.
  • La micro-memoria suele ser ROM pero puede ponerse en RAM, de esta manera el programador puede cambiar el repertorio de instrucciones.

En esta época se perfeccionó y generalizó el uso de las técnicas de procesamiento concurrente o paralelo, como segmentación de cauce, multiprogramación y multiprocesamiento.

Se puede considerar que la consolidación de esta técnica se debe a su introducción en algunos modelos de la serie IBM 360.Fue el más significativo de la época, los aspectos más destacables del 360 es que se concibió como una línea o familia de computadores utilizable tanto para aplicaciones comerciales como científico-técnicas.
Todos los modelos de serie tenían el mismo repertorio de lenguaje máquina y el mismo sistema operativo, sólo cambiaba el precio y prestaciones debido a diferentes implementaciones físicas.
El modelo inferior de la serie era comparable al computador más pequeño de IBM de la generación anterior y el modelo superior era mucho más capaz que el 7090.Algunos modelos de la serie 360 difundieron por primera vez nuevas técnicas tales como microprogramación, memoria caché, canales de E/S, controladores DMA, etc. Fue el primer computador comercial que utilizó circuitos integrados.

Otros equipos destacados fueron el UNIVAC, y los supercomputadores escalares CDC 6600(utilizó por primera vez el procesador de E/S programable),CDC 7600 y CDC serie CYBER, que conseguían prestaciones de pico del orden de 15 a 20 mflop/s (millones de instrucciones de coma flotante por segundo).
En 1963 la empresa Digital Equipament Corporation comenzó a comercializar una serie de computadores denominados PDP, estos tipos de computadores se llamaron minicomputadores, en cierta medida fueron revolucionarios. Se trataba de comercializar pequeños equipos informáticos aprovechando al máximo las posibilidades de los circuitos integrados.
Su precio era al menos un orden de magnitud inferior al de los computadores convencionales de la época y su campo de aplicaciones era muy amplio, pues iba desde satisfacer las necesidades de un pequeño departamento de una universidad o empresa, hasta ser utilizado en control industrial, como computador de uso específico dedicado en exclusiva a una aplicación. Las prestaciones fueron comparables a las de los mayores de la segunda generación.
Estos computadores tienen un sistema similar a los mainframes. El rango superior de estos equipos se llamaron "maxi-minis" o "super-minis", se introdujeron para incluir sistemas organizados en palabras de 32 bits, capaces de soportar al menos 16 terminales remotos y con memoria principal mayor de 1 MByte. Su desarrollo se promovió con el objetivo de conseguir sistemas con prestaciones próximas a los macrocomputadores con precios muy inferiores a ellos.

Software.
Una de las características más destacables de la tercera generación de computadores fue el desarrollo de grandes computadores atendiendo a un gran número de terminales. Se difundieron sistemas operativos que utilizaban técnicas tales como multiprogramación, multiprocesamiento, secuencias múltiples, dispositivos de entrada/salida virtuales (“spool”), etc. Cada computador o serie compatible de ellos se utilizaba con un sistema operativo especifico diseñado por el propio constructor del hardware.
El sistema que implementa dispositivos de E/S virtuales se suele denominar “spooler”. La idea del gestor de dispositivos virtuales se aplica a periféricos lentos, y consiste en interponer entre un proceso y el periférico lento un dispositivo de memoria auxiliar rápido. Usualmente un periférico lento es una impresora, un registrador gráfico, etc. y el rápido un disco. Cuando un proceso genera una línea a escribir sobre impresora entra en acción el "spooler" que lleva la información a un archivo de impresión en disco y no a la impresora. De esta forma se consigue que un proceso no esté parado en memoria principal esperando a que la impresora este lista (al estar imprimiendo un listado producido por otro proceso, por estar sin papel o desconectada, etc.). Según se van generando archivos de impresión de distintos procesos, éstos van formando una cola de impresión en un directorio, pudiendo existir varias de ellas.
Existe otro módulo del sistema operativo que se encarga de ir imprimiendo o sacando por el periférico correspondiente los archivos o repetir un determinado listado o “saltar páginas”. El propio modulo de impresión se encarga de ir borrando en el disco los archivos de impresión según se hayan listado completamente.
De la misma forma, existe para periféricos lentos de entrada un “spooler” de entrada. Este era habitual en los computadores que se programaban con tarjetas perforadas y trabajaban por lotes. Los programas eran leídos por el “spooler” de entrada que los almacenaba en archivos, en forma de imágenes de tarjetas, abiertos dentro del directorio ”spool” de entrada. El planificador de trabajos va seleccionando de este directorio, de acuerdo con unas con unas prioridades, el programa que en cada momento debe iniciar su ejecución. Una instrucción de lectura de una tarjeta implica la lectura de una imagen de tarjeta, en lugar de la lectura de una tarjeta real del lector de tarjetas.
Se observa que los módulos “spool” hacen que los procesos “vean” a los periféricos de E/S como archivos en disco, aprovechándose de las mejores prestaciones de este tipo de periférico. Puede decirse que el disco se comporta como (o “virtualmente es”) un dispositivo de E/S tipo digitalizador o impresora, etc., es decir, el disco contiene dispositivos de E/S virtuales.
En la segunda mitad de la década de los sesenta se idearon nuevos lenguajes de programación de alto nivel tales como BASIC (1964), PL/I(1966), APL (1960), PASCAL(1973) y nuevas versiones de lenguajes precedentes.
El lenguaje de programación BASIC fue concebido como un lenguaje interactivo, polivalente y de fácil aprendizaje y empleo. En un principio fue normalizado por el organismo ANSI y de esta normalizacion parten las líneas originales del BASIC. Mas tarde, surgió toda una gran familia de dialectos que cada vez se fueron desviando mas y más del lenguaje original.
En 1977, la empresa americana Microsoft desarrollo un dialecto que pretendía unificas criterios. Rápidamente fue aceptado por varios fabricantes de ordenadores como Tandy, Apple, Commodore...
El gran boom del BASIC ha llegado con la irrupción de los microordenadores, con la gran ventaja de su precio, que los ha hecho asequibles a cualquier bolsillo. Pero hay que señalar que en un principio, el BASIC fue adoptado por los sistemas comerciales de tiempo compartido. De estos es de donde viene la popularidad del BASIC.
En la década de los ochenta, el BASIC se convirtió en el lenguaje de programación más utilizado.
El nombre del lenguaje PASCAL es un homenaje al matemático francés Blaise Pascal que invento en 1690 la primera calculadora mecánica de la historia.
Es un lenguaje inspirado en el Algol y PL/1 y significa un intento de definir un lenguaje de programación de simple aprendizaje y apto para adaptarse a las especificaciones de los algoritmos y a las definiciones de estructura de datos.
Inicialmente se diseño para ser una herramienta para enseñar los conceptos de programación, pero fue adquiriendo gran aceptación y se uso fue creciendo. Es un lenguaje sencillo de aprender, y que facilita su aprendizaje para comprender otros lenguajes no tan fáciles.
El lenguaje C, producto derivado de dos lenguajes precedentes como eran el BCPL y el B, fue desarrollado en los años 70 como consecuencia de la necesidad de una herramienta de programación potente, pero de fácil uso para el diseño del sistema operativo UNIX. A partir del momento de su presentación la aceptación del C fue rápidamente en aumento hasta convertirse a mediados de los 80, en uno de los lenguajes más importantes y extendidos del mercado. Se escribieron numerosos compiladores e interpretes de este lenguaje para todo tipo de ordenadores, lo cual contribuyo a favorecer su programación y a aumentar por tanto su popularidad pero provoco, como contrapartida, pequeñas diferencias entre las distintas versiones que fueron apareciendo y que se alejaban peligrosamente de los estándares. Así pues, la expansión incontrolada del C generó ciertas incompatibilidades entre distintas implementaciones del lenguaje y daño seriamente una de las características más importantes con que contaba el lenguaje: su potabilidad. El Instituto Americano de Estándares propuso unas normas para que fueran adoptadas por todos los compiladores e interpretes de C con lo que se consiguió salvar todas las barreras que la expansión incontrolada del lenguaje había levantado. No obstante el C es un lenguaje que aporta importantes y deseables características, como las que se detallan a continuación:
  • Se trata de un lenguaje de propósito general y en consecuencia utilizado tanto en la programación de sistemas operativos como en las aplicaciones de los usuarios.
  • El diseño del lenguaje favorece la programación estructurada y el diseño modular.
  • Permite la programación tanto a bajo como a alto nivel.
  • Consta de un conjunto de instrucciones relativamente pequeño.
  • Es un lenguaje portable.



CUARTA GENERACIÓN DE COMPUTADORES (1971-1981)
Una de las peculiaridades de la cuarta generación de computadores es el concepto de <<sistemas abiertos>>. Cada computador en las generaciones anteriores estaba muy ligado a su fabricante (sistemas propietarios), de forma que tanto el software como los distintos elementos hardware, incluidos los periféricos, eran suministrados, en la configuración inicial y en ampliaciones sucesivas, exclusivamente por el fabricante original. Con los sistemas abiertos la filosofía es distinta: el usuario puede configurar su sistema prácticamente a medida, adquiriendo software, impresoras, unidades de disco, etc. de <<terceros>> fabricantes. También se caracteriza esta generación por los logros indicados a continuación.
Tecnología.
Se utilizan circuitos integrados LSI (gran escala de integración) y VLSI (muy gran escala de integración), lo que permitió la comercialización de circuitos integrados de memoria conteniendo 1Gbits, con tiempos de acceso de 35 ns, y el desarrollo de los microprocesadores (uno o varios -muy pocos- circuitos integrados que realizan las funciones de un procesador central -UC y UAL) y microcontroladores (circuitos utilizados para la realización de computadores específicos -control de semáforos, control en máquinas lavadoras, etc.), que permitieron la difusión en gran escala de la Informática (aplicaciones de control, electrodomésticos, vehículos, etc.).
Muchas funciones hardware de gran complejidad se implementan con circuitos integrados, con las consiguientes ventajas en cuanto a precio, minituarización, ahorro de consumo y fiabilidad: controladores DMA (acceso directo a memoria, permite descargar a la CPU de las operaciones más elementales de entrada y salida), gestores de memoria, gestores de memoria virtual, controladores de entrada/salida, coprocesadores aritméticos, etc.
Cabe destacar la miniaturización y aumento de la velocidad de las memorias de circuito integrado. En 1970 Intel comercializa las primeras RAM dinámicas (DRAM), y desde entonces se ha logrado un incremento de su capacidad constante: se multiplica por cuatro su capacidad cada tres años. Así, en 1980 se comercializaron chips de 64 Kb con tiempos de acceso del orden de 250 ns, ya en 1992 había chips de 16 Mb con tiempos de acceso de 90 ns, y en 1995 Hitachi anunció DRAMs de 1 Gbit con tiempos de acceso de 33 ns.
Diferencia entre RAM estática y RAM dinámica.
  • RAM estáticas o SRAM.
Las celdas de este tipo de memoria RAM mantienen la información escrita en ellas mientras reciben alimentación eléctrica. Se construyen con transistores bipolares (teniendo como ventaja este tipo de construcción su gran velocidad, con tiempos de acceso menores de 30 ns) o con transistores MOS, siendo esta construcción la más empleada debido a:
  • - La mayor densidad de integración, cada celda ocupa menos superficie de silicio.
  • - Son más baratas.
  • - Tienen un consumo menor.
    • RAM dinámicas o DRAM.
  • En las SRAM la grabación de bits en las celdas quedaba determinada por la conducción de uno de los transistores. En las DRAM el soporte físico del bit almacenado lo constituye un condensador, cuyo estado de carga representa el nivel lógico almacenado (0 - sin carga / 1 - cargado). La implementación se realiza mediante un transistor MOS.
    Computadores.
    Los aspectos más importantes es la comercialización de los ordenadores personales (PCs), supuso la difusión plena.
    Los ordenadores personales son microcomputadores de longitud de palabra de 16 o 32 bits, su memoria principal suele tener una capacidad del orden de 2 MBytes. Normalmente se utilizan en la forma monousuario. Una de las características fundamentales de estos sistemas es la gran cantidad de programas disponibles para ellos, y la gran compatibilidad entre unos y otros.
    El 1ª PC, el Altair se produjo en 1975 por MITS. El IBM-PC se anuncio en 1981.Muchos elementos del primer PC están incluidos en los modelos de hoy.
    También se destaca la estación de trabajo "workstation", se puede considerar el minicomputador de la cuarta generación, sus objetivos eran: altas prestaciones a muy bajo precio atendiendo demandas departamentales para aplicaciones cientifico-técnicas. Los orígenes de las estaciones de trabajo se remontan a 1973.
    Estos equipos suelen utilizarse en forma monousuario y disponen de pantalla, teclado y ratón, es un microprocesador de gran potencia, están conectadas a redes a través de las cuales usan "servidores de archivos"(computadores sin pantalla y teclado que disponen de grandes capacidades de disco y de cintas magnéticas, para ser utilizados por distintos computadores y terminales de la red). Su capacidad de memoria oscila por lo general entre 2 y 32 MBytes, suelen utilizar el sistema operativo UNIX.
    Desarrollaron un microcomputador con grandes posibilidades gráficas junto con otros elementos característicos del uso de este tipo de equipos: red local Ethernet e impresora láser.
    Un hecho notable ha sido el desarrollo de la teleinformática, que permite la creación de grandes redes de computadores, tanto de área local como de áreas públicas, distribuyendo eficientemente los recursos tanto hardware como software.
    Los avances arquitectónicos hay que destacar el surgimiento de procesadores de "conjunto reducido de instrucciones", en los que, además de tener un repertorio de instrucciones máquina muy limitada, se tiende a que todas éstas sean de longitud fija, con pocos modos de direccionamiento y transvases entre CPU y memoria sólo se realizan con instrucciones específicas de carga-almacenamiento y operaciones sólo con datos en registros para facilitar la optimización de la segmentación de cauce. También es de destacar la comercialización de supercomputadores de distintos tipos, como vectoriales, matrices y multiprocesador.

    Software.
    En el comienzo de esta generación se anuncia el primer computador con memoria virtual, IBM-370 en el año 1972.
    Una de las características fundamentales de la presente generación es la difusión de sistemas operativos estándar, no dependientes directamente de los constructores del hardware y, por tanto, utilizables por distintos modelos de computadores. Los casos más sobresalientes son el UNIX proyectado inicialmente para minicomputadores y en la actualidad muy utilizado para estaciones de trabajo y computadores superiores. El UNIX es un sistema operativo multiusuario, soporta varios usuarios actuando al mismo tiempo sobre el ordenador y multitarea (ejecución de mas de un programa a la vez) diseñado inicialmente para miniordenadores. No obstante, debido a su facilidad de uso, independencia del hardware y adaptabilidad a las exigencias de cada usuario, el UNIX está penetrando mas en el mundo de los microordenadores.
    El sistema operativo UNIX se gesto a finales de los años sesenta. Inicialmente fue escrito en el lenguaje ensamblador, pero en el 71 fue trasladado al más famoso ordenador de la gama PDP reescribiendo parte del sistema operativo en un nuevo lenguaje, el B, precursor del actual lenguaje C.
    Ese mismo año llegó la versión del UNIX a un programador de los laboratorios Bell, Dennis Ritchi, padre del lenguaje C que junto con Ken Thompson tradujo enteramente el UNIX a este lenguaje.
    Dada la imposibilidad de su comercialización por parte de la ATS & T, esta firma decidió distribuirlo con fines puramente filantrópicos entre los colegios y universidades que lo solicitaran a cambio de un pago simbólico, estas entidades recibían una cinta con el UNIX. Semejante decisión causó principalmente dos efectos de distinto signo. El primero fue la rápida extensión y uso de UNIX al entrar en contacto con multitudes de estudiantes y laboratorios de investigación, lo que contribuyo a que se convirtiera en uno de los sistemas operativos más conocidos dentro del mundo científico. El segundo efecto se concreta en la gran diversidad de versiones que han ido surgiendo a partir del UNIX primigenio, ello tiene su razón principal en el hecho de que no existiera una única mano que dirigiese su desarrollo, así como a la gran facilidad que presenta el UNIX para recibir nuevas aplicaciones.
    Otros sistemas operativos que se comercializaron en los años 80 fueron el MS/DOS para computadores personales y cuya versión 1.0 se comercializo en Agosto de 1981, el OS/2 de IBM y Microsoft en Abril de 1988 y el WINDOWS NT de Microsoft en Agosto de 1993.
    También es de destacar el desarrollo a mediados de los ochenta de sistemas operativos de red y sistemas operativos distribuidos. Con un sistema operativo de red un usuario de un computador puede realizar operaciones tales como introducirse a través de la red de un computador remoto ejecutar programas allí o copiar archivos de un computador a otro. Un sistema operativo distribuido permite al usuario trabajar aparentemente con un único computador, siendo el sistema operativo el que automáticamente distribuye de forma transparente para el usuario su programa o programas y archivos en diferentes computadores. Por ejemplo, se puede consulta un dato a una base de datos distribuida entre varios computadores y el sistema operativo puede encaminar adecuadamente la consulta y su respuesta.
    A partir de 1971 se consolidan conceptos nuevos de programación, tales como el de programación lógica, y el de programación dirigida a objetos que supone una herramienta que facilita notablemente el desarrollo de las facultades creativas de programador. Cabe destacar el desarrollo del lenguaje de programación lógica PROLOG que es especialmente útil en aplicaciones de lenguaje natural, demostración automática de teoremas, construcción de sistemas expertos y gestión y consulta de bases de datos inteligentes.
    La programación lógica es una variedad de programación declarativa, usa como base de sentencias de la lógica de primer orden. La programación lógica trata con relaciones en lugar de con funcione, lo que nos proporciona mayor flexibilidad, ya que las relaciones no tienen sentido de la dirección y tratan uniformemente argumentos y resultados.
    El lenguaje más característico para la programación dirigida a objetos es el SMALLTALK. Otro lenguaje de gran interés es el C que se ideo con objeto de facilitar la redacción de las primeras versión de UNIX. Su principal ventaja radica en que es de una gran portabilidad y además de ser un auténtico lenguaje de alto nivel, permite codificar operaciones a muy bajo nivel, manipulación directa de registros de la CPU. Tuvo un gran éxito una versión de C dirigida a objetos (C++). También merece mención especial el lenguaje Ada que fue definido por comités de expertos designados por el Departamento de defensa de los Estados Unidos, al objeto de integrar las posibilidades de todos los lenguajes importantes de la época, y unificar así las herramientas de programación de todo el Departamento, para reducir costes, ya que se estimó que los gastos en software del DoD para el año 1990 seria de unos 30000 millones de dólares. Fue implementado por primera vez en 1980.
    Se conocen como lenguajes de la tercera generación, a partir de 1954 los lenguajes imperativos o lenguajes de alto nivel clásicos: FORTRAN, COBOL, LISP, SNOBOL, APL, BASIC, PASCAL, C, ADA.
    En la cuarta generación a partir de 1961 se incluyen los lenguajes funcionales en su doble vertiente los lenguajes de programación lógica (PROLOG) y lenguajes de programación dirigida a objetos (SMALTALK, C++, etc.). No obstante lo anterior, vulgarmente se conoce como lenguajes de cuarta generación, lenguajes o entornos de programación para uso de paquetes comerciales concretos (Dbase, Oracle, Focus, etc.), que sirven de puente para aproximar cada vez más el computador a la aplicación y al lenguaje natural.
    La tendencia actual más relevante de los lenguajes de programación es tratar de desarrollar entornos de programación y programas lo más cómodos posibles de utilizar y como consecuencia lo más próximo posible al lenguaje natural.

segunda generacion de computadoras

Segunda generación de computadoras

La Segunda Generación de los transistores reemplazó a las válvulas de vacío en los circuitos de las computadoras.
Las computadoras de la segunda generación ya no son de válvulas de vacío, sino con transistores, son más pequeñas y consumen menos electricidad que las anteriores, la forma de comunicación con estas nuevas computadoras es mediante lenguajes más avanzados que el lenguaje de máquina, y que reciben el nombre de "lenguajes de alto nivel" o lenguajes de programación.
Las características más relevantes de las computadoras de la segunda generación son:
  • 1956, IBM vendió su primer sistema de disco magnético, RAMAC [Random Access Method of Accounting and Control]. Usaba 50 discos de metal de 61cm, con 100 pistas por lado. Podía guardar 5 megabytes de datos y con un coste de $10.000 por megabyte.
  • El primer lenguaje de programación de propósito general de alto-nivel, FORTRAN, también estaba desarrollándose en IBM alrededor de este tiempo. (El diseño de lenguaje de alto-nivel Plankalkül de 1945 de Konrad Zuse no se implementó en ese momento).
  • 1959, IBM envió la mainframe IBM 1401 basado en transistor, que utilizaba tarjetas perforadas. Demostró ser una computadora de propósito general y 12.000 unidades fueron vendidas, haciéndola la máquina más exitosa en la historia de la computación. tenía una memoria de núcleo magnético de 4.000 caracteres (después se extendió a 16.000 caracteres). Muchos aspectos de sus diseños estaban basados en el deseo de reemplazar el uso de tarjetas perforadas, que eran muy usadas desde los años 1920 hasta principios de los '70.
  • 1960, IBM lanzó el mainframe IBM 1620 basada en transistores, originalmente con solo una cinta de papel perforado, pero pronto se actualizó a tarjetas perforadas. Probó ser una computadora científica popular y se vendieron aproximadamente 2.000 unidades. Utilizaba una memoria de núcleo magnético de mas de 60.000 dígitos decimales.
  • DEC lanzo el PDP-1, su primera máquina orientada al uso por personal técnico en laboratorios y para la investigación.
  • 1964, IBM anunció la serie 360, que fue la primera familia de computadoras que podía correr el mismo software en diferentes combinaciones de velocidad, capacidad y precio. También abrió el uso comercial de microprogramas, y un juego de instrucciones extendidas para procesar muchos tipos de datos, no solo aritmética. Además, se unificó la línea de producto de IBM, que previamente a este tiempo tenía dos líneas separadas, una línea de productos "comerciales" y una línea "científica". El software proporcionado con el System/350 también incluyo mayores avances, incluyendo multi-programación disponible comercialmente, nuevos lenguajes de programación, e independencia de programas de dispositivos de entrada/salida. Más de 14.000 System/360 habían sido entregadas en 1968.

Primera generacion de computadoras

 Primera generación de computadoras:
La primera generación de computadoras electrónicas ocurrió a partir de 1945 y duró aproximadamente hasta 1956. Una de las primeras computadoras que se construyeron fue la llamada ENIAC (Electronic Numeric Integrator And Calculator), construida en 1945 por la Universidad de Pensilvania, en los Estados Unidos de América, y el propósito para su construcción fue realizar cálculos con fines bélicos, durante la segunda guerra mundial.

Las computadoras de la primera generación se caracterizaron por tener varios problemas en común. Todos estos problemas tienen que ver con:

· Tamaño: Las computadoras de la primera generación eran enormes. La ENIAC pesaba 30 toneladas y se requería todo un edificio para alojarla. Tenía 18,000 bulbos, 70,000 resistencias y 5.000.000 soldaduras.

· Precio: Las computadoras de esta generación costaban tanto dinero que casi nadie podía comprarlas, solamente las más grandes instituciones gubernamentales y unas pocas universidades, pues el costo estaba en el orden de los millones de dólares.

· Consumo de energía: Esta clase de computadoras gastaba muchísima energía eléctrica, alrededor de 200 KW/h, de modo que cuando la ENIAC funcionaba, toda la ciudad de Philadelphia se enteraba, porque bajaba la corriente eléctrica.

· Poca confiabilidad: Esto se debió principalmente a que los componentes electrónicos con los que estaban construidas estas computadoras, fallaban en promedio cada 7 minutos y medio, lo que obligaba a reiniciar los cálculos en cada evento de esta naturaleza. En ocasiones la computadora arrojaba resultados diferentes en cada corrida, dependiendo de qué bulbo (o componente) estaba dañado.
En 1946, John von Neumann, quien fue pionero en las ciencias computacionales, estudió e hizo significativos aportes al desarrollo del software, de hecho, fue von Neumann quien inventó los diagramas de flujo. Las principales líneas de investigación en la teoría de la programación fueron:

· Las instrucciones y los datos se almacenan en un lugar específico en la computadora, la memoria de lectura y escritura.

· El espacio en memoria era perfectamente distinguible por localidades únicas, nombradas por medio de una dirección.

· Los programas se ejecutaban en forma secuencial, y a su vez, las instrucciones de los programas también se hacían en forma secuencial.