La Historia que Llevó a Construir la Primera Computadora
Por siglos los hombres han tratado de usar fuerzas y artefactos de diferente tipo para realizar sus trabajos, para hacerlos mas simples y rápidos. La historia conocida de los artefactos que calculan o computan, se remonta a muchos años antes de Jesucristo.
Dos principios han coexistido con la humanidad en este tema. Uno es usar cosas para contar, ya sea los dedos, piedras, semillas, etc. El otro es colocar esos objetos en posiciones determinadas. Estos principios se reunieron en el ábaco, instrumento que sirve hasta el día de hoy, para realizar complejos cálculos aritméticos con enorme rapidez y precisión.
El Ábaco Quizá fue el primer dispositivo mecánico de contabilidad que existió. Se ha calculado que tuvo su origen hace al menos 5.000 años y su efectividad ha soportado la prueba del tiempo.
Desde que el hombre comenzó a acumular riquezas y se fue asociando con otros hombres, tuvo la necesidad de inventar un sistema para poder contar, y por esa época, hace unos miles de años, es por donde tenemos que comenzar a buscar los orígenes de la computadora, allá por el continente asiático en las llanuras del valle Tigris.
Esa necesidad de contar, que no es otra cosa que un término más sencillo y antiguo que computar, llevo al hombre a la creación del primer dispositivo mecánico conocido, diseñado por el hombre para ese fin, surgió la primera computadora el ABACO o SOROBAN.
El ábaco, en la forma en que se conoce actualmente fue inventado en China unos 2.500 años AC, más o menos al mismo tiempo que apareció el soroban, una versión japonesa del ábaco. En general el ábaco, en diferentes versiones era conocido en todas las civilizaciones de la antigüedad. En China y Japón, su construcción era de alambres paralelos que contenían las cuentas encerrados en un marco, mientras en Roma y Grecia consistía en una tabla con surcos grabados.
A medida que fue avanzando la civilización, la sociedad fue tomando una forma más organizada y avanzada, los dispositivos para contar se desarrollaron, probablemente presionados por la necesidad, y en diferentes países fueron apareciendo nuevos e ingeniosos inventos cuyo destino era calcular.
Leonardo da Vinci (1452-1519). Trazó las ideas para una sumadora mecánica, había hecho anotaciones y diagramas sobre una máquina calculadora que mantenía una relación de 10:1 en cada una de sus ruedas registradoras de 13 dígitos.
John Napier (1550-1617). En el Siglo XVII en occidente se encontraba en uso la regla de cálculo, calculadora basada en el invento de Napier, Gunther y Bissaker. John Napier descubre la relación entre series aritméticas y geométricas, creando tablas que él llama logaritmos. Edmund Gunter se encarga de marcar los logaritmos de Napier en líneas. Bissaker por su parte coloca las líneas de Napier y Gunter sobre un pedazo de madera, creando de esta manera la regla de cálculo. Durante más de 200 años, la regla de cálculo es perfeccionada, convirtiéndose en una calculadora de bolsillo, extremadamente versátil. Por el año 1700 las calculadoras numéricas digitales, representadas por el ábaco y las calculadoras análogas representadas por la regla de cálculo, eran de uso común en toda Europa.
Blas Pascal (1623-1662). El honor de ser considerado como el "padre" de la computadora le correspondió al ilustre filósofo y científico francés quien siglo y medio después de Leonardo da Vinci inventó y construyó la primera máquina calculadora automática utilizable, precursora de las modernas computadoras. Entre otras muchas cosas, Pascal desarrolló la teoría de las probabilidades, piedra angular de las matemáticas modernas. La pascalina funciona en base al mismo principio del odómetro (cuenta kilómetros) de los automóviles, que dicho sea de paso, es el mismo principio en que se basan las calculadoras mecánicas antecesoras de las electrónicas, utilizadas no hace tanto tiempo. En un juego de ruedas, en las que cada una contiene los dígitos, cada vez que una rueda completa una vuelta, la rueda siguiente avanza un décimo de vuelta.
A pesar de que Pascal fue enaltecido por toda Europa debido a sus logros, la Pascalina, resultó un desconsolador fallo financiero, pues para esos momentos, resultaba más costosa que la labor humana para los cálculos aritméticos.
Gottfried W. von Leibnitz (1646-1717). Fué el siguiente en avanzar en el diseño de una máquina calculadora mecánica. Su artefacto se basó en el principio de la suma repetida y fue construida en 1694. Desarrolló una máquina calculadora automática con capacidad superior a la de Pascal, que permitía no solo sumar y restar, sino también multiplicar, dividir y calcular raíces cuadradas. La de Pascal solo sumaba y restaba. Leibnitz mejoro la máquina de Pascal al añadirle un cilindro escalonado cuyo objetivo era representar los dígitos del 1 al 9. Sin embargo, aunque el merito no le correspondía a él (pues se considera oficialmente que se inventaron más tarde), se sabe que antes de decidirse por el cilindro escalonado Leibnitz consideró la utilización de engranajes con dientes retráctiles y otros mecanismos técnicamente muy avanzados para esa época. Se le acredita el haber comenzado el estudio formal de la lógica, la cual es la base de la programación y de la operación de las computadoras.
Joseph-Marie Jackard (1753-1834). El primer evento notable sucedió en el 1801 cuando el francés, Joseph Jackard, desarrolló el telar automático. Jackard tuvo la idea de usar tarjetas perforadas para manejar agujas de tejer, en telares mecánicos. Un conjunto de tarjetas constituían un programa, el cual creaba diseños textiles. Aunque su propósito no era realizar cálculos, contribuyó grandemente al desarrollo de las computadoras. Por primera vez se controla una máquina con instrucciones codificadas, en tarjetas perforadas, que era fácil de usar y requería poca intervención humana; y por primera vez se utiliza un sistema de tarjetas perforadas para crear el diseño deseado en la tela mientras esta se iba tejiendo. El telar de Jackard opera de la manera siguiente: las tarjetas se perforan estratégicamente y se acomodan en cierta secuencia para indicar un diseño de tejido en particular. Esta máquina fue considerada el primer paso significativo para la automatización binaria.
Charles Babbage (1793-1871). Profesor de matemáticas de la Universidad de Cambridge, Inglaterra, desarrolla en 1823 el concepto de un artefacto, que él denomina "máquina diferencial". La máquina estaba concebida para realizar cálculos, almacenar y seleccionar información, resolver problemas y entregar resultados impresos. Babbage imaginó su máquina compuesta de varias otras, todas trabajando armónicamente en conjunto: los receptores recogiendo información; un equipo transfiriéndola; un elemento almacenador de datos y operaciones; y finalmente una impresora entregando resultados. Pese a su increíble concepción, la máquina de Babbage, que se parecía mucho a una computadora, no llegó jamás a construirse. Los planes de Babbage fueron demasiado ambiciosos para su época. Este avanzado concepto, con respecto a la simple calculadora, le valió a Babbage ser considerado como el precursor de la computadora.
La novia de Babbage, Ada Augusta Byron, luego Condesa de Lovelace, hija del poeta inglés Lord Byron, que le ayuda en el desarrollo del concepto de la Máquina Diferencial, creando programas para la máquina analítica, es reconocida y respetada, como el primer programador de computadoras. La máquina tendría dos secciones fundamentales: una parte donde se realizarían todas las operaciones y otra donde se almacenaría toda la información necesaria para realizar los cálculos, así como los resultados parciales y finales. El almacén de datos consistiría de mil registradoras con un número de 50 dígitos cada una; estos números podrían utilizarse en los cálculos, los resultados se podrían guardar en el almacén y los números utilizados podrían transferirse a otras ubicaciones.
La máquina controlaría todo el proceso mediante la utilización de tarjetas perforadas similares a las inventadas por Jackard para la creación de diseños de sus telares, y que hasta hace muy poco se utilizaban regularmente. Babbage no pudo lograr su sueño de ver construida la máquina, que había tomado 15 años de su vida entre los dos modelos, pero vio un equipo similar desarrollado por un impresor sueco llamado George Scheutz,
basado en su máquina diferencial.
Babbage colaboró con Scheutz en la fabricación de su máquina e inclusive influyó todo lo que pudo, para que esta ganara la Medalla de Oro Francesa en 1855.
George Boole Trabajo sobre las bases sentadas por Leibnitz, quien preconizó que todas las verdades de la razón se conducían a un tipo de cálculo, para desarrollar en 1854, a la edad de 39 años, su teoría que redujo la lógica a un tipo de álgebra extremadamente simple. Esta teoría de la lógica construyó la base del desarrollo de los circuitos de conmutación tan importantes en telefonía y en el diseño de las computadoras electrónicas.
En su carrera como matemático, Boole tiene a su crédito también haber descubierto algo que se considera que fue indispensable para el desarrollo de la teoría de la relatividad de Einstein: las magnitudes constantes. Los descubrimientos matemáticos de George Boole, que llevaron al desarrollo del sistema numérico binario (0 y 1) constituyeron un hito incuestionable a lo largo del camino hacia las modernas computadoras electrónicas. Pero además de la lógica, el álgebra de Boole tiene otras aplicaciones igualmente importantes, entre ellas la de ser el álgebra adecuada para trabajar con la teoría combinatoria de la operación de unión e intersección. También, siempre en este campo, al considerar la idea del número de elementos de un conjunto, el álgebra de Boole constituye la base de la Teoría de las Probabilidades.
Claude Elwood Shanon A él se debe el haber podido aplicar a la electrónica – y por extensión a las computadoras – los conceptos de la teoría de Boole. Shanon hizo sus planteamientos en 1937 en su tesis de grado para la Maestría en Ingeniería Eléctrica en el MIT, uno de los planteles de enseñanza científica y tecnológica más prestigiosos del mundo.
En su tesis, Shanon sostenía que los valores de verdadero y falso planteados en el álgebra lógica de Boole, se correspondían con los estados 'abierto' y 'cerrado' de los circuitos eléctricos. Además, Shanon definió la unidad de información, et bit, lo que consecuentemente constituyó la base para la utilización del sistema binario de las computadoras en lugar del sistema decimal.
William Burroughs Nació el 28 de enero de 1857. La monotonía del trabajo y la gran precisión que se necesitaba en los resultados de los cálculos fue lo que decidió a William Burroughs a intentar construir una máquina calculadora precisa y rápida. Sus primeros pasos en este sentido los dio en 1882, pero no fue hasta casi veinte años después que su esfuerzo se vio coronado por el éxito.
Las primeras máquinas compradas por los comerciantes tuvieron que recogerse rápidamente, puesto que todas, presentaban defectos en el funcionamiento. Este nuevo fracaso fue el paso final antes de perfeccionar
definitivamente su modelo al cual llamó Maquina de sumar y hacer listas.
A pesar de otro sin número de dificultades en promoción y mercado de su nueva máquina, poco a poco este modelo se fue imponiendo, de modo que luego de dos años ya se vendían a razón de unas 700 unidades por año. William Burroughs, fue el primer genio norteamericano que contribuyó grandemente al desarrollo de la computadora
Herman Hollerith Las tarjetas perforadas. Uno de los hitos más importantes en el proceso paulatino del desarrollo de una máquina que pudiera realizar complejos cálculos en forma rápida, que luego llevaría a lo que es hoy la moderna computadora, lo constituyó la introducción de tarjetas perforadas como elemento de tabulación. Este histórico avance se debe a la inventiva de un ingeniero norteamericano de ascendencia alemán: Herman Hollerith. La idea de utilizar tarjetas perforadas realmente no fue de Hollerith, sino de John Shaw Billings, su superior en el Buró del Censo, pero fue Hollerith quien logró poner en práctica la idea que revolucionaría para siempre el cálculo mecanizado. El diseñó un sistema mediante el cual las tarjetas eran perforadas para representar la información del censo. Las tarjetas eran insertadas en la máquina tabuladora y ésta calculaba la información recibida. Hollerith no tomó la idea de las tarjetas perforadas del invento de Jackard, sino de la "fotografía de perforación" Algunas líneas ferroviarias de la época expedían boletos con descripciones físicas del pasajero; los conductores hacían orificios en los boletos que describían el color de cabello, de ojos y la forma de nariz del pasajero. Eso le dio a Hollerith la idea para hacer la fotografía perforada de cada persona que se iba a tabular. Hollertih fundó la Tabulating Machine Company y vendió sus productos en todo el mundo. La demanda de sus máquinas se extendió incluso hasta Rusia. El primer censo llevado a cabo en Rusia en 1897, se registró con el Tabulador de Hollerith. En 1911, la Tabulating Machine Company, al unirse con otras Compañías, formó la Computing-Tabulating-Recording-Company.
Konrad Zuse Nació en Berlín, Alemania, en 1910. EN 1938, Zuse ya había desarrollado una notación binaria que aplicó a los circuitos de rieles electromagnéticos que utilizaría más tarde en su serie de computadoras. El primer modelo construido por Konrad Zuse en 1939, fabricado por completo en la sala de su casa sin ayuda por parte de ninguna agencia gubernamental o privada, era un equipo completamente mecánico. Este modelo fue bautizado con el nombre de V-1 (V por Versuchmodel o Modelo Experimental). La intención principal de Zuse al tratar de desarrollar estos equipos era proporcionar una herramienta a los científicos y técnicos para resolver la gran cantidad de problemas matemáticos involucrados en todas las ramas científicas y técnicas.
En 1939 Konrad Zuse fue reclutado por el ejército alemán, pero pronto fue licenciado (al igual que la mayoría de los ingenieros en aquella época) y asignado a trabajar en el cuerpo de ingeniería que desarrollaba los proyectos del ejército, en el Instituto Alemán de Investigación Aérea.
Al mismo tiempo que prestaba sus servicios en el citado instituto, Zuse continúo sus trabajos en la sala de su casa y desarrolló una versión más avanzada de su V-1 a la cual denominó V-2. Este modelo lo construyó Zuse con la ayuda de un amigo y estudiante del mismo Instituto Técnico donde Zuse había estudiado, Helmut Schreyer había hecho su carrera en la rama de las telecomunicaciones y fue él quién consiguió los rieles electromagnéticos con que funcionaba este nuevo modelo, y quien sugirió a Zuse su utilización.
Alfred Teichmann, uno de los principales científicos que prestaba servicios en el Instituto Alemán de Investigaciones Aéreas, tuvo conocimiento de los trabajos de Zuse con respecto a las computadoras en una visita que hizo a la casa de éste. Allí vio por primera vez el modelo V-2 y quedó inmediatamente convencido de que máquinas como esa eran las que se necesitaban para resolver algunos de los problemas más graves que se estaban presentado en el diseño de los aviones.
Con la ayuda de Teichmann, Zuse logró conseguir fondos que le permitieron continuar con sus investigaciones un poco más holgadamente, aunque siempre en la sala de su casa, y así surgió, con la colaboración activa de Schreyer, la V-3, la primera computadora digital controlada por programas y completamente operacional. Este modelo constaba con 1.400 rieles electromagnéticos en la memoria, 600 para el control de las operaciones aritméticas y 600 para otros propósitos.
Durante la Segunda Guerra Mundial Wernher von Braun, eminente científico alemán, desarrolló un tipo de bombas cohete denominadas V-1 y V-2, muy celebres sobre todo por el papel que jugaron en los ataques alemanes contra el puerto de Amberes (Bélgica) y Londres (Inglaterra). Para evitar confusión con estas bombas, Zuse determinó cambiar la denominación de sus computadoras que, en adelante, pasaron a conocerse como Z-1, Z-2, Z-3, etc.
El modelo Z-3 desarrollado a finales de 1941 como una computadora de propósito general, fue parcialmente modificada por Zuse con el objetivo de apoyar el esfuerzo bélico alemán. La nueva versión se denominó Z-4 y se utilizó como elemento de teledirección de una bomba volante desarrollada por la compañía Henschel Aircraft Co., para la Luftwaffe. (Zuse niega que la Z-4 haya sido diseñada para este propósito).
La bomba volante alemana era una especie de avión no tripulado que era transportado por un bombardero. Cuando el piloto del bombardero determinaba el blanco, lanzaba la bomba que era dirigida mediante la Z-4 por la tripulación del bombardero. En sus aplicaciones de diseño, la Z-4 estaba destinada a medir las inexactitudes en las dimensiones de las piezas de los aviones y a calcular la desviación que éstas ocasionarían en la trayectoria de los aviones que se construyeran con ellas.
En 1944, mientras Zuse trabajaba en la terminación de la Z-4, se enteró de la presentación en Estados Unidos de la Mark I de Aiken, la primera computadora digital programable norteamericana.
Al finalizar la guerra, con la caída del régimen nazi, Zuse abandono Berlín llevando consigo todos los elementos de su computadora Z-4 (todos los modelos previos fueron destruidos en los bombardeos a Berlín). Ayudado por un amigo de Wernher von Braun, a quien había conocido en su huida de Berlín, Walter Robert Dornberger, Zuse y von Braun abandonaron Alemania, y Zuse se radicó en la pequeña población Alpina de Suiza, Hinterstein. Allí continúo trabajando en su proyecto, desarrollado su computadora.
En 1947, la Z-4 tenía una capacidad de 16 palabras en la memoria, en 1949 la capacidad había aumentado hasta 64 palabras y en la década de los 50, la memoria de la Z-4 podía contener 1024 palabras de 32 bits. Además podía multiplicar en un segundo y extraer raiz cuadrada en 5 segundos.
Además de sus trabajos en la computadora, Konrad Zuse desarrolló un idioma prototipo al cual llamó Plankalkul, en el cual anticipó y resolvió varios de los problemas que se abarcan hoy en el contexto de la teoría de los algoritmos, programación estructurada y estructura de la programación de idiomas para computadoras. Poco después de terminada la guerra, ya establecido en suelo suizo, Konrad Zuse estableció su propia compañía a la que denomino Zuse KG. Después de varios años construyendo su serie Z y de no haber logrado interesar lo suficiente a IBM para respaldar su producción, Remington Rand decidió ayudar a comercializar en Suiza algunos de los modelos fabricados por Zuse. Finalmente, la firma Siemens AG adquirió los derechos sobre la compañía de Zuse y éste quedó como consultor semi-retirado de la misma. Hoy se reconoce a Konrad Zuse como el creador de la primera computadora digital programable completamente operacional.
Atanasoff Y Berry Una antigua patente de un dispositivo que mucha gente creyó que era la primera computadora digital electrónica, se invalidó en 1973 por orden de un tribunal federal, y oficialmente se le dio el crédito a John V. Atanasoff como el inventor de la computadora digital electrónica. El Dr. Atanasoff, catedrático de la Universidad Estatal de Iowa, desarrolló la primera computadora digital electrónica entre los años de 1937 a 1942. Llamó a su invento la computadora Atanasoff-Berry, ó solo ABC (Atanasoff Berry Computer). Un estudiante graduado, Clifford Berry, fue una útil ayuda en la construcción de la computadora ABC.
En el edificio de Física de la Universidad de Iowa aparece una placa con la siguiente leyenda: "La primera computadora digital electrónica de operación automática del mundo, fue construida en este edificio en 1939 por John Vincent Atanasoff, matemático y físico de la Facultad de la Universidad, quien concibió la idea, y por Clifford Edward Berry, estudiante graduado de física."
MARK I (1944) Marca la fecha del la primera computadora, que se pone en funcionamiento. Es el Dr. Howard Aiken en la Universidad de Harvard, Estados Unidos, quien la presenta con el nombre de Mark I. Es esta la primera máquina procesadora de información. La Mark I funcionaba eléctricamente, las instrucciones e información se introducen en ella por medio de tarjetas perforadas. Los componentes trabajan basados en principios electromecánicos. Este impresionante equipo medía 16 mts. de largo y 2,5 mts. de alto, contenía un aproximado de 800.000 piezas y más de 800 Km. de cablerío eléctrico, pero los resultados obtenidos eran igualmente impresionantes para la época. Mark I tenía la capacidad de manejar números de hasta 23 dígitos, realizando sumas en menos de medio segundo, multiplicaciones en tres segundos y operaciones logarítmicas en poco más de un minuto. Ahora sí se había hecho por fin realidad el sueño de Pascal, Leibnitz, Babbage, Hollerith y muchos otros: la computadora era una realidad.
A pesar de su peso superior a 5 toneladas y su lentitud comparada con los equipos actuales, fue la primera máquina en poseer todas las características de una verdadera computadora.
ENIAC (1946) La primera computadora electrónica fue terminada de construir en 1946, por J.P.Eckert y J.W.Mauchly en la Universidad de Pensilvania, U.S.A. y se le llamó ENIAC (Electronic Numerical Integrator And Computer), ó Integrador numérico y calculador electrónico. La ENIAC construida para aplicaciones de la Segunda Guerra mundial, se terminó en 30 meses por un equipo de científicos que trabajaban bajo reloj. La ENIAC, mil veces más veloz que sus predecesoras electromecánicas, irrumpió como un importante descubrimiento en la tecnología de la computación. Pesaba 30 toneladas y ocupaba un espacio de 450 mts cuadrados, llenaba un cuarto de 6 mts x 12 mts y contenía 18.000 bulbos, tenía que programarse manualmente conectándola a 3 tableros que contenían más de 6000 interruptores. Ingresar un nuevo programa era un proceso muy tedioso que requería días o incluso semanas. A diferencia de las computadoras actuales que operan con un sistema binario (0,1) la ENIAC operaba con uno decimal (0, 1,2…9) La ENIAC requería una gran cantidad de electricidad. La ENIAC poseía una capacidad, rapidez y flexibilidad muy superiores a la Mark I. Comenzaba entonces la tenaz competencia en la naciente industria, IBM desarrolló en 1948 su computadora SSEC (Calculadora Electrónica de Secuencia Selectiva) superior a la ENIAC.
Para 1951, la compañía Remington Rand, otra de las líderes en este campo, presento al mercado su modelo denominado Univac, que ganó el contrato para el censo de 1951 por su gran capacidad, netamente superior a todas las demás desarrolladas hasta el momento.
Pero para la recia personalidad de Thomas J. Watson, se le hacia difícil aceptar que su compañía no fuera la principal en este campo, así que en respuesta al desarrollo de la Univac, hizo que IBM construyera su modelo 701, una computadora científica con una capacidad superior 25 veces a la SSEC y muy superior también a la Univac.
A la 701 siguieron otros modelos cada vez más perfeccionados en cuanto a rapidez, precisión y capacidad, los cuales colocaron a IBM como el líder indiscutible de la naciente industria de las computadoras. Aunque en la actualidad es difícil mencionar a una firma determinada como la primera en este campo, es un hecho irrefutable que IBM continua siendo una de las principales compañías en cuanto a desarrollo de computadoras se refiere.
- Con ella se inicia una nueva era, en la cual la computadora pasa a ser el centro del desarrollo tecnológico, y de una profunda modificación en el comportamiento de las sociedades.
EDVAC (1947) (Eletronic Discrete-Variable Automatic Computer, es decir computadora automática electrónica de variable discreta) Desarrollada por Dr. John W. Mauchly, John Presper Eckert Jr. y John Von Neumann. Primera computadora en utilizar el concepto de almacenar información. Podía almacenar datos e instrucciones usando un código especial llamado notación binaria. Los programas almacenados dieron a las computadoras una flexibilidad y confiabilidad tremendas, haciéndolas más rápidas y menos sujetas a errores que los programas mecánicos. Una computadora con capacidad de programa almacenado podría ser utilizada para varias aplicaciones cargando y ejecutando el programa apropiado. Hasta este punto, los programas y datos podían ser ingresados en la computadora sólo con la notación binaria, que es el único código que las computadoras "entienden". El siguiente desarrollo importante en el diseño de las computadoras fueron los programas intérpretes, que permitían a las personas comunicarse con las computadoras utilizando medios distintos a los números binarios. En 1952 Grace Murray Hoper una oficial de la Marina de EE.UU., desarrolló el primer compilador, un programa que puede traducir enunciados parecidos al inglés en un código binario comprensible para la maquina llamado COBOL (COmmon Business-Oriented Languaje).
EDSAC (1949) Desarrollada por Maurice Wilkes. Primera computadora capaz de almacenar programas electrónicamente.
LA ACE PILOT (1950) Turing tuvo listos en 1946 todos los planos de lo que posteriormente seria conocido como ACE Pilot (Automatic Calculating Engine) que fue presentado públicamente en 1950. La ACE Pilot estuvo considerada por mucho tiempo como la computadora más avanzada del mundo, pudiendo realizar
operaciones tales como suma y multiplicación en cuestión de microsegundos.
UNIVAC I (1951) Desarrollada por Mauchly y Eckert para la Remington-Rand Corporation. Primera computadora comercial utilizada en las oficinas del censo de los Estados Unidos. Esta máquina se encuentra actualmente en el "Smithsonian Institute". En 1952 fue utilizada para predecir la victoria de Dwight D. Eisenhower en las elecciones presidenciales de los Estados Unidos.
Durante las tres primeras décadas de la Informática, el principal desafío era el desarrollo del hardware de las computadoras, de forma que se redujera el costo de procesamiento y almacenamiento de datos.
La necesidad de enfoques sistemáticos para el desarrollo y mantenimiento de productos de software se patentó en la década de 1960. En ésta década aparecieron las computadoras de la tercera generación y se desarrollaron técnicas de programación como la multiprogramación y de tiempo compartido. Y mientras las computadoras estaban haciéndose más complejas, resultó obvio que la demanda por los productos de software creció en mayor cantidad que la capacidad de producir y mantener dicho software. Estas nuevas capacidades aportaron la tecnología necesaria para el establecimiento de sistemas computacionales interactivos, de multiusuario, en línea y en tiempo real; surgiendo nuevas aplicaciones para la computación, como las reservaciones aéreas, bancos de información médica, etc.
Fue hasta el año 1968 que se convocó una reunión en Garmisch, Alemania Oriental estimulándose el interés hacia los aspectos técnicos y administrativos utilizados en el desarrollo y mantenimiento del software, y fue entonces donde se utilizó el término "Ingeniería del Software".
A lo largo de la década de los ochenta, los avances en microelectrónica han dado como resultado una mayor potencia de cálculo a la vez que una reducción de costo. Hoy el problema es diferente. El principal desafío es mejorar la calidad y reducir el costo.
Las personas encargadas de la elaboración del software se han enfrentado a problemas muy comunes: unos debido a la exigencia cada vez mayor en la capacidad de resultados del software, debido al permanente cambio de condiciones lo que aumenta su complejidad y obsolescencia; y otros, debido a la carencia de herramientas adecuadas y estándares de tipo organizacional encaminados al mejoramiento de los procesos en el desarrollo del software.
Una necesidad sentida en nuestro medio es el hecho de que los productos de software deben ser desarrollados con base en la implementación de estándares mundiales, modelos , sistemas métricos, capacitación del recurso humano y otros principios y técnicas de la ingeniería de software que garanticen la producción de software de calidad y competitividad a nivel local e internacional.
Con el acelerado avance tecnológico de la información, la cantidad y la complejidad de los productos de software se están incrementando considerablemente, así como también la exigencia en su funcionalidad y confiabilidad; es por esto que la calidad y la productividad se están constituyendo en las grandes preocupaciones tanto de gestores como para desarrolladores de software.
En los primeros años del software, las actividades de elaboración de programas eran realizadas por una sola persona utilizando lenguajes de bajo nivel y ajustándose a un computador en especial, que generaban programas difíciles de entender, aun hasta para su creador, después de algún tiempo de haberlo producido. Esto implicaba tener que repetir el mismo proceso para desarrollar el mismo programa para otras máquinas. Por consiguiente, la confiabilidad, facilidad de mantenimiento y cumplimiento no se garantizaban y la productividad era muy baja.
Posteriormente, con la aparición de técnicas estructuradas y con base en las experiencias de los programadores se mejoró la productividad del software. Sin embargo, este software seguía teniendo fallas, como por ejemplo: documentación inadecuada, dificultad para su correcto funcionamiento, y por su puesto, insatisfacción del cliente.
Conforme se incrementaba la tecnología de los computadores, también crecía la demanda de los productos de software, pero mucho más lentamente, tanto que hacia 1990 se decía que las posibilidades del software estaban retrasadas respecto a las del hardware en un mínimo de dos generaciones de procesadores y que la distancia continuaba aumentando.
En la actualidad muchos de estos problemas subsisten en el desarrollo de software, con una dificultad adicional relacionada con la incapacidad para satisfacer totalmente la gran demanda y exigencias por parte de los clientes.
El elemento básico del software es el programa. Un programa es un grupo de instrucciones destinadas a cumplir una tarea en particular. Un programa puede estar conformado por varios programas más sencillos.
El software se puede clasificar en tres grupos: sistemas operativos, lenguajes de programación y aplicaciones.
Sistema Operativo
El sistema operativo es un conjunto de programas que coordinan el equipo físico de la computadora y supervisan la entrada, la salida, el almacenamiento y las funciones de procesamiento. Incluye comandos internos y externos. Los comandos internos se encuentran en la memoria de la computadora y los comandos externos, generalmente, están en la unidad de disco. Para usar los comandos externos, se necesitan sus archivos.
El sistema operativo es una colección de programas diseñados para facilitarle al usuario la creación y manipulación de archivos, la ejecución de programas y la operación de otros periféricos conectados a la computadora. Ejemplo de algunos comandos son: abrir un archivo, hacer una copia impresa de lo que hay en la pantalla y copiar un archivo de un disco a otro.
En las décadas de los 70 y 80 la mayor parte de las computadoras utilizaban su propio sistema operativo, o sea, que aquellas aplicaciones creadas para un sistema operativo no se podían usar en otro. Debido a este problema, los vendedores de sistemas operativos decidieron concentrarse en aquellos sistemas más utilizados. Ellos visualizaron que las dos compañías más grandes de microcomputadoras se unirían para crear mayor compatibilidad y esto es un hecho.
Toda computadora tiene algún tipo de sistema operativo, el cual debe ser activado cuando la computadora se enciende. Si el sistema operativo está grabado en la ROM o presente en el disco duro de la computadora, el sistema operativo, generalmente, se activa automáticamente cuando la computadora se enciende. Si no, se inserta un disco que contenga el sistema operativo para activarlo.
Un sistema operativo provee un programa o rutina para preparar los discos ("formatting a disk"), copiar archivos o presentar un listado del directorio del disco.
El sistema operativo del disco de una computadora personal de IBM (IBM-PC) es una colección de programas diseñados para crear y manejar archivos, correr programas y utilizar los dispositivos unidos al sistema de la computadora. Microsoft (compañía de programas) desarrolló PC-DOS para IBM y MS-DOS para IBM compatibles. Los dos sistemas operativos son idénticos. DOS dicta cómo los programas son ejecutados en IBM y compatibles.
El DOS ("Disk Operating System") es el sistema operativo del disco. Es el conjunto de instrucciones del programa que mantiene un registro de las tareas requeridas para la operación de la computadora, o sea, es una colección de programas diseñados para crear y manejar archivos, correr programas y utilizar los dispositivos unidos al sistema de la computadora.
Entre las tareas que realiza un SO tenemos:
- Si es un sistema multitarea: asignar y controlar los recursos del sistema, definir qué aplicación y en qué orden deben ser ejecutadas.
- Manejar la memoria del sistema que comparten las múltiples aplicaciones.
- Manejar los sistemas de entrada y salida, incluidos discos duros, impresoras y todo tipo de puertos.
- Envío de mensajes de estado a las aplicaciones, al administrador de sistema o al propio usuario, sobre cualquier error o información necesaria para el trabajo estable y uniforme del sistema.
- Asume tareas delegadas de las propias aplicaciones, como impresión en background y procesamiento por lotes, con el fin de que éstas ganen en eficiencia y tiempo.
- Administra, de existir, el procesamiento en paralelo.<>
Tipos de sistemas operativos
- El "Character based": DOS dice si está listo para recibir un comando presentando un símbolo ("prompt") en la pantalla: C:>. El usuario responde escribiendo una instrucción para ser ejecutada, caracter por caracter mediante el uso del teclado.
- El "Graphic User Interface": Hace uso de un "mouse" como un dispositivo de puntero y permite que se apunte a iconos (pequeños símbolos o figuras que representan alguna tarea a realizarse) y oprimir el botón del "mouse" para ejecutar la operación o tarea seleccionada. El usuario puede controlar el sistema operativo seleccionando o manipulando iconos en el monitor.
Ejemplos de sistemas operativos
PC-DOS (Personal Computer DOS) MS-DOS (Microsoft DOS) OS/2 (IBM Operating System 2) DR DOS 5.0 (Digital Research DOS) UNIX
Linux Windows para sistemas operativos DOS Windows NT
GENERACIONES DE SISTEMAS OPERATIVOS
Los sistemas operativos, al igual que el hardware de las computadoras, han sufrido una serie de cambios revolucionarios llamados generaciones. En el caso del hardware, las generaciones han sido enmarcadas por grandes avances en los componentes utilizados, pasando de válvulas (primera generación), a transistores (segunda generación), a circuitos integrados (tercera generación), a circuitos integrados de gran y muy gran escala (cuarta generación). Cada generación sucesiva de hardware ha sido acompañada de reducciones substanciales en los costos, tamaño, emisión de calor y consumo de energía, y por incrementos notables en velocidad y capacidad.
Generación Cero (Década de 1940)
Los sistemas operativos han ido evolucionando durante los últimos 40 años a través de un número de distintas fases o generaciones que corresponden a décadas. En 1940, las computadoras electrónicas digitales más nuevas no tenían sistema operativo. Las Máquinas de ese tiempo eran tan primitivas que los programas por lo regular manejaban un bit a la vez en columnas de switch's mecánicos. Eventualmente los programas de lenguaje de máquina manejaban tarjetas perforadas, y lenguajes ensamblador fueron desarrollados para agilizar el proceso de programación. Los usuarios tenían completo acceso al lenguaje de la maquina.
Todas las instrucciones eran codificadas a mano.
Primera Generación (Década de 1950)
Los sistemas operativos de los años cincuenta fueron diseñados para hacer más fluída la transmisión entre trabajos. Antes de que los sistemas fueran diseñados, se perdía un tiempo considerable entre la terminación de un trabajo y el inicio del siguiente. Este fue el comienzo de los sistemas de procesamiento por lotes, donde los trabajos se reunían por grupo o lotes. Cuando el trabajo estaba en ejecución, este tenía control total de la máquina. Al terminar cada trabajo, el control era devuelto al sistema operativo, el cual "limpiaba" y leía e inicia el trabajo siguiente.
Al inicio de los años 50 esto había mejorado un poco con la introducción de tarjetas perforadas (las cuales servían para introducir los programas de lenguajes de máquina), puesto que ya no había necesidad de utilizar los tableros enchufables. Esto se conoce como sistemas de procesamiento por lotes de un sólo flujo, ya que los programas y los datos eran sometidos en grupos o lotes. El laboratorio de investigación General Motors implementó el primer sistema operativo para la IBM 701.
La introducción del transistor a mediados de los años 50 cambió la imagen radicalmente. Se crearon máquinas suficientemente confiables las cuales se instalaban en lugares especialmente acondicionados, aunque sólo las grandes universidades y las grandes corporaciones o bien las oficinas del gobierno se podían dar el lujo de tenerlas.
Para poder correr un trabajo (programa), tenían que escribirlo en papel (en Fortran o en lenguaje ensamblador) y después se perforaría en tarjetas. Enseguida se llevaría la pila de tarjetas al cuarto de introducción al sistema y la entregaría a uno de los operadores. Cuando la computadora terminaba el trabajo, un operador se dirigiría a la impresora y desprendía la salida y la llevaba al cuarto de salida, para que la recogiera el programador.
Segunda Generación (A mitad de la década de 1960)
La característica de la segunda generación de los sistemas operativos fue el desarrollo de los sistemas compartidos con multiprogramación, y los principios del multiprocesamiento. En los sistemas de multiprogramación, varios programas de usuarios se encuentran al mismo tiempo en el almacenamiento principal, y el procesador se cambia rápidamente de un trabajo a otro. En los sistemas de multiprocesamiento se utilizan varios procesadores en un solo sistema computacional, con la finalidad de incrementar el poder de procesamiento de la máquina. La independencia de dispositivos aparece después. Un usuario que deseara escribir datos en una cinta en sistemas de la primera generación tenia que hacer referencia específica a una unidad en particular. En los sistemas de la segunda generación, el programa del usuario especificaba tan solo que un archivo iba a ser escrito en una unidad de cinta con cierto número de pistas y cierta densidad. El sistema operativo localizaba, entonces, una unidad de cinta disponible con las características deseadas, y le indicaba al operador que montara la cinta en esa unidad.
El surgimiento de un nuevo campo: LA INGENIERÍA DEL SOFTWARE.
Los sistemas operativos desarrollados durante los años 60 tuvieron una enorme conglomeración de software escrito por gente que no entendía el software, también como el hardware, tenía que ser ingeniero para ser digno de confianza, entendible y mantenible.
Se desarrollaron sistemas compartidos, en la que los usuarios podían acoplarse directamente con el computador a través de terminales. Surgieron sistemas de tiempo real, en que los computadores fueron utilizados en el control de procesos industriales. Los sistemas de tiempo real se caracterizan por proveer una respuesta inmediata.
Multiprogramación
- Sistemas multiprogramados : varios trabajos 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 trabajos.
- Administración del CPU: el sistema debe elegir entre varios trabajos listos para ejecución.
- Administración de dispositivos.
Tercera Generación (Mitad de la década de 1960 a mitad de la década de 1970)
Se inicia en 1964, con la introducción de la familia de computadores Sistema/360 de IBM. Los computadores de esta generación fueron diseñados como sistemas para usos generales. Casi siempre eran sistemas grandes, voluminosos. Eran sistemas de modos múltiples, algunos de ellos soportaban simultáneamente procesos por lotes, tiempo compartido, procesamiento de tiempo real y multiprocesamiento. Eran grandes y costosos, nunca antes se había construido algo similar, y muchos de los esfuerzos de desarrollo terminaron muy por arriba del presupuesto y mucho después de lo que el planificador marcaba como fecha de terminación.
Estos sistemas introdujeron mayor complejidad a los ambientes computacionales; una complejidad a la cual, en un principio, no estaban acostumbrados los usuarios.
Sistemas de Tiempo Compartido
- El CPU se comparte entre varios trabajos que se encuentran residentes en memoria y en el disco (el CPU se asigna a un trabajo solo si éste esta en memoria).
- Un trabajo 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 está disponible para los datos y código de los usuarios
Cuarta Generación (Mitad de la década de 1970 a nuestros días)
Los sistemas de la cuarta generación constituyen el estado actual de la tecnología. Muchos diseñadores y usuarios se sienten aun incómodos, después de sus experiencias con los sistemas operativos de la tercera generación, y se muestran cautelosos antes de comprometerse con sistemas operativos complejos. Con la ampliación del uso de redes de computadores y del procesamiento en línea los usuarios obtienen acceso a computadores alejados geográficamente a través de varios tipos de terminales. El microprocesador ha hecho posible la aparición de la computadora personal, uno de los desarrollos de notables consecuencias sociales más importantes de las últimas décadas. Ahora muchos usuarios han desarrollado sistemas de computación que son accesibles para su uso personal en cualquier momento del día o de la noche. La potencia del computador, que costaba varios cientos de miles de dólares al principio de la década de 1960, hoy es mucho más accesible. El porcentaje de la población que tiene acceso a un computador en el Siglo XXI es mucho mayor. El usuario puede tener su propia computadora para realizar parte de su trabajo, y utilizar facilidades de comunicación para transmitir datos entre sistemas. La aplicación de paquetes de software tales como procesadores de palabras, paquetes de bases de datos y paquetes de gráficos ayudaron a la evolución de la computadora personal. La llave era transferir información entre computadoras en redes de trabajo. El correo electrónico, transferencia de archivos, y aplicaciones de acceso a bases de datos proliferaron. El modelo cliente-servidor fue esparcido. El campo de ingeniería del software continuó evolucionando con una mayor confianza proveniente de los EE.UU. Los ambientes del usuario, altamente simbólicos, y orientados hacia las siglas de las décadas de los sesenta y setenta, fueron reemplazados, en la década de los ochenta, por los sistemas controlados por menú, los cuales guían al usuario a lo largo de varias opciones expresadas en un lenguaje sencillo.
Mini-computadoras y Microprocesadores
- 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.
Sistemas de cómputo personales
- 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.
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
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
Sistemas Paralelos
- Sistemas Paralelos: Sistemas de múltiples procesadores con mas de un 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
1990 – 2000
- Cómputo 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: Cómputo Móvil.
- Cómputo Embebido y Robótica.
Sistemas de Tiempo Real
- A menudo son utilizados como dispositivos 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 cumplimiento 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 mas rápido posible a eventos, en promedio.
Los orígenes del sistema UNIX se remontan al desarrollo de un proyecto iniciado en 1968. Este proyecto fue realizado por General Electric, AT&T, Bell y el MIT; llevaron a cabo el desarrollo de un sistema operativo con nuevos conceptos como la multitarea, la gestión de archivos o la interacción con el usuario. El resultado de estas investigaciones se bautizó como MULTICS. El proyecto resultó ser demasiado ambicioso, por lo que no llegó a buen fin y terminó abandonándose.
Posteriormente la idea de este proyecto se vuelve a retomar y conduce al gran desarrollo en 1969 del sistema operativo UNIX. Entre los investigadores destacaban Ken Thompson y Dennis Ritchie. En principio, este sistema operativo recibió el nombre de UNICS, aunque un año después pasa a llamarse UNIX, como se conoce hoy en día.
El código de UNIX estaba inicialmente escrito en lenguaje ensamblador, pero en 1973, Dennis Ritchie llevó a cabo un proyecto para reescribir el código de UNIX en lenguaje C. UNIX se convirtió así en el primer sistema operativo escrito en lenguaje de alto nivel. Con este nuevo enfoque fue posible trasladar el sistema operativo a otras máquinas sin muchos cambios, solamente efectuando una nueva compilación en la máquina de destino. Gracias a esto la popularidad de UNIX creció y permitió asentar la "filosofía UNIX".
Inicialmente UNIX fue considerado como un proyecto de investigación, hasta el punto de distribuirse de forma gratuita en algunas universidades, pero después la demanda del producto hizo que los laboratorios Bell iniciaran su distribución oficial.
Después de tres décadas de haber escapado de los laboratorios Bell, el UNIX sigue siendo uno de los SO más potentes, versátiles y flexibles en el mundo de la computación. Su popularidad se debe a muchos factores incluidas su portabilidad y habilidad de correr eficientemente en una inmensa variedad de computadoras. Descrito frecuentemente como un sistema "simple, potente y elegante" el UNIX es hoy el corazón que late en el seno de millones de aplicaciones de telefonía fija y móvil, de millones de servidores en universidades, centros académicos, grandes, medianas y pequeñas empresas, el SO cuyo desarrollo viene de la mano del de Internet y que alberga a millones de servidores y aplicaciones de la red de redes. Sin UNIX, no cabe duda, el mundo de la informática hubiera sido otro.
En octubre de 1991 un estudiante graduado de Ciencias de la Computación en la Universidad de Helsinki, llamado Linus Torvalds, anuncia en Internet que había escrito una versión libre de un sistema MINIX (una variante de UNÍX) para una computadora con procesador Intel 386 y lo dejaba disponible para todo aquel que estuviera interesado. En los subsiguientes 30 meses se desarrollarían hasta 90 versiones del nuevo SO, finalizando en 1994 con la definitiva, llamándola Linux versión 1.0.
La fascinación de los medios por Linux viene dada, entre otras cosas, por ser un proyecto de ingeniería de software distribuido a escala global, esfuerzo mancomunado de más de 3 000 desarrolladores y un sinnúmero de colaboradores distribuidos en más de 90 países. El rango de participantes en la programación del Linux se ha estimado desde unos cuantos cientos hasta más de 40.000, ya sea ofreciendo código, sugiriendo mejoras, facilitando comentarios o describiendo y enriqueciendo manuales. De hecho, se cuenta que el mayor soporte técnico jamás diseñado de manera espontánea y gratuita pertenece a este SO. Hoy Linux es una alternativa para muchos o un indispensable para otros. Su importancia no puede ser relegada: los RED HAT, los SUSE, los Mandrake pueblan miles de servidores por todo el planeta
Las Distribuciones de Linux son:
- Caldera: El énfasis de esta distribución es la facilidad de uso e instalación para los usuarios. Se orienta más hacia el desktop a pesar que, como cualquier otra distribución de Linux, puede ser usada para servidores.
- Corel: Es una distribución basada en Debian, pero extensivamente modificada para hacerla tan fácil de usar como el sistema operativo de Microsoft. Es quizá la distribución más fácil de utilizar para alguien que no esté familiarizado con Unix.
- Debian: Es una distribución orientada más a desarrolladores y programadores. El énfasis de esta distribución es incluir en su sistema solamente software libre según la definición de la Fundación del Software Libre (FSF).
- Mandrake: Es una distribución originalmente basada en RedHat que se enfoca principalmente hacia la facilidad de uso. Al igual que Corel, es recomendada para quienes no tengan mucha experiencia con sistemas Unix.
- RedHat: Es la distribución más popular de Linux y para la que hay más paquetes comerciales de software. Está orientada tanto al desktop como a servidores. La mayoría de servidores de web que utilizan Linux como sistema operativo usan esta distribución.
- S.U.S.E.: Es la distribución más popular en Europa y probablemente la segunda más popular del mundo. Al igual que RedHat, está orientada tanto a desktops como a servidores.
- Slackware: Es una distribución de Linux que pretende parecerse a BSD desde el punto de vista del administrador de sistemas. No es una distribución muy popular a pesar que cuando comenzó era la más popular.
- Stampede: Es una distribución enfocada al rendimiento y velocidad del sistema. No es muy fácil de usar para quién no está acostumbrado a la administración de sistemas Unix.
OS/2 son las siglas de "Sistema operativo de segunda generación". La idea de OS/2 surgió entre IBM y Microsoft a mediados de los 80, en un intento de hacer un sucesor de MS-DOS, el cual ya empezaba a acusar el paso del tiempo y resultaba claramente desaprovechador de los recursos de las máquinas de la época (basadas en el Intel 286).
OS/2 1.0
OS/2 1.0 salió en abril de 1987 y era un sistema operativo de 16 bits, pues estaba pensado para trabajar sobre el microprocesador 286. Sin embargo, aprovechaba plenamente el modo protegido de este ordenador, haciendo uso de sus capacidades para protección de memoria, gestión de multitarea, etc. El resultado fue un S.O. estable, rápido y muy potente.
OS/2 ya tenía incorporada desde esa primera versión la multitarea real. Se podían ejecutar varias sesiones simultáneamente, en cada una de ellas se podían tener múltiples programas, y cada uno de ellos podía tener múltiples threads en ejecución. Se trataba de una multitarea jerárquica, con cuatro niveles de prioridad: Crítico (útil para programas que requieran atención casi constante por parte del CPU, como un módem), Primer plano (correspondiente al programa que tiene acceso a la pantalla, teclado y ratón), Medio (programas lanzados por el usuario que se ejecutan en BackGround) y Desocupado (tareas de poca importancia o lentas, como el Spooler de impresión). Dentro de cada nivel (a excepción del de Primer plano), existen 32 niveles de prioridad, los cuales son asignados dinámicamente a cada programa por el S.O. en función del porcentaje de uso del CPU, de los puertos de E/S, etc.
OS/2, además, permitía memoria virtual, con lo que se podían ejecutar programas más largos que lo que la memoria física instalada permitiría en principio (los requerimientos de aquella versión eran un 286 con 2 megas de memoria). Por otro lado, incluía la característica de compartición de código: al cargar dos veces un mismo programa, el código de este no se duplicaba en memoria, sino que el mismo código era ejecutado por dos Threads diferentes. Esto permitía ahorrar mucha memoria.
Esta versión de OS/2 era íntegramente en modo texto. Si bien el Sistema Operativo daba la posibilidad de usar los modos gráficos de la tarjeta del ordenador, no incluía ningún API que ayudase en ello, recayendo todo el trabajo de diseño de rutinas de puntos, líneas, etc, en el programador de la aplicación. Esto no era realmente tan problemático, pues era lo que se hacía en el mundo del MS-DOS. Sin embargo, se añoraba un entorno gráfico como Windows.
OS/2 1.1
En la versión 1.1, aparecida en octubre de 1988, llegó por fin el Presentation Manager, un gestor de modo gráfico, junto con la primera versión de Work Place Shell. Ambos formaban un entorno gráfico muy parecido al aún no comercializado Windows 3.0. También hizo su aparición el formato de ficheros HPFS (High Performance File System). Este sistema de ficheros complementaba al clásico FAT, que era el usado por MS-DOS y por OS/2 1.0; sin embargo, ofrecía una gran cantidad de ventajas, tales como:
- Menor fragmentación de ficheros: HPFS busca primero una zona en donde el archivo entre completo, con lo que la fragmentación de ficheros es prácticamente inexistente. De hecho, IBM recomienda desfragmentar los discos duros una vez al año, y solo a los paranoicos.
- Mayor capacidad: HPFS admite discos duros de más capacidad, manteniendo el tamaño del cluster (unidad mínima de información almacenable) en 512 bytes o un sector. En FAT, el tamaño mínimo de cluster para un disco duro es 2048 bytes, y para discos mayores aumenta (un disco duro de 1 giga tiene un tamaño de cluster de 32K).
- Soporte para nombres largos: Permite nombres de hasta 256 caracteres.
- Mayor seguridad: Si al grabar en un sector se detecta un error, se marca automáticamente como defectuoso y se graba en otra parte.
- Mayor velocidad en el acceso: Gracias a la estructura jerárquica de directorios, que optimiza el acceso a disco.
El gran problema de OS/2 es que seguía siendo un S.O. de 16 bits, con lo que no aprovechaba plenamente las capacidades de los 386 de la época, que empezaron a extenderse con más velocidad de la esperada. Según una revista del sector, Microsoft sugirió hacer una versión de 32 bits (que obligaría a ejecutarla en ordenadores 386 o superiores), pero IBM insistió en perfeccionar la de 16 bits. Sobre quien dijo cada cosa realmente solo se puede especular. Lo único que se sabe a ciencia cierta es que la versión de OS/2 de 32 bits presentada por Microsoft en 1990 era casi igual que la versión 1.3, con la única diferencia de que el kernel era de 32 bits. IBM, por su parte, quería un escritorio orientado a objetos, y no el clásico shell de OS/2 1.x (el cual Microsoft copiaría para su Windows 3.0). Puestas así las cosas, finalmente se rompió el acuerdo entre ambos.
OS/2 2.0
Fué la primera versión de OS/2 de 32 bits, iba a salir inicialmente a finales de 1990; pero al no contar con la ayuda de Microsoft, IBM no fue capaz de sacarlo hasta 1992, dándole a Windows 3.0 el tiempo suficiente para asentarse en el mercado.
OS/2 2.0 tenía todas las ventajas de los anteriores OS/2, unido al nuevo núcleo de 32 bits. No se trataba, por tanto, de un retoque de la versión de 16 bits, sino un sistema operativo prácticamente nuevo que aprovechaba al máximo las capacidades del modo protegido del microprocesador 386. Sin embargo, iba más allá que Windows, pues al contrario que éste, ofrecía compatibilidad garantizada con todas las aplicaciones de 16 bits anteriores, gracias a la inclusión del API original de 16 bits junto con el nuevo de 32, y además sin perdida de prestaciones. Así mismo, ofrecía también compatibilidad con Windows 2.x y 3.0, junto con una compatibilidad con MS-DOS muy mejorada, gracias al modo V86 que incorporan los micros 386 y del que carecía el 286: en OS/2 1.x la compatibilidad DOS era muy limitada, quedando reducida a una sola tarea y realizando un cambio entre modo real y modo protegido del microprocesador, además de consumir de manera permanente 640 K de memoria. Aparte, la emulación no era todo lo buena que cabía esperar. Todos estos problemas desaparecieron en la versión 2.0, pudiendo tener varias sesiones DOS totalmente independientes entre sí, con una compatibilidad cercana al 100% y beneficiándose de las capacidades de Crash Protection del OS/2, que impiden que un programa pueda colapsar el sistema entero.
Por otro lado, el Work Place Shell (el shell de trabajo gráfico, de ahora en adelante WPS) fue muy mejorado, resultando un shell totalmente orientado a objetos, con acceso directo a los ficheros, carpetas dentro de carpetas, ficheros sombra (conocidos como alias en los sistemas UNIX) y un escritorio de verdad.
IBM consiguió vender OS/2 2.0 en grandes cantidades; sin embargo, no consiguió su autentico despegue, en parte por culpa de la falta de apoyo por parte de las empresas del software. El API del Presentation Manager, aunque similar al de Windows, tenía muchas diferencias, con lo que las empresas tuvieron que elegir entre uno u otro, ante la imposibilidad de muchas de ellas de dividir su talento entre ambos sistemas.
OS/2 3.0 (Warp)
A principios de 1994 aparece el OS/2 Warp, nombre comercial de la versión 3.0 de OS/2. En ella surgen nuevos elementos: un kit completo de multimedia (mejor del que traía la versión 2.1) y el Bonus Pak, un kit de aplicaciones que permite ponerse a trabajar con el ordenador nada más instalar el Sistema Operativo, pues contiene elementos como un Kit de conexión a Internet completo, el paquete integrado IBM Works (formado por un procesador de textos, hoja de cálculo, base de datos y gráficos de empresa, junto con el PIM, que añade más funcionalidades aprovechando las capacidades drag&drop del WPShell), soft de terminal, soft de captura y tratamiento de video, etc. Así mismo, la cantidad de hardware soportado fue ampliada de manera considerable, soportando casi cualquier dispositivo existente en el mercado: CD-Roms, impresoras, tarjetas de sonido, soporte PCMCIA, tarjetas de video, tarjetas de captura de video, tarjetas SCSI, etc. Los requisitos mínimos de esta versión seguían siendo un 386SX a 16MHz con 4 megas de RAM, los mismos que para Windows 3.11, y podía ejecutar programas DOS, OS/2 16bits, OS/2 32 bits, Windows 2.x y Windows 3.x (incluía además el API Win32, con lo que se podían ejecutar incluso programas Windows de 32bits).
IBM se metió en una campaña publicitaria a nivel mundial para promocionar esta nueva versión, la cual, sin embargo, no dio los resultados esperados. A pesar de eso, OS/2 es ampliamente utilizado en múltiples empresas, bancos sobre todo, en donde su estabilidad es la mayor garantía.
Poco después sale al mercado una revisión de Warp, denominada Warp Connect, la cual añade un kit completo de conexión a redes, soportando prácticamente cualquier estándar de red, incluyendo Novell Netware, TCP/IP, etc. junto con soporte para SLIP y PPP.
OS/2 4.0 (Merlín)
En Noviembre de 1996 se hizo la presentación de Merlín, nombre clave de OS/2 4.0, y que, en contra de lo que mucha gente piensa, no tiene nada que ver con el mítico mago de la corte del rey Arturo, sino con un pájaro parecido a un águila (siguiendo la nueva filosofía de IBM de nombrar sus creaciones con nombres de aves). Merlín trae todo lo que ofrecía OS/2 3.0, pero lo amplía con un conjunto extra de características, como son:
- Un soporte todavía mayor de hardware.
- Mayor simplicidad de instalación.
- Librerías OpenDoc (compatibles con OLE 2.0, pero más potentes).
- Librerías OpenGL, que permiten aprovechar las capacidades 3D de las tarjetas que soporten este estándar.
- API de desarrollo Open32, que permiten recompilar con suma facilidad las aplicaciones escritas para Windows95 y WindowsNT, de forma que aprovechen al máximo los recursos de OS/2.
- Un Bonus Pack ampliado, incluyendo una nueva versión del IBMWorks basada en OpenDoc, y las utilidades LotusNotes.
- Un Kernel aún más optimizado.
- Escritorio mejorado, ofreciendo una orientación a objeto aún mayor.
- Un extenso soporte de conectividad, superior a la versión Connect de Warp 3.0, lo que lo convierte en el cliente de red universal, pudiendo conectarse a casi cualquier servidor (no solo Warp Server, sino Windows NT Server, Novell, etc).
- HPFS mejorado: mayor capacidad por disco y seguridad.
- Sesiones DOS reales (el micro se conmuta a modo real, y todo el contenido de la RAM se guarda en disco, quedando el Sistema Operativo y el resto de las utilidades congelados, pudiendo rearrancar en cualquier momento. Es útil para juegos o programas de DOS muy exigentes, que se niegan a funcionar en una sesión DOS virtual).
- La Característica Estrella de cara al Márketing: El VoiceType. Se trata de un software reconocedor de voz, capaz de funcionar con cualquier tarjeta de sonido, y que permite al usuario trabajar exclusivamente mediante el dictado de comandos. Este sistema, al contrario que otros disponibles hasta el momento, realmente reconoce el habla de forma continua, de modo que no sólo se puede usar para navegar por el escritorio y controlar programas, sino que sirve perfectamente para dictar cualquier tipo de texto, como artículos, cartas, etc., sin tocar una sola tecla. Se trata, por tanto, de un avance de los que serán, sin duda, los sistemas operativos del futuro.
De los tantos sistemas operativos que se han hecho famosos a lo largo del desarrollo de la informática en el ocaso del siglo pasado, sin duda, ningún otro posee la peculiaridad del Windows de Microsoft. Rodeado por todo tipo de mitos acerca de su emprendedor y ambicioso creador, solidificado sobre la base de un sistema DOS, cuya irrupción en la primera PC tenía más de suerte que de propósito, amparado por disfrutar de un férreo y despiadado control de mercado es hoy por hoy, odiado o amado, el sistema operativo más extendido del planeta.
MS-DOS
Cuando IBM fabricó la PC hizo que el usuario antes de cargar algún SO, realizara lo que se llamó el POST (Power On Self Test), que determinaba los dispositivos disponibles (teclado, vídeo, discos, etc.) y luego buscaba un disco de arranque. Estas funciones eran realizadas por un conjunto de instrucciones incorporad.as en la máquina mediante una ROM Luego quedó escrito que siempre hubiera algún tipo de software en el sistema aún sin ser cargado el SO. Entre las rutinas del POST tenemos las de revisión del sistema, inicialización y prueba de teclado, habilitación de vídeo, chequeo de la memoria y la rutina de inicialización que preparaba a la máquina para ejecutar el DOS. Después que las pruebas de arranque han sido ejecutadas y el sistema está cargado, la ROM aún sigue siendo importante debido a que contiene el soporte básico de entrada y salida (BIOS). La BIOS provee un conjunto de rutinas que el SO o los programas de aplicación pueden llamar para manipular el monitor, teclado, discos duros, discos flexibles, puertos COM o impresoras.
El trato de IBM con Microsoft tenía entre otras condiciones una particularidad interesante: la administración directa de las tarjetas adaptadoras podría ser manejada sólo por programas que IBM proveía con la ROM del computador. El DOS sería escrito para utilizar estos servicios. De esta manera, si IBM decidía cambiar el hardware, éste podía embarcar nuevos modelos de chips con cambios en la BIOS y no requería que Microsoft cambiara el SO. Ello posibilitó, junto con la clonación de la arquitectura de IBM incluido la BIOS, que el DOS se extendiera por el universo, aun cuando el Gigante Azul rompiera su alianza con Microsoft, en 1991, para producir su propio SO. Microsoft había hecho un trabajo estratégico brillante e IBM había perdido la supremacía de las computadoras para siempre.
Realmente el núcleo del DOS estaba contenido en un par de archivos ocultos llamados IO.SYS y MSDOS.SYS en las versiones de DOS realizadas por Microsoft, e IBMBIO.SYS, para las versiones de DOS hechas por IBM bajo licencia Microsoft. Los servicios del DOS eran solicitados cuando una aplicación llamaba a la interrupción 21 (INT 21) reservada para estos fines. Esta buscaba un punto de entrada del administrador de servicios del DOS en una tabla y saltaba a la rutina en el módulo MSDOS.SYS. En otros SO, la aplicación debía realizar una llamada al sistema (system call) para requerir servicios, como, por ejemplo, en UNIX.
Otro rasgo distintivo del MS-DOS fue la forma en el manejo de la estructura de ficheros: la FAT (File Allocation Table) o Tabla de Asignación de Archivos, que dividía al disco en subdirectorios y archivos. Criticados por muchos como un sistema poco seguro y no eficiente, la herencia sobrevivió por mucho tiempo y no fue hasta época reciente que Microsoft decidió reemplazarlo por un sistema más robusto, el NTFS que destinó a la gama alta de sus SO: el Windows NT, 2000 y XP.
Windows 1.0
Microsoft hizo su primera incursión en lo que luego se llamaría Microsoft Windows en el año 1981 con el llamado Interface Manager, en tiempos en que las interfaces gráficas de usuario, GUI, eran una quimera de lujo para muchos, en tanto la computación estaba suscripta al área geográfica de los centros académicos, grandes instituciones y empresas. Más que un SO, se trataba en realidad de una interfaz montada sobre su estrenado DOS. Aunque los primeros prototipos usaban una interfaz similar a una de las aplicaciones estrellas de la Compañía en aquel entonces, el Multiplan, luego ésta fue cambiada por menús pulldown y cuadros de diálogo, similares a las usadas en el programa Xerox Star del mencionado fabricante. Al sentir la presión de programas similares en aquel entonces, Microsoft anuncia oficialmente Windows a finales del año 1983. En ese momento, muchas compañías trabajan la línea de las interfaces gráficas, entre ellas Apple, reconocida casi por todos como la primera, DESQ de Quraterdeck, Amiga Workbech, NEXTstep, etc. Windows prometía una interfaz GUI de fácil uso, soporte multitarea y gráfico. Siguiendo el rito de los anuncio-aplazamientos de Microsoft, Windows 1.0 no llegó a los estantes de los negocios hasta noviembre de 1985, disponiendo de un soporte de aplicaciones pobres y un nivel de ventas pírrico. El paquete inicial de Windows 1.0 incluía: MS-DOS Ejecutivo, Calendario, Tarjetero, el Notepad, Terminal, Calculadora, Reloj, Panel de Control, el editor PIF (Program Information File), un Spooler de impresión, el Clipboard, así como el Windows Write y Windows Paint.
Windows 2.0
Windows/286 y Windows/386, renombrados como Windows 2.0 terminan la saga en el otoño de 1987, al ofrecer algunas mejoras de uso, adicionar íconos y permitir la superposición de ventanas, lo que propició un marco mucho más apropiado para la co-ubicación de aplicaciones de mayor nivel como el Excel, Word, Corel Draw, Ami y PageMakers, etc. Una notoriedad del Windows/386 lo constituyó el hecho de poder correr aplicaciones en modo extendido y múltiples programas DOS de manera simultánea.
Windows 3.0
El Windows 3.0, que aparece en mayo de 1990, constituyó un cambio radical del ambiente Windows hasta entonces. Su habilidad de direccionar espacios de memorias por encima de los 640 k y una interfaz de usuario mucho más potente propiciaron que los productores se estimularan con la producción de aplicaciones para el nuevo programa. Ello, unido a la fortaleza dominante del MS-DOS como SO llevado de la mano de la gula insaciable del gigante corporativo, hizo que el Windows 3.0 se vislumbrara como el primer SO gráfico (siempre con el MS-DOS bajo su estructura) marcado para dominar el mercado de las PCs en el futuro inmediato. Windows 3.0 fue un buen producto, desde el punto de vista de las ventas: diez millones de copias.
Windows 3.1 y 3.11
En 1992 llegaría la saga del Windows 3.1 y 3.11, así como su variante para trabajo en grupo. Con éste se hizo patente el traslado de la mayoría de los usuarios del ambiente de texto que ofrecía el MS-DOS hacia el ambiente gráfico de la nueva propuesta, olvidándonos todos paulatinamente del Copy A: *.* para sustituirlo por el COPIAR Y PEGAR. Las primeras aplicaciones "adquiridas y/o desplazadas" por Microsoft ofrecidas como un todo único, el ambiente de RED peer to peer, los sistemas de upgrade de una versión a otra y el tratamiento diferenciado para los revendedores y los fabricantes OEM, caracterizaron los movimientos de Microsoft para afianzar el mercado de su SO insignia. En el caso de la versión para trabajo en grupo, Microsoft integró por primera vez su SO con un paquete de tratamiento para redes, lo que permitió, sobre un protocolo propio, el compartir ficheros entre PCs (incluso corriendo DOS), compartir impresoras, sistema de correo electrónico y un planificador para trabajo en grupo. Sin embargo, lo realmente llamativo consistió en su plena integración con el ambiente Windows y con ello garantizar, independiente de la calidad del producto final, un seguro predominio.
Windows 95
El año 1995 significó un nuevo vuelco en la línea de los SO de Microsoft. En agosto sale al mercado el controvertido Windows 95, un entorno multitarea con interfaz simplificada y con otras funciones mejoradas.
Parte del código de Windows 95 está implementado en 16 bits y parte en 32 bits. Uno de los motivos por los cuales se ha hecho así, ha sido para conservar su compatibilidad. Con Windows 95 podemos ejecutar aplicaciones de Windows 3.1 ó 3.11, MS-DOS y obviamente las nuevas aplicaciones diseñadas específicamente para este sistema operativo. Entre las novedades que ofrece Windows 95 cabe destacar el sistema de ficheros de 32 bits, gracias al cual podemos emplear nombres de ficheros de hasta 256 caracteres (VFAT y CDFS), debido a que se trata de un sistema operativo de modo protegido, desaparece la barrera de los 640K, hemos de tener presente que aunque la mayor parte de Windows 3.1 es un sistema de modo protegido, este se está ejecutando sobre un sistema operativo que trabaja en modo real.
La interfaz de Windows 95 también ha sido mejorada. El primer gran cambio que veremos al empezar a trabajar será la desaparición del Administrador de Programas. Ahora tenemos un escritorio al estilo del Sistema 7 de los Macintosh o NeXTStep.
Viene a sustituir al sistema operativo DOS y a su predecesor Windows 3.1. Frente al DOS tiene tres ventajas importantes:
- En primer lugar toda la información presentada al usuario es gráfica, mientras que el DOS trabaja con comandos en modo texto formados por órdenes difíciles de recordar.
- En segundo lugar, Windows 95 define una forma homogénea de utilizar los recursos de la computadora, lo cual permite compartir datos entre las distintas aplicaciones, así como utilizar con facilidad los elementos de hardware ya instalados.
- En tercer lugar Windows 95 es un sistema operativo que permite ejecutar varias aplicaciones a la vez (multitarea), mientras que en DOS sólo se puede ejecutar un programa en cada momento.
A sólo siete semanas de su lanzamiento ya se habían vendido siete millones de copias. Es la época del despegue de Internet y el WWW, y su visualizador dominante: el Navigator de Netscape. Microsoft, en un error poco común de su timonel no se había dado cuenta que el futuro de las computadoras estaba precisamente en la red y que Internet significaría toda una revolución en la rama.
Además de "empotrar" su navegador y obligar a los fabricantes de PCs a tenerlo en cuenta, ese mismo año se crea The Microsoft Network y mediante su incursión acelerada en los medios masivos de comunicación, surge MSNBC, un año después.
Windows NT
La misión del equipo de desarrolladores que trabajó el NT estaba bien definida: construir un SO que supliera las necesidades de este tipo de programa para cualquier plataforma presente o futura. Con esa idea, el equipo encabezado por un antiguo programador de SO para máquinas grandes, se trazó los siguientes objetivos: portabilidad en otras arquitecturas de 32 bits, escalabilidad y multiprocesamiento, procesamiento distribuido, soporte API y disponer de mecanismos de seguridad clase 2 (C2), según parámetros definidos por el Gobierno estadounidense. La robustez del sistema, fue un requisito a toda costa: el NT debía protegerse a sí mismo de cualquier mal funcionamiento interno o daño externo, accidental o deliberado, respondiendo de manera activa a los errores de hardware o software. Debía ser desarrollado orientado al futuro, prever las necesidades de desarrollo de los fabricantes de equipos de cómputo, su adaptación tecnológica no sólo al hardware, sino al propio software. Todo ello sin sacrificar el desempeño y eficiencia del sistema. En cuanto al certificado de seguridad, C2 debiera cumplir con los estándares establecidos por éste como la auditoría, la detección de acceso, protección de recursos, etc. Así nació el Windows NT 3.5, devenido 3.51 en el año 1994 y se introdujo poco a poco en un mercado hasta ese momento desterrado para Microsoft.
El NT 4.0 de nombre código Cairo, sale a luz en 1996. Por ahí leíamos que el nuevo sistema operativo cumplía una fórmula muy sencilla: tomar un NT 3.51, sumarle los service packs 1, 2 y 3 y mezclarlo con una interfaz a lo Windows 95 (incluido su papelera de reciclaje, algo realmente útil para un sistema montado sobre NTFS). Un paso más en la integración del SO con Internet lo dio el NT 4.0 al incluir Internet Information Server, servidor de Microsoft para soporte WEB, FTP, etc., como un utilitario más dentro del paquete y que como la lógica indicaba engranaba con éste a las mil maravillas al desplazar en eficiencia y velocidad cualquier producto externo. La cara "Windows 95" se sobrepuso a un inicio incierto, ya que tuvo que vencer la desconfianza que pudo haber generado. Téngase en cuenta, que la familia NT estaba orientada a un cliente en el que la estabilidad y seguridad del sistema eran el requisito número uno y ello contrastaba con la experiencia que había tenido el 95. Sin embargo, el golpe fue genial. Por primera vez, Microsoft mezcló la solidez con el fácil uso y desterró para siempre el concepto impuesto hasta entonces de que para las grandes compañías y las grandes empresas los servidores debían ser cosa de científicos de bata blanca. El crecimiento de los usuarios NT se multiplicó desde ese momento. EL 4.0 se comercializaba en tres versiones: Workstation, Server y Advanced Server para tres variantes de clientes tipo, el profesional de las ingenierías, incluido la informática, la pequeña y mediana empresas y la gran empresa.
Windows 98
La llegada de Windows 98 no marcó mucha diferencia visual de su predecesor. Sin embargo, en el fondo fue todo un mensaje de lo que Microsoft haría para penetrar en el mercado de Internet y barrer con los que habían dominado en este tema hasta entonces. La indisoluble integración del WEB con el escritorio, el llamado active desktop, la interfaz "HTML", los canales y la persistente presencia del Explorer 4.0, para situarse por vez primera a la cabeza de los visualizadores de Internet, fueron rasgos distintivos de esta versión. El 98 incluyó utilidades para el tratamiento de FAT16 y su conversión a FAT32, mejor manejo de los discos duros, manipulación múltiple de varios monitores, una lista extendida de soporte plug and play, soporte DVD, AGP, etc. A su vez la promesa de una mejora sustancial en el tratamiento de los drivers de dispositivos y en la disminución de los pantallazos azules, que realmente cumplió y mejoró con la versión SR1 (service release 1), tiempo después.
Las nuevas características de Windows 98 ofrecen sacar mucho más partido del PC. Los programas se ejecutan más rápido, pudiendo ganar una promedio de un 25% o más de espacio en el disco, Internet pasa a ser una parte muy importante en el ordenador, dando un paso gigante en la entrega de contenido multimedia de alta calidad.
El Windows 98 se ha mantenido hasta nuestros días y debe ser la última versión del SO que quede vinculada a lo que fue la línea MS-DOS-Windows (salvando la variante Millenium o Windows Me que no ha convencido a nadie) hasta su total sustitución por Windows 2000 y el XP, en una serie de zigzagueantes cambios que deja a todos adivinando si debe cambiar o no para la próxima versión. Pero tras este errático rumbo, Microsoft persigue sólo una cosa: conservar la supremacía de los SO de por vida.
Windows Millenium
El 14 de septiembre sale el Windows Millenium, no como un sucesor del 98, sino como un producto orientado al usuario doméstico (interfaz de colores, mucha música y vídeo, soporte para redes LAN inalámbricas, cortafuegos personales), nada del otro mundo, con poca perspectiva de supervivencia.
Windows 2000
Se ofrece en 4 clasificaciones: Windows 2000 Professional, Windows 2000 Server (anteriormente NT Server), Windows 2000 Advanced Server (anteriormente NT Advanced Server) y Windows 2000 Datacenter Server, un producto nuevo, poderoso y muy específico con posibilidad de manejo de hasta 16 procesadores simétricos y 64 Gb de memoria física.
Lo destacable de este paso estriba en haber llevado la robustez, la seguridad y la portabilidad que daba el NT al mercado masivo de las PCs. Este ofrece una plataforma impresionante para el trabajo en Internet, Intranet, manejo de aplicaciones, todo muy bien integrado. La posibilidad de soporte completo de redes, incluido redes privadas virtuales, encriptación a nivel de disco o de red y riguroso control de acceso son otras de sus bondades.
Windows XP ( Experience)
Desde que apareció Windows95 las sucesivas versiones han sido una evolución de la original, sin embargo en esta ocasión se ha producido un cambio de mayor envergadura ya que se ha cambiado el núcleo o Kernel del sistema operativo.
Aunque de cara al usuario no se noten cambios radicales, se puede decir que Windows XP no es solo una versión más de Windows sino que supone prácticamente un nuevo sistema.
Hasta ahora Microsoft disponía de dos sistemas operativos diferentes, para el entorno personal o doméstico tenía Windows98 y para el entorno profesional (o de negocios) el Windows NT/2000.
Con Windows XP se produce una convergencia entre ambas versiones ya que se ha partido del núcleo del sistema de Windows 2000 para crear Windows XP y a partir de ahí se han realizado algunos retoques para diferenciar dos versiones de Windows XP, una para el ámbito personal llamada Windows XP Home Edition, y otra para el ámbito profesional denominada Windows XP Professional.
El principal beneficio de esta estrategia para los usuarios domésticos va a ser que Windows XP ha adquirido la robustez y estabilidad de Windows NT/2000, esto debe suponer que Windows XP se quedará menos veces bloqueado, habrá menos ocasiones en la que tengamos que reiniciar el sistema como consecuencia de un error. La mejora para los usuarios profesionales se debe a que Windows XP tiene mayor compatibilidad con el hardware de la que gozaba Windows NT/2000.
Windows XP dispone de un nuevo sistema de usuarios completamente diferente respecto a Windows98. Este nuevo sistema ha sido heredado de Windows NT/2000.
Ahora se pueden definir varios usuarios con perfiles independientes. Esto quiere decir que cada usuario puede tener permisos diferentes que le permitirán realizar unas determinadas tareas. Cada usuario tendrá una carpeta Mis documentos propia que podrá estar protegida por contraseña, un menú de inicio diferente. También se dispone de una carpeta a la que tienen acceso todos los usuarios y donde se pueden colocar los documentos que se quieren compartir con los demás usuarios.
Para pasar de un usuario a otro no es necesario apagar el ordenador, ni siquiera que un usuario cierre lo que estaba haciendo, simplemente hay que iniciar una nueva sesión con otro usuario, más tarde podremos volver a la sesión del primer usuario que permanecerá en el mismo estado que la dejó. El sistema se encarga de manejar a los distintos usuarios activos y sin interferencias.
El Desarrollo de los Lenguajes y Técnicas de Programación
Paralelo al desarrollo de la ciencia de la computación y de las máquinas correspondientes fue tomando auge la técnica relativa a los métodos de suministrar las instrucciones a las máquinas con vistas a realizar un determinado trabajo de cálculo. Fueron dos mujeres las grandes pioneras de las técnicas e idiomas de programación, independientemente del aporte que los hombres también brindaron.
Se reconoce generalmente como la primera gran pionera en este campo a Lady Ada Augusta Lovelace, única hija legitima del poeta ingles Lord Byron, nacida en 1815.
Entre los muchos aportes que hizo a la ciencia de la computación Lady Lovelace, mientras estudiaba la máquina de Babbage, el más sobresaliente probablemente fue el que estaba relacionado con el concepto de lo que hoy llamamos 'lazos' o 'subrutinas'
Lady Lovelace planteó que en una larga serie de instrucciones debía haber necesariamente varias repeticiones de una misma secuencia. Y que consecuentemente debía ser posible establecer un solo grupo de tarjetas perforadas para este grupo de instrucciones recurrentes. Sobre este mismo principio trabajaron posteriormente los conocidos matemáticos ingleses Alan Turing y John Von Neumann.
En 1989 el único lenguaje aceptado por el Departamento de Defensa Norteamericano es el llamado ADA, este en honor de la Condesa ADA Lovelace. ADA surgió por la necesidad de unificar los más de 400 lenguajes y dialectos que dicho departamento utilizaba en sus proyectos, de forma que el tiempo y dinero invertidos en el desarrollo de software para uno de ellos fuera utilizable en otro de similares características.
Poco más de un siglo después de la muerte de Lady Lovelace, otra mujer, que con el paso del tiempo demostró ser eminente, estaba empeñada en la programación de la primera computadora digital, la Mark I.
Grace M. Hooper fue una de las pioneras en el campo de los idiomas de programación, especialmente en el desarrollo de Cobol (Common Business Oriented Languaje), un idioma concebido para su utilización con equipos de diferentes fabricantes y que expresa los problemas de manipulación y elaboración de datos en forma narrativa ordinaria en Ingles.
Su trabajo relacionado con la programación de Mark I y las subsiguientes generaciones Mark II y Mark III le valieron ganar un prestigioso premio otorgado por la Marina. Luego de tres años trabajando en el departamento de computación de la Marina, Grace Hooper se unió a la Eckert Mauchly Corp. como experta en matemáticas. En la fecha en que Hooper se unió a la compañía de Eckert Mauchly, éstos estaban empeñados en la construcción de Univac I, en la programación de la cual la Sra. Hooper tuvo gran participación.
En 1952 Grace Hooper publicó su primer ensayo sobre autoprogramadores (Compilers), que le valió ser nombraba directora e ingeniero de sistemas de la División Univac de la Sperry Rand Corp. Este documento de gran importancia técnica sería el primero de muchos otros (más de 50) publicados por ella relacionados con idiomas y otros elementos de programación.
Los trabajos de Grace Hooper en materia de programación llevaron al desarrollo de las subrutinas (subprograms) y por extensión a la creación de colecciones de las subrutinas, un procedimiento eficiente y económico de eliminar errores en la programación y de disminuir considerablemente el esfuerzo requerido para poder programar.
Los lenguajes de programación se dividen en:
Lenguaje de máquina: El lenguaje de máquina está orientado hacia la máquina. Este lenguaje es fácil de entender por la computadora, pero difícil para el usuario. Es el lenguaje original de la computadora el cual es generado por el "software", y no por el programador.
Bajo Nivel: Son dependientes de la máquina, están diseñados para ejecutarse en una determinada computadora. A esta categoría pertenecen las 2 primeras generaciones. Ejemplo: lenguaje ensamblador.
Alto Nivel: Son independientes de la máquina y se pueden utilizar en cualquier computadora. Pertenecen a esta categoría la tercera y la cuarta generación. Los lenguajes de más alto nivel no ofrecen necesariamente mayores capacidades de programación, pero si ofrecen una interacción programador/computadora más avanzada. Cuanto más alto es el nivel del lenguaje, más sencillo es comprenderlo y utilizarlo.
Cada generación de lenguajes es más fácil de usar y más parecida a un lenguaje natural que sus antecesores.
Los lenguajes posteriores a la cuarta generación se conocen como lenguajes de muy alto nivel. Son lenguajes de muy alto nivel los generadores de aplicaciones y los naturales.
En cada nuevo nivel se requieren menos instrucciones para indicar a la computadora que efectúe una tarea en particular. Pero los lenguajes de alto nivel son sólo una ayuda para el programador. Un mayor nivel significa que son necesarios menos comandos, debido a que cada comando o mandato de alto nivel reemplaza muchas instrucciones de nivel inferior.
Programas traductores Son los que traducen instrucciones de lenguajes de programación de alto nivel al código binario del lenguaje de la máquina.
- Código fuente ("source code") Es un conjunto de instrucciones del programa que están escritas en un lenguaje de programación.
- Código del objeto ("object code") Es un conjunto de instrucciones binarias traducidas y que la computadora puede ejecutar.
Ejemplos de programas traductores
<>Compilador<> Es un programa que traduce un lenguaje de alto nivel al lenguaje de máquina de una computadora. Según va ejecutando la traducción, coteja los errores hechos por el programador. Traduce un programa una sola vez, generalmente, y es cinco veces más rápido que los programas intérpretes. Ejemplos: ALGOL, BASIC, COBOL, FORTRAN, PASCAL y PL/1.
Intérprete Es un programa que traduce un lenguaje de alto nivel al lenguaje de máquina de una computadora. El programa siempre permanece en su forma original (programa fuente) y traduce cuando está en la fase de ejecución instrucción por instrucción. Ejemplo: BASIC
Ensamblador Es un programa de bajo nivel que traduce el lenguaje de ensamble a lenguaje de máquina. Utiliza letras del alfabeto para representar los diferentes arreglos del código binario de la máquina. Los programadores de ensamble deben conocer profundamente la arquitectura y el lenguaje de máquina de su computadora. El programa ensamblador traduce cada instrucción de ensamble escrita por el programador a la instrucción en lenguaje de máquina binario equivalente. En general, las instrucciones ("software") de un sistema se escriben en este lenguaje. Ejemplos: Sistema operativo y Sistemas de manejo de base de datos.
Lenguajes de alto nivel más comunes
BASIC (Beginners All-purpose Symbolic Instruction Code)
Fue el lenguaje de programación interactivo más popular en la década de los 70. Es un lenguaje de propósito general. Desarrollado por John Kemeny y Thomas Kurtz en "Dartmouth College" en 1963. Existen numerosas versiones, algunas son compiladores y otras son intérpretes.
COBOL (Common Business Oriented Language)
Es un lenguaje compilador diseñado para aplicaciones de negocios. Desarrollado en 1959 por el gobierno federal de los Estados Unidos y fabricantes de computadoras bajo el liderazgo de Grace Hopper. Es el más utilizado por los "mainframe". COBOL está estructurado en cuatro divisiones; a saber:
1) División de identificación – identifica el programa.
2) División ambiental – identifica a las computadoras fuente y objeto.
3) División de datos – identifica las memorias "buffer", constantes y áreas de trabajo.
4) División de procedimiento – describe el procesamiento (la lógica del programa).
PASCAL Este programa recibió su nombre en honor a Blas Pascal. Fue desarrollado por el científico suizo Niklaus Wirth en 1970 y diseñado para enseñar técnicas de programación estructurada. Es fácil de aprender y de usar y no utiliza línea sino ";" (semicolon). Existen versiones de compilador, como de intérprete. Estas varían según la versión.
FORTRAN (FORmula TRANslator)
Es uno de los primeros lenguajes de alto nivel desarrollado en 1954 por John Backus y un grupo de programadores de IBM. Es un lenguaje compilador que se diseñó para expresar con facilidad las fórmulas matemáticas, resolver problemas científicos y de ingeniería.
ADA Es un lenguaje desarrollado como una norma del Departamento de Defensa de los Estados Unidos.
Es un lenguaje basado en PASCAL, pero más amplio y específico. Fue diseñado tanto para aplicaciones comerciales como científicas. Es un lenguaje de multitareas que puede ser compilado por segmentos separados. Se llama ADA en honor de Augusta Ada Byron, condesa de Lovelace e hija del poeta inglés Lord Byron.
APL (A Programming Language)
Este programa fue desarrollado por Kenneth Inverson a mediados de la década de 1960 para resolver problemas matemáticos. Este lenguaje se caracteriza por su brevedad y por su capacidad de generación de matrices y se utiliza en el desarrollo de modelos matemáticos.
PL/1 (Programming Language 1)
Este programa fue desarrollado por IBM. Es un lenguaje de propósito general que incluye características de COBOL y de FORTRAN. Su principal utilidad es en los "mainframes".
RPG (Report Program Generator)
Fue desarrollado por IBM en 1964 y diseñado para generar informes comerciales o de negocios.
Lenguaje C
Fue desarrollado a principios de la década de los 70 en Bell Laboratories por Brian Kernigham y Dennis Ritchie. Ellos necesitaban desarrollar un lenguaje que se pudiera integrar con UNIX, permitiendo a los usuarios hacer modificaciones y mejorías fácilmente. Fue derivado de otro lenguaje llamado BCPL.
Lenguaje C++
Se pronuncia "ce plus plus". Fue desarrollado por Bjarne Stroustrup en los Bell Laboratories a principios de la década de los '80. C++ introduce la programación orientada al objeto en C. Es un lenguaje extremadamente poderoso y eficiente. C++ es un súper conjunto de C, para aprender C++ significa aprender todo acerca de C, luego aprender programación orientada al objeto y el uso de éstas con C++.
Visual BASIC
Este programa fue creado por Microsoft. Es un programa moderno que da apoyo a las características y métodos orientados a objetos.
Programación orientada al objeto
Las metas de la programación orientada al objeto es mejorar la productividad de los programadores haciendo más fácil de usar y extender los programas y manejar sus complejidades. De esta forma, se reduce el costo de desarrollo y mantenimiento de los programas. En los lenguajes orientados al objeto los datos son considerados como objetos que a su vez pertenecen a alguna clase. A las operaciones que se definen sobre los objetos son llamados métodos. Ejemplo de programas orientados al objeto: Visual BASIC y C++.
Generaciones de los Lenguajes de Programación
1. Primera Generación: Lenguaje de máquina. Empieza en los años 1940-1950. Consistía en sucesiones de dígitos binarios. Todas las instrucciones y mandatos se escribían valiéndose de cadenas de estos dígitos. Aún en la actualidad, es el único lenguaje interno que entiende la computadora; los programas se escriben en lenguajes de mayor nivel y se traducen a lenguaje de máquina.
2. Segunda Generación: Lenguajes ensambladores. Fines de los 50. Se diferencian de los lenguajes de máquina en que en lugar de usar códigos binarios, las instrucciones se representan con símbolos fáciles de reconocer, conocidos como mnemotécnicos. Aún se utilizan estos lenguajes cuando interesa un nivel máximo de eficiencia en la ejecución o cuando se requieren manipulaciones intrincadas. Al igual que los lenguajes de máquina, los lenguajes ensambladores son únicos para una computadora en particular. Esta dependencia de la computadora los hace ser lenguajes de bajo nivel.
3. Tercera Generación: Años ’60. Los lenguajes de esta generación se dividen en tres categorías, según se orienten a:
Procedimientos: Requieren que la codificación de las instrucciones se haga en la secuencia en que se deben ejecutar para solucionar el problema. A su vez se clasifican en científicos (ej.: FORTRAN), empresariales (ej.: COBOL), y de uso general o múltiple (ej.: BASIC). Todos estos lenguajes permiten señalar cómo se debe efectuar una tarea a un nivel mayor que en los lenguajes ensambladores. Hacen énfasis en los procedimientos o las matemáticas implícitas, es decir en lo que se hace (la acción).
Problemas: Están diseñados para resolver un conjunto particular de problemas y no requieren el detalle de la programación que los lenguajes orientados a procedimientos. Hacen hincapié en la entrada y la salida deseadas.
Objetos: El énfasis se hace en el objeto de la acción. Los beneficios que aportan estos lenguajes incluyen una mayor productividad del programador y claridad de la lógica, además de ofrecer la flexibilidad necesaria para manejar problemas abstractos de programación.
4. Cuarta Generación: Su característica distintiva es el énfasis en especificar qué es lo que se debe hacer, en vez de cómo ejecutar una tarea. Las especificaciones de los programas se desarrollan a un más alto nivel que en los lenguajes de la generación anterior. La característica distintiva es ajena a los procedimientos, el programador no tiene que especificar cada paso para terminar una tarea o procesamiento. Las características generales de los lenguajes de cuarta generación son:
- Uso de frases y oraciones parecidas al inglés para emitir instrucciones.
- No operan por procedimientos, por lo que permiten a los usuarios centrarse en lo que hay que hacer no en cómo hacerlo.
- Al hacerse cargo de muchos de los detalles de cómo hacer las cosas, incrementan la productividad.
Hay dos tipos de lenguajes de cuarta generación, según se orienten:
- A la producción: Diseñados sobre todo para profesionales en la computación.
- Al usuario: Diseñados sobre todo para los usuarios finales, que pueden escribir programas para hacer consultas en una base de datos y para crear sistemas de información. También se llama lenguaje de consultas (SQL, Structured Query Language: lenguaje estructurado para consultas).
Primera Generación (1951-1958)
Las computadoras de la primera Generación emplearon bulbos para procesar información. Los operadores ingresaban los datos y programas en código especial por medio de tarjetas perforadas. El almacenamiento interno se lograba con un tambor que giraba rápidamente, sobre el cual un dispositivo de lectura/escritura colocaba marcas magnéticas. Esas computadoras de bulbos eran mucho más grandes y generaban más calor que los modelos contemporáneos. El voltaje de los tubos era de 300v y la posibilidad de fundirse era grande. Eckert y Mauchly contribuyeron al desarrollo de computadoras de la 1era Generación formando una Cia. privada y construyendo UNIVAC I, que el Comité del censo utilizó para evaluar el de 1950. La programación en lenguaje máquina, consistía en largas cadenas de bits, de ceros y unos, por lo que la programación resultaba larga y compleja
- Usaban tubos al vacío para procesar información.
- Usaban tarjetas perforadas para entrar los datos y los programas.
- Usaban cilindros magnéticos para almacenar información e instrucciones internas
En 1953 se comenzó a construir computadoras electrónicas y su primera entrada fue con la IBM 701.
Después de un lento comienzo la IBM 701 se convirtió en un producto comercialmente viable. Sin embargo en 1954 fue introducido el modelo IBM 650, el cual es la razón por la que IBM disfruta hoy de una gran parte del mercado de las computadoras. Aunque caras y de uso limitado las computadoras fueron aceptadas rápidamente por las Compañías privadas y de Gobierno. A la mitad de los años 50 IBM y Remington Rand se consolidaban como líderes en la fabricación de computadoras.
Segunda Generación (1959-1964)
El invento del transistor hizo posible una nueva generación de computadora
s, más rápidas, más pequeñas y con menores necesidades de ventilación. Sin embargo el costo seguía siendo una porción significativa del presupuesto de una Compañía. Las computadoras de la segunda generación utilizaban redes de núcleos magnéticos en lugar de tambores giratorios para el almacenamiento primario. Estos núcleos contenían pequeños anillos de material magnético, enlazados entre sí, en los cuales podían almacenarse datos e instrucciones. Los programas de computadoras también mejoraron. El COBOL desarrollado durante la 1era generación estaba ya disponible comercialmente. Los programas escritos para una computadora podían transferirse a otra con un mínimo esfuerzo. El escribir un programa ya no requería entender plenamente el hardware de la computadora. Las computadoras de la 2da Generación eran substancialmente más pequeñas y rápidas que las de bulbos, y se usaban para nuevas aplicaciones, como en los sistemas para reservación en líneas aéreas, control de tráfico aéreo y simulaciones para uso general. Las empresas comenzaron a utilizar las computadoras en tareas de almacenamiento de registros, como manejo de inventarios, nómina y contabilidad, la velocidad de las operaciones ya no se mide en segundos sino en microsegundos (ms). Memoria interna de núcleos de ferrita.
- Instrumentos de almacenamiento: cintas y discos.
- Mejoran los dispositivos de entrada y salida, para la mejor lectura de tarjetas perforadas, se disponía de células fotoeléctricas.
- Introducción de elementos modulares.
La marina de EE.UU. utilizó las computadoras de la Segunda Generación para crear el primer simulador de vuelo (Whirlwind I). HoneyWell se colocó como el primer competidor durante la segunda generación de computadoras. Burroughs, Univac, NCR, CDC, HoneyWell, los más grandes competidores de IBM durante los años 60 se conocieron como el grupo BUNCH
Tercera Generación (1964-1971)
Circuitos integrados (chips)
Las computadoras de la tercera generación emergieron con el desarrollo de los circuitos integrados (pastillas de silicio) en las cuales se colocan miles de componentes electrónicos, en una integración en miniatura. Las computadoras nuevamente se hicieron más pequeñas, más rápidas, desprendían menos calor y eran energéticamente más eficientes.
Multiprogramación
Antes del advenimiento de los circuitos integrados, las computadoras estaban diseñadas para aplicaciones matemáticas o de negocios, pero no para las dos cosas. Los circuitos integrados permitieron a los fabricantes de computadoras incrementar la flexibilidad de los programas, y estandarizar sus modelos. La IBM 360 una de las primeras computadoras comerciales que usó circuitos integrados, podía realizar tanto análisis numéricos como administración ó procesamiento de archivos.
Las computadoras trabajaban a tal velocidad que proporcionaban la capacidad de correr más de un programa de manera simultánea (multiprogramación).
Minicomputadora
Con la introducción del modelo 360 IBM acaparó el 70% del mercado, para evitar competir directamente con IBM la empresa Digital Equipment Corporation (DEC) redirigió sus esfuerzos hacia computadoras pequeñas. Mucho menos costosas de comprar y de operar que las computadoras grandes, las minicomputadoras se desarrollaron durante la segunda generación pero alcanzaron su mayor auge entre 1960 y 1970.
- Generalización de lenguajes de programación de alto nivel
- Compatibilidad para compartir software entre diversos equipos
- Tiempo Compartido: Uso de una computadora por varios clientes a tiempo compartido, pues el aparato puede discernir entre diversos procesos que realiza simultáneamente
- Se desarrollaron circuitos integrados para procesar información.
- Se desarrollaron los "chips" para almacenar y procesar la información.
- Un "chip" es una pieza de silicio que contiene los componentes electrónicos en miniatura llamados semiconductores.
Cuarta Generación (1971-1982)
El microprocesador: El proceso de reducción del tamaño de los componentes llega a operar a escalas microscópicas. La microminiaturización permite construir el microprocesador, circuito integrado que rige las funciones fundamentales del ordenador.
Las aplicaciones del microprocesador se han proyectado más allá de la computadora y se encuentran en multitud de aparatos, sean instrumentos médicos, automóviles, juguetes, electrodomésticos, el tamaño reducido del microprocesador de chips hizo posible la creación de las computadoras personales. (PC)
Memorias Electrónicas: Se desechan las memorias internas de los núcleos magnéticos de ferrita y se introducen memorias electrónicas, que resultan más rápidas. Al principio presentan el inconveniente de su mayor costo, pero este disminuye con la fabricación en serie.
Sistema de tratamiento de base de datos: El aumento cuantitativo de las bases de datos lleva a crear formas de gestión que faciliten las tareas de consulta y edición. Los sistemas de tratamiento de base de datos consisten en un conjunto de elementos de hardware y software interrelacionados que permiten un uso sencillo y rápido de la información
En 1981, IBM develó su computador personal y, en 1984, Apple su Macintosh. A medida que estas máquinas se hacían más poderosas, se pudieron enlazar en redes, lo cual eventualmente condujo al desarrollo de Internet. Otros de los adelantos que se han desarrollado en esta generación son el uso de interfaces gráficas (Windows y Mac OS), el mouse y aparatos portátiles.
Hoy en día las tecnologías LSI (Integración a gran escala) y VLSI (integración a muy gran escala) permiten que cientos de miles de componentes electrónicos se almacenen en un clip. Usando VLSI, un fabricante puede hacer que una computadora pequeña rivalice con una computadora de la primera generación que ocupara un cuarto completo.
- Se minimizan los circuitos, aumenta la capacidad de almacenamiento.
- Reducen el tiempo de respuesta.
- Gran expansión del uso de las Computadoras.
- Memorias electrónicas más rápidas.
- Sistemas de tratamiento de bases de datos.
- Multiproceso.
- Microcomputadora.
Categorías de las Computadoras
SupercomputadoraLa supercomputadora es lo máximo en computadoras, es la más rápida y, por lo tanto, la más cara. Cuesta millones de dólares y se hacen de dos a tres al año. Procesan billones de instrucciones por segundo. Son utilizadas para trabajos científicos, particularmente para crear modelos matemáticos del mundo real, llamados simulación. Algunos ejemplos de uso son: exploración y producción petrolera, análisis estructural, dinámica de fluidos computacional, física, química, diseño electrónico, investigación de energía nuclear, meteorología, diseño de automóviles, efectos especiales de películas, trabajos sofisticados de arte, planes gubernamentales y militares y la fabricación de naves espaciales por computadoras. Ejemplo: Cray 1, Cray 2.
MainframeLos "mainframe" son computadoras grandes, ligeras, capaces de utilizar cientos de dispositivos de entrada y salida. Procesan millones de instrucciones por segundo. Su velocidad operacional y capacidad de procesar hacen que los grandes negocios, el gobierno, los bancos, las universidades, los hospitales, compañías de seguros, líneas aéreas, etc. confíen en ellas. Su principal función es procesar grandes cantidades de datos rápidamente. Estos datos están accesibles a los usuarios del "mainframe" o a los usuarios de las microcomputadoras cuyos terminales están conectados al "mainframe". Su costo fluctúa entre varios cientos de miles de dólares hasta el millón. Requieren de un sistema especial para controlar la temperatura y la humedad. También requieren de un personal profesional especializado para procesar los datos y darle el mantenimiento. Ejemplo: IBM 360.
MinicomputadoraLa minicomputadora se desarrolló en la década de 1960 para llevar a cabo tareas especializadas, tales como el manejo de datos de comunicación. Son más pequeñas, más baratas y más fáciles de mantener e instalar que los "mainframes". Usadas por negocios, colegios y agencias gubernamentales. Su mercado ha ido disminuyendo desde que surgieron las microcomputadoras. Ejemplos: PDP-1, PDP-11, Vax 20, IBM sistema 36.
Microcomputadora La microcomputadora es conocida como computadora personal o PC. Es la más pequeña, gracias a los microprocesadores, más barata y más popular en el mercado. Su costo fluctúa entre varios cientos de dólares hasta varios miles de dólares. Puede funcionar como unidad independiente o estar en red con otras microcomputadoras o como un terminal de un "mainframe" para expandir sus capacidades. Puede ejecutar las mismas operaciones y usar los mismos programas que muchas computadoras superiores, aunque en menor capacidad. Ejemplos: MITS Altair, Macintosh, serie Apple II, IBM PC, Dell, Compaq, Gateway, etc.
Tipos de microcomputadoras:
a. Desktop: Es otro nombre para la PC que está encima del escritorio.
b. Portátil: Es la PC que se puede mover con facilidad. Tiene capacidad limitada y la mayoría usa una batería como fuente de poder. Pesan entre 7Kg y 9Kg. Laptop: La computadora "laptop" tiene una pantalla plana y pesa alrededor de 6 Kg. Notebook La computadora "notebook" es más pequeña y pesa alrededor de 4Kg.
c. Palmtop: Es la computadora del tamaño de una calculadora de mano. Utiliza batería y puede ser conectada a la desktop para transferir datos.
Es el cerebro del ordenador. Se encarga de realizar todas las operaciones de cálculo y de controlar lo que pasa en el ordenador recibiendo información y dando órdenes para que los demás elementos trabajen. En los equipos actuales se habla fundamentalmente de los procesadores Pentium4 de Intel y Athlon XP de AMD. Además, están muy extendidos procesadores no tan novedosos, como los Pentium MMX y Pentium II/III de Intel y los chips de AMD (familias K6 y los primeros K7/Athlon).
Tipos de conexión
El rendimiento que dan los microprocesadores no sólo depende de ellos mismos, sino de la placa donde se instalan. Los diferentes micros no se conectan de igual manera a las placas:
Socket: Con mecanismo ZIF (Zero Insertion Force). En ellas el procesador se inserta y se retira sin necesidad de ejercer alguna presión sobre él. Al levantar la palanquita que hay al lado se libera el microprocesador, siendo extremadamente sencilla su extracción. Estos zócalos aseguran la actualización del microprocesador. Hay de diferentes tipos:
Socket 423 y 478: En ellos se insertan los nuevos Pentium 4 de Intel. El primero hace referencia al modelo de 0,18 (Willamete) y el segundo al construido según la tecnología de 0,13 (Northwood). También hay algunos de 478 con núcleo Willamete. El tamaño de mencionado hace referencia al tamaño de cada transistor, cuanto menor sea tu tamaño más pequeño será el micro y más transistores será posible utilizar en el mismo espacio físico. Además, la reducción de tamaño suele estar relacionada con una reducción del calor generado y con un menor consumo de energía. En el zócalo 478 también se insertan micros Celeron de Intel de última generación similares a los p4 pero más económicos
Socket 462/Socket A: Ambos son el mismo tipo. Se trata donde se insertan los procesadores Athlon en sus versiones más nuevas:
Athlon Duron: Versión reducida, con sólo 64 Kb de memoria caché, para configuraciones económicas.
Athlon Thunderbird: Versión normal, con un tamaño variable de la memoria caché, normalmente 256 Kb.
- Athlon XP: Con el núcleo Palomino fabricado en 0,18 o Thoroughbred fabricado en 0,13, es un Thunderbird con una arquitectura totalmente remodelada con un rendimiento ligeramente superior a la misma frecuencia (MHz), con un 20% menos de consumo y el nuevo juego de instrucciones SEC de Intel junto con el ya presente 3DNow! de todos los procesadores AMD desde el K6-2. o con el núcleo T.
- Athlon MP: Micro que utiliza el núcleo Palomino al igual que el XP, con la salvedad que éste accede de forma diferente al acceso a la memoria a la hora de tener que compartirla con otros micros, lo cual lo hace idóneo para configuraciones
- multiprocesador.
- Socket 370 o PPGA: Es el zócalo que utilizan los últimos modelos del Pentium III y Celeron de Intel.
- Socket 8: Utilizado por los procesadores Pentium Pro de Intel, un micro optimizado para código en 32 bits que sentaría las bases de lo que conocemos hoy día.
- Socket 7: Lo usan los micros Pentium/Pentium MMX/K6/K6-2 o K6-3 y muchos otros.
- Otros socket: como el zócalo ZIF Socket-3 permite la inserción de un 486 y de un Pentium Overdrive.
- Slot A /Slot 1 /Slot 2: Es donde se conectan respectivamente los procesadores Athlon antiguos de AMD, los procesadores Pentium II y antiguos Pentium III, los procesadores Xeon de Intel dedicados a servidores de red. Todos ellos son cada vez más obsoletos. El modo de insertarlos es similar a una tarjeta gráfica o de sonido, ayudándonos de dos guías de plástico insertadas en la placa base.
- En las placas base más antiguas, el micro iba soldado, de forma que no podía actualizarse (486 a 50 MHz hacia atrás). Hoy día esto no se ve en lo referente a los microprocesadores de PC.
El Microprocesador 4004
En 1969, Silicon Valley, en el estado de California (EEUU) era el centro de la industria de los semiconductores. Por ello, gente de la empresa Busicom, una joven empresa japonesa, fue a la compañía Intel (fundada el año anterior) para que hicieran un conjunto de doce chips para el corazón de su nueva calculadora de mesa de bajo costo.
Durante el otoño (del hemisferio norte) de 1969 Hoff, ayudado por Stanley Mazor, definieron una arquitectura consistente en un CPU de 4 bits, una memoria ROM (de sólo lectura) para almacenar las instrucciones de los programas, una RAM (memoria de lectura y escritura) para almacenar los datos y algunos puertos de entrada/salida para la conexión con el teclado, la impresora, las llaves y las luces. Además definieron y verificaron el conjunto de instrucciones con la ayuda de ingenieros de Busicom (particularmente Masatoshi Shima).
En abril de 1970 Federico Faggin se sumó al staff de Intel. El trabajo de él era terminar el conjunto de chips de la calculadora. Se suponía que Hoff y Mazor habían completado el diseño lógico de los chips y solamente quedarían por definir los últimos detalles para poder comenzar la producción. Esto no fue lo que Faggin encontró cuando comenzó a trabajar en Intel ni lo que Shima encontró cuando llegó desde Japón.
Shima esperaba revisar la lógica de diseño, confirmando que Busicom podría realizar su calculadora y regresar a Japón. Se puso furioso cuando vio que estaba todo igual que cuando había ido seis meses antes, con lo que dijo (en lo poco que sabía de inglés) "Vengo acá a revisar. No hay nada para revisar. Esto es sólo idea". No se cumplieron los plazos establecidos en el contrato entre Intel y Busicom. De esta manera, Faggin tuvo que trabajar largos meses, de 12 a 16 horas por día.
Finalmente pudo realizar los cuatro chips arriba mencionados. El los llamó "familia 4000". Estaba compuesto por cuatro dispositivos de 16 pines: el 4001 era una ROM de dos kilobits con salida de cuatro bits de datos; el 4002 era una RAM de 320 bits con el port de entrada/salida (bus de datos) de cuatro bits; el 4003 era un registro de desplazamiento de 10 bits con entrada serie y salida paralelo; y el 4004 era el CPU de 4 bits.
El 4001 fue el primer chip diseñado y terminado. La primera fabricación ocurrió en octubre de 1970 y el circuito trabajó perfectamente. En noviembre salieron el 4002 con un pequeño error y el 4003 que funcionó correctamente. Finalmente el 4004 vino unos pocos días antes del final de 1970. Fue una lástima porque en la fabricación se habían olvidado de poner una de las máscaras. Tres semanas después vinieron los nuevos 4004, con lo que Faggin pudo realizar las verificaciones. Sólo encontró unos pequeños errores. En febrero de 1971 el 4004 funcionaba correctamente. En el mismo mes recibió de Busicom las instrucciones que debían ir en la ROM.
A mediados de marzo de 1971, envió los chips a Busicom, donde verificaron que la calculadora funcionaba perfectamente. Cada calculadora necesitaba un 4004, dos 4002, cuatro 4001 y tres 4003. Tomó un poco menos de un año desde la idea al producto funcionando correctamente.
Luego de que el primer microprocesador fuera una realidad, Faggin le pidió a la gerencia de Intel que utilizara este conjunto de chips para otras aplicaciones. Esto no fue aprobado, pensando que la familia 4000 sólo serviría para calculadoras. Además, como fue producido mediante un contrato exclusivo, sólo lo podrían poner en el mercado teniendo a Busicom como intermediario.
Después de hacer otros dispositivos utilizando la familia 4000, Faggin le demostró a Robert Noyce (entonces presidente de Intel) la viabilidad de estos integrados para uso general. Finalmente ambas empresas llegaron a un arreglo: Intel le devolvió los 60.000 dólares que había costado el proyecto, sólo podría vender los integrados para aplicaciones que no fueran calculadoras y Busicom los obtendría más baratos (ya que se producirían en mayor cantidad).
El 15 de noviembre de 1971, la familia 4000, luego conocida como MCS-4 (Micro Computer System 4-bit) fue finalmente introducida en el mercado.
El Microprocesador 8080
El 8080 realmente creó el verdadero mercado de los microprocesadores. El 4004 y el 8008 lo sugirieron, pero el 8080 lo hizo real. Muchas aplicaciones que no eran posibles de realizar con los microprocesadores previos pudieron hacerse realidad con el 8080. Este chip se usó inmediatamente en cientos de productos diferentes. En el 8080 corría el famoso sistema operativo CP/M (siglas de Control Program for Microcomputers) de la década del '70 que fue desarrollado por la compañía Digital Research.
Como detalle constructivo el 8080 tenía alrededor de 6000 transistores MOS de canal N (NMOS) de 6 , se conectaba al exterior mediante 40 patas (en formato DIP) y necesitaba tres tensiones para su funcionamiento (típico de los circuitos integrados de esa época): +12V, +5V y -5V. La frecuencia máxima era de 2 MHz.
La competencia de Intel vino de Motorola. Seis meses después del lanzamiento del 8080, apareció el 6800. Este producto era mejor en varios aspectos que el primero. Sin embargo, la combinación de tiempos (el 8080 salió antes), "marketing" más agresivo, la gran cantidad de herramientas de hardware y software, y el tamaño del chip (el del 8080 era mucho menor que el del 6800 de Motorola) inclinaron la balanza hacia el 8080.
El mayor competidor del 8080 fue el microprocesador Z-80, que fue lanzado en 1976 por la empresa Zilog (fundada por Faggin). Entre las ventajas pueden citarse: mayor cantidad de instrucciones (158 contra 74), frecuencia de reloj más alta, circuito para el apoyo de refresco de memorias RAM dinámicas, compatibilidad de código objeto (los códigos de operación de las instrucciones son iguales) y una sola tensión para su funcionamiento (+5V).
Los Microprocesadores 8086 y 8088
En junio de 1978 Intel lanzó al mercado el primer microprocesador de 16 bits: el 8086. En junio de 1979 apareció el 8088 (internamente igual que el 8086 pero con bus de datos de 8 bits) y en 1980 los coprocesadores 8087 (matemático) y 8089 (de entrada y salida). El primer fabricante que desarrolló software y hardware para estos chips fue la propia Intel.
Los ordenadores con estos microprocesadores eran conocidos como ordenadores XT
Esto significa que los datos iban por buses que eran de 8 ó 16 bits, bien por dentro del chip o cuando salían al exterior, por ejemplo para ir a la memoria. Este número reducido de bits limita sus posibilidades en gran medida.
El desarrollo más notable para la familia 8086/8088 fue la elección del CPU 8088 por parte de IBM (International Business Machines) cuando en 1981 entró en el campo de las computadoras personales. Esta computadora se desarrolló bajo un proyecto con el nombre "Acorn" (Proyecto "Bellota") pero se vendió bajo un nombre menos imaginativo, pero más correcto: "Computadora Personal IBM"(con 48KB de memoria RAM y una unidad de discos flexibles con capacidad de 160KB). Esta computadora entró en competencia directa con las ofrecidas por Apple (basado en el 6502) y por Radio Shack (basado en el Z-80).
Los Microprocesadores 80186 y 80188
Estos microprocesadores altamente integrados aparecieron en 1982. Por "altamente integrados" se entiende que el chip contiene otros componentes aparte de los encontrados en microprocesadores comunes como el 8088 u 8086. Generalmente contienen, aparte de la unidad de ejecución, contadores o "timers", y a veces incluyen memoria RAM y/o ROM y otros dispositivos que varían según los modelos. Cuando contienen memoria ROM, a estos chips se los llama microcomputadoras en un sólo chip (no siendo éste el caso de los microprocesadores 80186/80188).
Externamente se encapsulaban en el formato PGA (Pin Grid Array) de 68 pines.
El Microprocesador 80286
Este microprocesador apareció en febrero de 1982. Los avances de integración que permitieron agregar una gran cantidad de componentes periféricos en el interior del 80186/80188, se utilizaron en el 80286 para hacer un microprocesador que soporte nuevas capacidades, como la multitarea (ejecución simultánea de varios programas).
El 80286 tiene dos modos de operación: modo real y modo protegido. En el modo real, se comporta igual que un 8086, mientras que en modo protegido, las cosas cambian completamente.
El 80286 contiene 134.000 transistores dentro de su estructura (360% más que el 8086). Externamente está encapsulado en formato PLCC (Plastic Leaded Chip Carrier) con pines en forma de J para montaje superficial, o en formato PGA (Pin Grid Array), en ambos casos con 68 pines.
El microprocesador 80286 ha añadido un nuevo nivel de satisfacción a la arquitectura básica del 8086, incluyendo una gestión de memoria con la extensión natural de las capacidades de direccionamiento del procesador. El 80286 tiene elaboradas facilidades incorporadas de protección de datos. Otras características incluyen todas las características del juego de instrucciones del 80186, así como la extensión del espacio direccionable a 16 MB, utilizando 24 bits para direccionar (224 = 16.777.216).
El 80286 revisa cada acceso a instrucciones o datos para comprobar si puede haber una violación de los derechos de acceso. Este microprocesador está diseñado para usar un sistema operativo con varios niveles de privilegio. En este tipo de sistemas operativos hay un núcleo que, como su nombre lo indica, es la parte más interna del sistema operativo. El núcleo tiene el máximo privilegio y los programas de aplicaciones el mínimo. Existen cuatro niveles de privilegio. La protección de datos en este tipo de sistemas se lleva a cabo teniendo segmentos de código (que incluye las instrucciones), datos (que incluye la pila aparte de las variables de los programas) y del sistema (que indican los derechos de acceso de los otros segmentos).
Para un usuario normal, los registros de segmentación (CS, DS, ES, SS) parecen tener los 16 bits usuales. Sin embargo, estos registros no apuntan directamente a memoria, como lo hacían en el 8086. En su lugar, apuntan a tablas especiales, llamadas tablas de descriptores, algunas de las cuales tienen que ver con el usuario y otras con el sistema operativo. Paralelamente a los 16 bits, cada registro de segmento del 80286 mantiene otros 57 bits invisibles para el usuario. Ocho de estos bits sirven para mantener los derechos de acceso (sólo lectura, sólo escritura y otros), otros bits mantienen la dirección real (24 bits) del principio del segmento y otros mantienen la longitud permitida del segmento (16 bits, para tener la longitud máxima de 64 KB). Por ello, el usuario nunca sabe en qué posición real de memoria está ejecutando o dónde se ubican los datos y siempre se mantiene dentro de ciertas fronteras. Como protección adicional, nunca se permite que el usuario escriba en el segmento de código (en modo real se puede escribir sobre dicho segmento). Ello previene que el usuario modifique su programa para realizar actos ilegales y potencialmente peligrosos. Hay también provisiones para prever que el usuario introduzca en el sistema un "caballo de Troya" que pueda proporcionarle un estado de alto privilegio.
El 80286 tiene cuatro nuevos registros. Tres de ellos apuntan a las tablas de descriptores actualmente en uso. Estas tablas contienen información sobre los objetos protegidos en el sistema. Cualquier cambio de privilegio o de segmento debe realizarse a través de dichas tablas. Adicionalmente hay varios indicadores nuevos.
Existen varias instrucciones nuevas, además de las introducidas con el 80186. Todas estas instrucciones se refieren a la gestión de memoria y protección del sistema haciendo cosas tales como cargar y almacenar el contenido de los indicadores especiales y los punteros a las tablas de descriptores.
El Microprocesador 80386
El 80386 consiste en una unidad central de proceso (CPU), una unidad de manejo de memoria (MMU) y una unidad de interfaz con el bus (BIU).
El CPU está compuesto por la unidad de ejecución y la unidad de instrucciones. La unidad de ejecución contiene los ocho registros de 32 bits de propósito general que se utilizan para el cálculo de direcciones y operaciones con datos y un barrel shifter de 64 bits que se utiliza para acelerar las operaciones de desplazamiento, rotación, multiplicación y división. Al contrario de los microprocesadores previos, la lógica de división y multiplicación utiliza un algoritmo de 1 bit por ciclo de reloj. El algoritmo de multiplicación termina la interacción cuando los bits más significativos del multiplicador son todos ceros, lo que permite que las multiplicaciones típicas de 32 bits se realicen en menos de un microsegundo.
El 80386 tiene dos modos de operación: modo de direccionamiento real (modo real), y modo de direccionamiento virtual protegido (modo protegido). En modo real el 80386 opera como un 8086 muy rápido, con extensiones de 32 bits si se desea. El modo real se requiere primariamente para preparar el procesador para que opere en modo protegido. El modo protegido provee el acceso al sofisticado manejo de memoria y paginado.
Finalmente, para facilitar diseños de hardware de alto rendimiento, la interfaz con el bus del 80386 ofrece pipelining de direcciones, tamaño dinámico del ancho del bus de datos (puede tener 16 ó 32 bits según se desee en un determinado ciclo de bus) y señales de habilitación de bytes por cada byte del bus de datos
Versiones del 80386
- 80386: En octubre de 1985 la empresa Intel lanzó el microprocesador 80386 original de 16 MHz, con una velocidad de ejecución de 6 millones de instrucciones por segundo y con 275.000 transistores. La primera empresa en realizar una computadora compatible con IBM PC AT basada en el 80386 fue Compaq con su Compaq Deskpro 386 al año siguiente.
- 386SX: Para facilitar la transición entre las computadoras de 16 bits basadas en el 80286, apareció en junio de 1988 el 80386 SX con bus de datos de 16 bits y 24 bits de direcciones (al igual que en el caso del 80286). Este microprocesador permitió el armado de computadoras en forma económica que pudieran correr programas de 32 bits. El 80386 original se le cambió de nombre: 80386 DX.
- 386SL: En 1990 Intel introdujo el miembro de alta integración de la familia 386: el 80386 SL con varias características extras (25 MHz, frecuencia reducida ó 0 MHz, interfaz para caché opcional externo de 16, 32 ó 64 KB, soporte de LIM 4.0 (memoria expandida) por hardware, generación y verificación de paridad, ancho de bus de datos de 8 ó 16 bits) que lo hacen ideal para equipos portátiles.
El Microprocesador 80486
Este microprocesador es básicamente un 80386 con el agregado de una unidad de coma flotante compatible con el 80387 y un caché de memoria de 8 KBytes.
Versiones del 80486
- 80486 DX: En abril de 1989 la compañía Intel presentó su nuevo microprocesador: el 80486 DX, con 1.200.000 transistores a bordo, el doble de la velocidad del 80386 y 100% de compatibilidad con los microprocesadores anteriores. El consumo máximo del 486DX de 50 MHz es de 5 watt.
- 80486 SX: En abril de 1991 introdujo el 80486 SX, un producto de menor costo que el anterior sin el coprocesador matemático que posee el 80486 DX (bajando la cantidad de transistores a 1.185.000).
- 80486 DX2: En marzo de 1992 apareció el 80486 DX2, que posee un duplicador de frecuencia interno, con lo que las distintas funciones en el interior del chip se ejecutan al doble de velocidad, manteniendo constante el tiempo de acceso a memoria. Esto permite casi duplicar el rendimiento del microprocesador, ya que la mayoría de las instrucciones que deben acceder a memoria en realidad acceden al caché interno de 8 KBytes del chip.
- 80486 SL: En el mismo año apareció el 80486 SL con características especiales de ahorro de energía.
- 80486 DX4: Siguiendo con la filosofía del DX2, en 1994 apareció el 80486 DX4, que triplica la frecuencia de reloj y aumenta el tamaño del caché interno a 16 KBytes.
El chip se empaqueta en el formato PGA (Pin Grid Array) de 168 pines en todas las versiones. En el caso del SX, también existe el formato PQFP (Plastic Quad Flat Pack) de 196 pines. Las frecuencias más utilizadas en estos microprocesadores son: SX: 25 y 33 MHz, DX: 33 y 50 MHz, DX2: 25/50 MHz y 33/66 MHz y DX4: 25/75 y 33/100 MHz. En los dos últimos modelos, la primera cifra indica la frecuencia del bus externo y la segunda la del bus interno. Para tener una idea de la velocidad, el 80486 DX2 de 66 MHz ejecuta 54 millones de instrucciones por segundo.
El Microprocesador Pentium
El 19 de octubre de 1992, Intel anunció que la quinta generación de su línea de procesadores compatibles (cuyo código interno era el P5) llevaría el nombre Pentium en vez de 586 u 80586, como todo el mundo estaba esperando. Esta fue una estrategia de Intel para poder registrar la marca y así poder diferir el nombre de sus procesadores del de sus competidores (AMD y Cyrix principalmente).
Este microprocesador se presentó el 22 de marzo de 1993 con velocidades iniciales de 60 y 66 MHz (112 millones de instrucciones por segundo en el último caso), 3.100.000 transistores (fabricado con el proceso BICMOS (Bipolar-CMOS) de 0,8 ), caché interno de 8 KB para datos y 8 KB para instrucciones, verificación interna de paridad para asegurar la ejecución correcta de las instrucciones, una unidad de coma flotante mejorada, bus de datos de 64 bit para una comunicación más rápida con la memoria externa y, lo más importante, permite la ejecución de dos instrucciones simultáneamente. El chip se empaqueta en formato PGA (Pin Grid Array) de 273 pines.
Como el Pentium sigue el modelo del procesador 386/486 y añade unas pocas instrucciones adicionales pero ningún registro programable, ha sido denominado un diseño del tipo 486+. Esto no quiere decir que no hay características nuevas o mejoras que aumenten la potencia. La mejora más significativa sobre el 486 ha ocurrido en la unidad de coma flotante. Hasta ese momento, Intel no había prestado mucha atención a la computación de coma flotante, que tradicionalmente había sido el bastión de las estaciones de ingeniería. Como resultado, los coprocesadores 80287 y 80387 y los coprocesadores integrados en la línea de CPUs 486 DX se han considerado anémicos cuando se les compara con los procesadores RISC (Reduced Instruction Set Computer), que equipan dichas estaciones.
Todo esto ha cambiado con el Pentium: la unidad de coma flotante es una prioridad para Intel, ya que debe competir en el mercado de Windows NT con los procesadores RISC tales como el chip Alpha 21064 de Digital Equipment Corporation y el MIPS R4000 de Silicon Graphics. Esto puede ayudar a explicar por qué el Pentium presenta un incremento de 5 veces en el rendimiento de coma flotante cuando se le compara con el diseño del 486. En contraste, Intel sólo pudo extraer un aumento del doble para operaciones de coma fijo o enteros.
El gran aumento de rendimiento tiene su contraparte en el consumo de energía: 13 watt bajo la operación normal y 16 watt a plena potencia (3,2 amperes x 5 volt = 16 watt), lo que hace que el chip se caliente demasiado y los fabricantes de tarjetas madres (motherboards) tengan que agregar complicados sistemas de refrigeración.
Intel puso en el mercado el 7 de marzo de 1994 la segunda generación de procesadores Pentium. Se introdujo con las velocidades de 90 y 100 MHz con tecnología de 0,6 y posteriormente se agregaron las versiones de 120, 133, 150, 160 y 200 MHz con tecnología de 0,35. En todos los casos se redujo la tensión de alimentación a 3,3 volt. Esto redujo drásticamente el consumo de electricidad (y por ende el calor que genera el circuito integrado). De esta manera el chip más rápido (el de 200 MHz) consume lo mismo que el de 66 MHz. Estos integrados vienen con 296 pines. Además la cantidad de transistores subió a 3.300.000. Esto se debe a que se agregó circuitería adicional de control de clock, un controlador de interrupciones avanzado programable (APIC) y una interfaz para procesamiento dual (facilita el desarrollo de motherboards con dos Pentium).
El Microprocesador Pentium Pro
El Pentium Pro a 133 MHz, que fue presentado el día 3 de noviembre de 1995 es el primer microprocesador de la tercera generación de la gama Pentium. Está preparado específicamente para ejecutar aplicaciones compiladas y desarrolladas para 32 bits. Algunas aplicaciones desarrolladas para entornos de 16 bits tienen una reducción de rendimiento en su ejecución en sistemas basados en un Pentium Pro respecto a los Pentium normales a 133 MHz. Perfectamente compatible con sus hermanos menores incorpora nuevas mejoras, de las cuales destaca la ejecución dinámica y la inclusión de una memoria cache secundaria integrada en el encapsulado del chip.
Fabricado en una geometría de 0,6, Intel basó sus desarrollos con vistas a reducirla a 0,35 micrones como la de los Pentium a 133 MHz, lo que reducirá su temperatura y podrá elevarse la frecuencia de reloj hasta los 200 MHz.
Intel ha puesto mucho esfuerzo en probar el Pentium Pro para intentar salvarse de los numerosos bugs que mancharon su gran prestigio. El Pentium Pro no es compatible con todas las placas del mercado. El motivo principal es la inclusión de la memoria cache secundaria dentro del chip. Se utiliza un bus interno que está optimizado para trabajar con las temporizaciones de conexión directa, lo cual imposibilita la conexión de la memoria cache externa.
Este nuevo producto tiene un bus que ha sido diseñado para conectar varios Pentium Pro en paralelo que soporta el protocolo MESI, es un microprocesador de 32 bits que incorpora una instrucción más (mover datos condicionalmente) que supone una mayor predicción de ramificaciones en la ejecución. Tiene 21 millones de transistores, 5,5 millones en el núcleo y 15,5 millones en la memoria cache secundaria. El CPU consta de dos chips colocados en cavidades independientes conectadas internamente. El chip correspondiente a la memoria cache es más pequeño que el del chip del núcleo, ya que la disposición de los transistores permite una mayor concentración.
El Microprocesador Pentium MMX
En enero de 1997 apareció una tercera generación de Pentium, que incorpora lo que Intel llama tecnología MMX (MultiMedia eXtensions) con lo que se agregan 57 instrucciones adicionales. Están disponibles en velocidades de 66/166 MHz, 66/200 MHz y 66/233 MHz (velocidad externa/interna). Las nuevas características incluyen una unidad MMX y el doble de caché. El Pentium MMX tiene 4.500.000 transistores con un proceso CMOS-silicio de 0,35 mejorado que permite bajar la tensión a 2,8 volt. Externamente posee 321 pines.
Prometían que el nuevo Pentium, con las MMX y el doble de caché (32 KB), podía tener hasta un 60% más de rendimiento. Que en la realidad en ocasiones, la ventaja puede llegar al 25%, y sólo en aplicaciones muy optimizadas para MMX. En el resto, no más de un 10%, que además se debe casi en exclusiva al aumento de la caché interna al doble.
La ventaja del chip es que su precio final acaba siendo igual que si no fuera MMX. Además, consume y se calienta menos por tener voltaje reducido para el núcleo del chip (2,8 V).
El Microprocesador Pentium II
Se trata del Pentium Pro, con algunos cambios y en una nueva y fantástica presentación, el cartucho SEC: una cajita negra que en vez de a un zócalo se conecta a una ranura llamada Slot 1.
Los cambios respecto al Pro son:
- Optimizado para MMX
- Nuevo encapsulado y conector a la placa
- Rendimiento de 16 bits mejorado
- Caché secundaria encapsulada junto al chip (semi-interna), pero a la mitad de la velocidad de éste
- Mejor gestión del bus que aumenta las prestaciones
- Las vías de datos más grandes mejoran el paso de datos
- Arquitectura de apertura de página dinámica que reduce la latencia del sistema
- El ECC de la memoria con cancelación del hardware soporta un realismo mayor.
Extendiendo la capacidad de ancho de banda de 100 MHz del procesador al bus del sistema, el conjunto de chips más nuevo de Intel soporta los últimos componentes SDRAM de 100 MHz. El Intel 440BX AGPset no sólo provee de "vías más anchas" sino de "vías más rápidas".
Eso sí, durante bastante tiempo fue el mejor chip del mercado, especialmente desde que se dejó de fabricar el Pro.
El Microprocesador Pentium II Xeon
El procesador Pentium II Xeon a 400 MHz es el primer miembro de la familia de microprocesadores Intel diseñados exclusivamente para los poderosos servidores y estaciones de trabajo. Basado en la arquitectura del procesador Pentium II, el procesador Pentium II Xeon agrega el rendimiento, facilidad de uso y confiabilidad en misión crítica superiores que exigen sus servidores y estaciones de trabajo basados en Intel.
El procesador Pentium II Xeon está disponible con memorias caché grandes y rápidas que procesan los datos a velocidades muy elevadas a través del núcleo del procesador. Además, características superiores de facilidad de uso como protección térmica, comprobación y corrección de errores, comprobación de redundancia funcional y el bus de administración del sistema ayudan a garantizar confiabilidad y tiempo de actividad máximos.
- Incorpora una memoria caché L2 de 512 KB o 1 MB. La memoria caché L2 opera a la misma velocidad que el núcleo del procesador (400 MHz), lo que pone a disposición del núcleo del procesador una cantidad de datos sin precedentes.
- Comparte datos con el resto del sistema a través de un bus de sistema multitransacciones de alta capacidad de 100 MHz, otra tecnología de vanguardia que extiende el potencial de velocidad de procesamiento superior al resto del sistema.
- Se puede direccionar y asignar a caché un máximo de 64 GB de memoria para incrementar el rendimiento con las aplicaciones más avanzadas.
- El bus del sistema permite múltiples transacciones pendientes de ejecución para incrementar la disponibilidad de ancho de banda. También ofrece compatibilidad sin "suplementos" con un máximo de 8 procesadores. Esto hace posible el multiprocesamiento simétrico con cuatro y ocho procesadores a un bajo costo y ofrece un incremento de rendimiento significativo para sistemas operativos multitareas y aplicaciones con múltiples subprocesos.
- PSE36: Es una expansión de la compatibilidad con memoria de 36 bits que permite a los sistemas operativos utilizar memoria por arriba de los 4 GB, lo cual incrementa el rendimiento del sistema para aplicaciones con grandes exigencias de lectura y espacio de trabajos grandes.
- El cartucho Single Edge Contact (S.E.C.) desarrollado por Intel hace posible la disponibilidad en grandes volúmenes, lo cual ofrece protección en el transporte y un factor de forma común para futuros procesadores Intel Pentium II Xeon
- Compatibilidad con clústeres o la capacidad de agrupar en clústeres varios servidores de cuatro procesadores. Esto permite a los usuarios escalar sus sistemas basados en el procesador Pentium II Xeon para ajustarlos a las necesidades de su organización
El Microprocesador Celeron (Pentium II light)
Es un chip de Intel basado en el Pentium II, que en su primera versión trabaja a 266 MHz. Es un Pentium II, pero sin una de sus características: carece de memoria caché de segundo nivel en total 512 Kb. menos en el interior del cartucho SEC. Tan sólo quedan los 32 Kb. de primer nivel.
Su función no es otra que sustituir al Pentium MMX en el mercado de micros baratos (el entry level o nivel básico). Su rendimiento es casi idéntico al del Pentium MMX (según pruebas de la misma Intel).
Gracias a este chip eliminan el mercado de placas con socket 7, es decir, las que usan los MMX y toda su competencia (AMD, Cyrix-IBM). Además, se quedan con absolutamente todo el mercado de los chipsets para placas base, ya que en el campo de placas para Pentium II Intel es la única empresa que cuenta a nivel mundial.
Otras características son el uso del Slot 1, bus de 66 MHz y ancho de transistor de 0,25 micrones. El chipset diseñado para el Celeron será el Intel MU440EX. Soporta USB, memorias DIMM, DMA 33… pero, dada la finalidad de los equipos, sólo posee un slot ISA y dos PCI. El SVGA va integrado en la placa base.
Suele ir con el chipset LX o con uno nuevo llamado EX que sólo dan una velocidad de placa de 66 MHz, mientras que otro nuevo chipset, el BX, ofrece 100 MHz.
El Microprocesador Pentium III
Este micro sería al Pentium II lo que el K6-2 era al K6; es decir, que su única diferencia de importancia radica en la incorporación de unas nuevas instrucciones (las SSE, Streaming SIMD Extensions), que aumentan el rendimiento matemático y multimedia… pero sólo en aplicaciones específicamente optimizadas para ello.
Los primeros modelos, con núcleo Katmai, se fabricaron todos en el mismo formato Slot 1 de los Pentium II, pero la actual versión Coppermine de este micro utiliza mayoritariamente el Socket 370 FC-PGA.
Son unos procesadores prácticamente iguales a los Pentium II, pero se diferencian de ellos en que incorporan 70 nuevas instrucciones para "mejorar la experiencia en Internet".
Las nuevas instrucciones se han llamado MMX-2, para referenciarlas como una extensión de las viejas MMX. También KNI, ya que el procesador tenía el nombre en clave de Katmai, de ahí a las Katmai New Instructions (KNI), aunque parece ser que también se referencian como SSE.
El porqué de estas instrucciones es muy simple. Para mejorar la experiencia multimedia, especialmente la decodificación de películas en DVD (para lo que era necesario disponer de una tarjeta decodificadora), la velocidad en el procesamiento de imágenes 2D y 3D, reconocimiento de voz…. Es decir Multimedia.
Estas 70 instrucciones se pueden dividir en 3 grupos:
En el primero podemos incluir 8 nuevas instrucciones que mejoran el acceso a memoria (para cachear memoria, especialmente para manejar muchos datos, como en el reconocimiento de voz o los vectores de datos 3D).
Existen 12 nuevas instrucciones específicas para multimedia, para tareas como optimizar el proceso de datos de audio o para mejorar las representaciones MPEG2. Estas instrucciones complementan a las 59 MMX ya existentes.
Y por último, las 50 nuevas instrucciones para el manejo de datos en coma flotante. Especialmente diseñadas para el proceso de datos tridimensionales. Estas son las más parecidas a las 3DNow! de AMD. Pueden producir hasta 4 resultados por ciclo de reloj (como las 3DNow!), aunque estos resultados pueden ser 4 sumas, o 4 multiplicaciones, mientras que las 3DNow! tienen que combinar suma y multiplicación para poder cumplir con sus 4 resultados.
Además, gracias a las nuevas instrucciones, (al igual que ocurría con las 3DNow!) podemos utilizar el modo MMX y la unidad de coma flotante sin ver penalizado el rendimiento (en los primeros MMX y K6, si utilizábamos MMX no podíamos hacer operaciones en coma flotante y al revés).
El Microprocesador Pentium 4
La última apuesta de Intel, que representa todo un cambio de arquitectura; pese a su nombre, internamente poco o nada tiene que ver con otros miembros de la familia Pentium. Se trata de un micro peculiar: su diseño permite alcanzar mayores velocidades de reloj (más MHz… y GHz), pero proporcionando mucha menos potencia por cada MHz que los micros anteriores; es decir, que un Pentium 4 a 1,3 GHz puede ser MUCHO más lento que un Pentium III a "sólo" 1 GHz. Para ser competitivo, el Pentium 4 debe funcionar a 1,7 GHz o más.
Incluye mejoras importantes: bus de 400 MHz (100 MHz físicos cuádruplemente aprovechados) y nuevas instrucciones para cálculos matemáticos, las SSE2. Éstas son muy necesarias para el Pentium 4, ya que su unidad de coma flotante es muchísimo más lenta que la del Athlon; si el software está específicamente preparado (optimizado) para las SSE2, el Pentium 4 puede ser muy rápido, pero de lo contrario no.
El nuevo procesador Intel Pentium 4 a 3 GHz con un avanzado bus del sistema de 800 MHz ofrece mayores niveles de rendimiento, creatividad y productividad. Basado en la microarquitectura Intel NetBurst y diseñado con tecnología de 0,13 micrones, el procesador Pentium 4 proporciona significativas mejoras en el rendimiento, tanto en su uso doméstico o con soluciones empresariales, y satisface todas sus necesidades de proceso.
El procesador Pentium 4 a 3 GHz también ofrece soporte para la tecnología Hyper-Threading, permitiéndole realizar varias tareas de forma más eficaz cuando ejecuta a la vez aplicaciones que utilizan muchos recursos.
Velocidades disponibles
- Bus del sistema a 800 MHz: 3 GHz
- Bus del sistema a 533 MHz: 3,06 GHz, 2,80 GHz, 2,66 GHz, 2,53 GHz, 2,40B GHz, 2,26 GHz
- Bus del sistema a 400 MHz: 2,60 GHz, 2,50 GHz, 2,40 GHz, 2,20 GHz, 2A GHz
Chipset
- Bus del sistema a 800 MHz: Gama de chipsets Intel 875P
- Bus del sistema a 400 MHz y 533 MHz: Gama de chipsets Intel 850 , , 845PE , 845GE , 845GV , 845E y 845G
- Bus del sistema a 400 MHz: chipsets Intel 845GL y 845
- Soporte de Pentium 4 Socket 423
- 4 ranuras RIMM para memoria RDRAM
- Incluye 2 módulos CRIMM
- Chipset Intel 850 (82850/82801)
- 1 ranura AGP 4x 1.5 V
- 5 ranuras PCI
- 1 ranura CNR
- Soporte ATA/100
- Sonido AC97 integrado
- 2 puertos USB + 2 opcionales
La Próxima Generación de Arquitecturas de Microprocesadores
Intel y Hewlett-Packard han definido conjuntamente una nueva tecnología de arquitectura llamada EPIC llamada así por la habilidad del software de extraer el máximo paralelismo (potencial para trabajar en paralelo) del código original y explícitamente describirlo al hardware.
Intel y HP se han basado en esta tecnología EPIC para definir la arquitectura del set de instrucciones (ISA) que será incorporada en la arquitectura final del microprocesador de 64-bits de Intel. Esta nueva tecnología ISA de 64-bits trae consigo un modus operandi innovador, ya que haciendo uso de su tecnología EPIC, y combinando paralelismo explícito con conceptos y técnicas avanzadas de arquitectura de computadoras llamadas especulación y predicación superará todas las limitaciones de las arquitecturas tradicionales.
Intel anunció el nuevo nombre para su primer microprocesador IA-64 de nombre clave Merced, Itanium.
Itanium supuestamente reemplazara toda la línea de procesadores Xeon, que en este momento esta ocupando un lugar muy importante en la industria de los servidores. Se afirma que tendrá un rendimiento para redes suficiente como para sacarle una ventaja a los RISC de un 20-30% en este rubro. Intel espera que el nuevo procesador opere a una frecuencia de reloj alrededor de los 800 MHz y que entregue entre 45-50 SPECint95 y 70-100 SPECfp95 (base).
Mientras que en modo x86, Itanium podría igualar el rendimiento de un Pentium II de 500-MHz. Consumirá 60 Watts. El chip IA-64 esta más o menos por encima de los 300 mm2.
Itanium mejorará su labor con características como el ECC y lo que Intel llama
EMC. Si el chip Itanium cae repetidamente en excepciones de ECC, la arquitectura alerta al sistema operativo.
El CPU del Itanium está combinado con mas de 4M de SRAM en un modulo que está conectado horizontalmente a la tarjeta madre.
El procesador será producido con una tecnología de 0.18 micrones la cual también esta siendo desarrollada por Intel Corporation. Decrementando las características de esa tecnología, permite reducir el poder de disipación, aumentar la frecuencia de operación y agrandar la escala de integración. Esta última permite colocar más unidades funcionales, más registros y más cache dentro del procesador.
Tendrá cache L1 y L2 en el chip, y cache L3 en el paquete Itanium (el cual es más pequeño que una tarjeta de presentación de 3×5"), mas no adentro del chip, el cual se utilizará para reducir el trafico de bus. El Itanium vendrá con 4 MB de cache L3. Incluirá una opción de 2 Mbytes o de 4 Mbytes de cache L2. OEM’s también podrán añadir cache L4.
El primer Itanium será un módulo de estilo cartucho, incluyendo un CPU, cache L1 y L2 y una interface de bus. El cartucho usará un sistema de bus recientemente definido, usando conceptos del bus del Pentium-II. El Itanium será capaz de soportar 6 gigaflops. Tendrá 4 unidades para enteros y dos unidades de coma flotante.
IA-64 es algo completamente diferente, es una mirada anticipada a la arquitectura que usa "palabras de instrucciones largas" (LIW), predicación de instrucciones, eliminación de ramificaciones, carga especulativa, y otras técnicas avanzadas para extraer mas paralelismo del código de programa.
Definitivamente Intel continuará en el futuro con el desarrollo de procesadores IA-32, tal es el caso de Foster.
Merced proveerá direccionamiento de 64-bits, y tamaños de páginas altamente flexibles para reducir el intercambio de información entre memoria física y virtual, y especulación para reducir los efectos del tiempo de retrieve de memoria. Para máxima disponibilidad, el procesador Itanium incorporará un MCA mejorado que coordina el manejo de errores entre el procesador y el sistema operativo, suministrando oportunidades adicionales para corregir y entender los errores. El Itanium ofrece también otras características como el envenenamiento de datos, el cual permite enclaustrar la data corrupta y así terminar solamente los procesos afectados y con respuestas rebeldes al sistema y también una paridad extensiva y ECC. Estas características complementadas con otras de sistema anticipado como lo es el PCI Hot Plug (cambio de periféricos en tiempo de ejecución, teniendo arquitecturas redundantes obviamente), el soporte de los sistemas operativos mas utilizados y un manejo de instrucciones mejorado permitirán al Itanium satisfacer las demandas computacionales de nuestra era como lo son el e-Business, visualización y edición de gráficos 3D de gran tamaño y toda clase de operación multimedia.
El procesador Itanium extenderá la arquitectura Intel a nuevos niveles de ejecución para los servidores y estaciones de trabajo de alta capacidad, ya que en sus presentaciones Intel no ha dejado duda de que IA-64 tiene como objetivo primario este segmento del mercado.
Inicialmente llevará el chip set lógico de sistema 460GX, incluirá un servidor para entregar el rendimiento y confiabilidad necesarios por estos sistemas de alto costo.
Intel indicó que el 460GX soportará por lo menos 16G de standard SDRAM PC100 a 100 MHz. El 460GX soporta ECC en el bus del sistema y en la memoria principal y puede mapear fallas de las DRAM’s. Puede manejar más de 4 microprocesadores y puede ser usado como bloque de construcción, a pesar de que varios de los clientes de Intel están desarrollando su propia lógica del sistema para conectar 8 o más procesadores Itanium. El 460GX soporta "hot plugging" cuando tiene arriba de cuatro
buses PCI, cada uno de 64 bits y 66 MHz de ancho de banda extra. El multi chip set también podrá ser usado para estaciones de trabajo, ya que incluye un puerto AGP de 4x. Ya que Intel y HP están desarrollando la arquitectura EPIC, dicen que es una tecnología de arquitectura fundamental, análoga a lo que es CISC y RISC.
El nuevo formato IA-64 empaqueta tres instrucciones en una sola palabra de 128 bits de longitud para un procesamiento más veloz. Este empaquetamiento es usualmente llamado codificación LIW, pero Intel evita ese nombre. Más bien, Intel llama a su nueva tecnología LIW EPIC.
EPIC es similar en concepto a VLIW ya que ambos permiten al compilador explícitamente agrupar las instrucciones para una ejecución en paralelo. El flexible mecanismo de agrupación del EPIC resuelve dos desperfectos del VLIW: excesiva expansión de código y falta de escalabilidad.
Una Red es una manera de conectar varias computadoras entre sí, compartiendo sus recursos e información y estando conscientes una de otra. Cuando las PCs comenzaron a entrar en el área de los negocios, el conectar dos PCs no traía ventajas, pero esto desapareció cuando se empezaron a crear los sistemas operativos y el Software multiusuario.
Topología de Redes
La topología de una red, es el patrón de interconexión entre nodos y servidor, existe tanto la topología lógica (la forma en que es regulado el flujo de los datos), cómo la topología física (la distribución física del cableado de la red).
Las topologías físicas de red más comunes son:
- Topología de Estrella: Red de comunicaciones en que la que todas las terminales están conectadas a un núcleo central, si una de las computadoras no funciona, esto no afecta a las demás, siempre y cuando el "servidor" esté funcionando.
- Topología Bus Lineal: Todas las computadoras están conectadas a un cable central, llamado el "bus" o "backbone". Las redes de bus lineal son de las más fáciles de instalar y son relativamente baratas.
- Topología de Anillo: Todas las computadoras o nodos están conectados el uno con el otro, formando una cadena o círculo cerrado.
Tipos de Redes
Según el lugar y el espacio que ocupen, las redes, se pueden clasificar en dos tipos:
- Redes LAN (Local Area Network) o Redes de área local
- Redes WAN (Wide Area Network) o Redes de área amplia
1) LAN ( Redes de Área Local)
Es una red que se expande en un área relativamente pequeña. Éstas se encuentran comúnmente dentro de una edificación o un conjunto de edificaciones que estén contiguos. Así mismo, una LAN puede estar conectada con otras LAN a cualquier distancia por medio de línea telefónica y ondas de radio.
Pueden ser desde 2 computadoras, hasta cientos de ellas. Todas se conectan entre sí por varios medios y topología, a la computadora que se encarga de llevar el control de la red es llamada "servidor" y a las computadoras que dependen del servidor, se les llama "nodos" o "estaciones de trabajo".
Los nodos de una red pueden ser PCs que cuentan con su propio CPU, disco duro y software y tienen la capacidad de conectarse a la red en un momento dado; o pueden ser PCs sin CPU o disco duro y son llamadas "terminales tontas", las cuales tienen que estar conectadas a la red para su funcionamiento.
Las LAN son capaces de transmitir datos a velocidades muy rápidas, algunas inclusive más rápido que por línea telefónica; pero las distancias son limitadas.
2) WAN (Redes de Área Amplia)
Es una red comúnmente compuesta por varias LAN interconectadas y se encuentran en un área geográfica muy amplia. Estas LAN que componen la WAN se encuentran interconectadas por medio de líneas de teléfono, fibra óptica o por enlaces aéreos como satélites.
Entre las WAN más grandes se encuentran: la ARPANET, que fue creada por la Secretaría de Defensa de los Estados Unidos y se convirtió en lo que es actualmente la WAN mundial: INTERNET, a la cual se conectan actualmente miles de redes universitarias, de gobierno, corporativas y de investigación.
Componentes de una Red
1.-Servidor (server): El servidor es la máquina principal de la red, la que se encarga de administrar los recursos de la red y el flujo de la información. Muchos de los servidores son "dedicados", es decir, están realizando tareas específicas, por ejemplo, un servidor de impresión solo para imprimir; un servidor de comunicaciones, sólo para controlar el flujo de los datos…etc. Para que una máquina sea un servidor, es necesario que sea una computadora de alto rendimiento en cuanto a velocidad y procesamiento, y gran capacidad en disco duro u otros medios de almacenamiento.
2.- Estación de trabajo (Workstation): Es una computadora que se encuentra conectada físicamente al servidor por medio de algún tipo de cable. Muchas de las veces esta computadora ejecuta su propio sistema operativo y ya dentro, se añade al ambiente de la red
3. -Sistema Operativo de Red: Es el sistema (Software) que se encarga de administrar y controlar en forma general la red. Para esto tiene que ser un Sistema Operativo Multiusuario, como por ejemplo: Unix, Netware de Novell, Windows NT, etc.
4. -Recursos a compartir: Al hablar de los recursos a compartir, estamos hablando de todos aquellos dispositivos de Hardware que tienen un alto costo y que son de alta tecnología. En estos casos los más comunes son las impresoras, en sus diferentes tipos: Láser, de color, plotters, etc.
5. – Hardware de Red: Son aquellos dispositivos que se utilizan para interconectar a los componentes de la red, serían básicamente las tarjetas de red (NIC-> Network Interface Cards) y el cableado entre servidores y estaciones de trabajo, así como los cables para conectar los periféricos.
Tecnologías Futuras
La nanotecnología basada en el nanómetro, del cual la unidad es la mil millonésima parte de un metro, permite a los científicos tener nuevos conceptos de diagnósticos de enfermedad y tratamiento a una escala molecular y atómica. Al utilizar partículas de nanómetro, un médico puede separar las células del feto de la sangre de una mujer embarazada para ver si el desarrollo del feto es normal. Este método también está siendo utilizado en los diagnósticos tempranos de cáncer y de enfermedades cardíacas.
Uno de los impactos más significativos de la nanotecnología es en la interface de los materiales bio-inorgánicos, de acuerdo con Greg Tegart, consejero ejecutivo del Centro de APEC para la Previsión de Tecnología. Al combinar enzimas y chips de silicona podemos producir biosensores. Estos podrían ser implantados en seres humanos o animales para monitorear la salud y enviar dosis correctivas de drogas.
La nanotecnología podría afectar la producción de virtualmente todo objeto hecho por el hombre, desde automóviles, llantas y circuitos de computadoras, hasta medicinas avanzadas y el reemplazo de tejidos y conducir a la invención de objetos que aún están por imaginarse. Se ha mostrado que los nanotubos de carbón son diez veces más fuertes que el acero, con un sexto del peso, y los sistemas de nanoescala tienen el potencial de hacer el costo del transporte supersónico efectivo e incrementar la eficiencia de la computadora en millones de veces. Al disfrutar más y más gente de la navegación por Internet, los científicos han comenzado la investigación de la nueva generación de Internet. La tercera generación de Internet, conocida como la cuadrícula de servicio de información (ISG, siglas en inglés), conectará no sólo computadoras y sitios web, sino también recursos informativos, incluyendo bases de datos, software y equipo informativo. La cuadrícula proveerá a los suscriptores de servicios integrados precisamente como una computadora supergrande.
Por ejemplo, cuando un suscriptor vaya a viajar, el o ella sólo necesitará introducir datos en el número de turistas, destino, tiempo y otros factores. Entonces el ISG contactará automáticamente aerolíneas, estaciones de tren, agencias de viajes y hoteles para preparar un programa de viaje para el suscriptor y terminar todo el trabajo necesario como la reservación de boletos y de cuartos.
Ordenadores Cuánticos y Moleculares
La velocidad y el tamaño de los micros están íntimamente relacionadas ya que al ser los transistores más pequeños, la distancia que tiene que recorrer la señal eléctrica es menor y se pueden hacer más rápidos. Al ser los transistores cada vez más pequeños la cantidad de ellos contenidos en un microprocesador, y por consiguiente su velocidad, se ha venido duplicando cada dos años. Pero los estudios revelan que este ritmo no se puede mantener y que el límite será alcanzado tarde o temprano, ya que si se reduce más, las interferencias de un transistor provocarían fallos en los transistores adyacentes.
Con el fin de superar estos límites de tamaño y velocidad se está trabajando en la actualidad en varios centros de investigación de todo el mundo en dos líneas que pueden revolucionar el mundo de la informática: Los ordenadores cuánticos y los ordenadores de ADN.
Los Ordenadores Cuánticos
Los ordenadores utilizan bits para codificar la información de modo que un bit puede tomar el valor cero o uno. Por contra, los ordenadores cuánticos utilizan los qubits (bits cuánticos) para realizar esta tarea. Un qubit almacena la información en el estado de un átomo, pero por las propiedades de los átomos hacen que el estado no tenga porque ser cero o uno, sino que puede ser una mezcla de los dos a la vez. Así, al poder almacenar una mezcla de ambos valores a la vez en cada qubit podemos tratar toda la información de una sola vez.
Su procesador consta de algunos átomos de hidrógeno y carbono en una molécula de cloroformo con los spines de sus núcleos alineados por radiofrecuencias, usando las técnicas usuales de resonancia magnética de origen nuclear (NMR). Podría ser el inicio de la nanotecnología, idea propuesta por Eric Drexler, quien, como estudiante del MIT en los años 70, consideraba la posibilidad de construir máquinas con unos pocos átomos que puedan programarse para construir otras, eventualmente millones.
Gracias a estas propiedades los ordenadores cuánticos tienen una especial capacidad para resolver problemas que necesitan un elevado número de cálculos en un tiempo muy pequeño. Además, como estarán construidos con átomos, su tamaño será microscópico consiguiendo un nivel de miniaturización impensable en los microprocesadores de silicio.
Por desgracia, en la actualidad aún no se ha llegado a construir ordenadores cuánticos que utilicen más de dos o tres qubits. Aún así, hay un gran número de centros de investigación trabajando tanto a nivel teórico como a nivel práctico en la construcción de ordenadores de este tipo y los avances son continuos. Entre los principales centros destacan los laboratorios del centro de investigación de Almaden de IBM, AT&T, Hewlett Packard en Palo Alto (California), el Instituto Tecnológico de Massachusetts (MIT) y universidades de todo el mundo como la de Oxford Standford, Berkeley, etcétera.
Computadoras de ADN
La computación molecular consiste en representar la información a procesar con moléculas orgánicas y hacerlas reaccionar dentro de un tubo de ensayo para resolver un problema.
La primera experiencia en laboratorio se realizó en 1994 cuando se resolvió un problema matemático medianamente complejo. Para ello se utilizó la estructura de moléculas de ADN para almacenar la información de partida y se estudió las moléculas resultantes de las reacciones químicas para obtener la solución.
Por una parte, esta técnica aprovecha la facultad de las moléculas de reaccionar simultáneamente dentro de un mismo tubo de ensayo tratando una cantidad de datos muy grande al mismo tiempo. Por otro lado, el tamaño de las moléculas los sitúa a un tamaño equiparable al que se puede conseguir con los ordenadores cuánticos. Otra ventaja importante es que la cantidad de información que se puede almacenar es sorprendente, por ejemplo, en un centímetro cúbico se puede almacenar la información equivalente a un billón de CDs.
Si comparamos un hipotético computador molecular con un supercomputador actual vemos que el tamaño, la velocidad de cálculo y la cantidad de información que se puede almacenar son en extremo mejoradas. La velocidad de cálculo alcanzada por un computador molecular puede ser un millón de veces más rápida y la cantidad de información que puede almacenar en el mismo espacio es un billón de veces (1.000.000.000.000) superior.
Aunque aún no se pueden construir ordenadores de este tipo, desde la primera experiencia práctica esta área ha pasado a formar parte de los proyectos más serios como alternativa al silicio. Buena prueba de ello son las investigaciones llevadas a cabo en el marco del DIMACS o "Centro de Matemática Discreta y Computación Teórica" del cual forman parte las universidades Princeton, los laboratorios de AT&T, Bell entre otros. Otros focos de investigación son el Departamento de Defensa de los Estados Unidos y el Consorcio Europeo de Computación Molecular formado por un importante número de universidades. Científicos israelitas, presentaron una computadora de ADN tan diminuta que un millón de ellas podría caber en un tubo de ensayo y realizar 1.000 millones de operaciones por segundo con un 99,8 por ciento de precisión. Es la primera máquina de computación programable de forma autónoma en la cual la entrada de datos, el software y las piezas están formados por biomoléculas. Los programas de la microscópica computadora están formados por moléculas de ADN que almacenan y procesan la información codificada en organismos vivos.
La computación vestible o para llevar puesta (Wearable Computing o WC) intenta hacer que la computadora sea verdaderamente parte de la vida diaria del ser humano, integrándola en la forma de un accesorio tan cómodo de vestir como un reloj de pulsera y tan fácil de usar como un teléfono móvil. Se trata de un sistema completo que porta el usuario, desde la placa principal (el motherboard) hasta la fuente de alimentación y todos los dispositivos de entrada/salida, y que interactúan con él basado en el contexto de la situación.
"Para integrar la computadora de forma imperceptible con el entorno, no basta con que se la pueda llevar a la playa, a la selva o a un aeropuerto. La computadora de bolsillo más potente seguiría centrando la atención del usuario sobre una caja individual. Uno debería estar dentro de la computadora más bien que frente a ella, debería estar en un entorno inmersivo"
En una configuración convencional, la WC constará de un chaleco lleno de chips y sensores conectado al cinturón-batería, de donde se extraerá la alimentación del equipo. La energía generada por la respiración, el calor corporal, los latidos cardíacos y el movimiento de los brazos y las piernas podrá usarse para alimentar a las baterías. Como dispositivo de interfaz, cuenta con micrófonos y antenas diminutos, así como también con unos anteojos especiales equipados con microcámaras que integran las funciones de cámaras fotográficas, video-cámaras y escáners. A través del sistema de control visual se puede controlar con la vista muchas de las funciones de la máquina. Aquellas principales se descuelgan de la parte interna de los anteojos en forma de menú de múltiple elección y con sólo mirarlas fijas por un período de 2 segundos o con un simple parpadeo el usuario puede elegir una de ellas. Esta elección puede llevar a un segundo menú en el que se esbozan características secundarias, y así sucesivamente hasta que quede convenientemente detallada la operación que se desea realizar. Aunque resulte increíble, a esa distancia del ojo, la imagen percibida sobre la cara interna de los anteojos, es equivalente a la ofrecida por un monitor común situado a varias decenas de centímetros.
Esto creará una simbiosis íntima entre el hombre y la computadora. La WC responderá a la voz del dueño dándole la información crítica que necesita, en el momento en que la precisa y en cualquier lugar. Por ejemplo, y en el caso de que una persona presencie un hurto, podrá fotografiarlo y enviarlo por Internet ya que, además, uno podrá navegar por la red mientras viaja o camina por cualquier zona del globo. El usuario podrá recibir de manera instantánea aquellas informaciones que particularmente le interesen; podrá enlazarse con la red de posicionamiento global para saber en cualquier momento su ubicación y nunca se olvidará del cumpleaños de ninguno de sus amigos. Asimismo, ofrece la posibilidad para tomar notas y procesarlas en el momento, algo verdaderamente útil ya que evita la sobrecarga de pensamientos y libera a la mente de "recursos" para permitir que surjan nuevas ideas. Incluso, permitirá organizar mejor los pensamientos, ya que recuperará para el usuario todo lo que anteriormente escribió, leyó, vio y escuchó sobre el mismo tema, complementando o aumentando su información.
La principal aplicación de las WC será la adquisición, el almacenamiento y la recuperación de la información, y la idea es que estén "siempre encendidas" en contraste con las computadoras que están "casi siempre apagadas".
La nanotecnología tiene grandes posibilidades de convertirse en la tecnología clave en las próximas décadas. Las nanotecnologías -técnicas de manipulación o control a escala nanotécnica e incluso molecular o atómica- estarán presentes en todos los campos de las ciencias y supondrán, según los expertos, una revolución.
Los futuros desarrollos de esta tecnología, como la micromecanización tridimensional, microsensores, materiales nanoestructurados, así como los sistemas microelectromecánicos, se aplicarán tanto a la computación, a la producción de medicamentos o al desarrollo de materiales cada vez más diminutos. En todos los países situados a la cabeza del desarrollo tecnológico, cobran cada día más relevancia las investigaciones de la Nanotecnología aplicadas a distintos campos como la aeronáutica y el espacio, las comunicaciones y multimedia, la biomedicina o el control de procesos industriales.
Mantener la tecnología basada en transistores supondría la quiebra para muchos fabricantes de chips porque no podrían soportar los altos costos. Por eso se están investigando nuevos sistemas dentro de la nanotecnología.
Entre las soluciones que se están aplicando actualmente está la de sustituir el aluminio por el cobre en los conductores que conectan los transistores. El cobre es un 40% mejor conductor que el aluminio y mejora la velocidad de los procesadores. Pero presenta otros problemas. No se mezcla bien con el silicio, el material base de los transistores, y, además, es capaz de cambiar las propiedades eléctricas del sustrato.
Para solucionar este problema, la compañía IBM consiguió desarrollar un método, que consiste en introducir una barrera microscópica entre el cobre y el silicio, y que elimina el rechazo. Este sistema está permitiendo fabricar chips con tecnología de 0.12 micras y cuyo coste de procesamiento es entre un 20 y un 30% menor que el de los chips basados en aluminio.
En septiembre de 2001, anunció que había conseguido unir el arsenio de galio, más caro pero mejor conductor de la electricidad, con el silicio. La compañía de telefonía afirmó que el nuevo semiconductor actúa a una velocidad de 70 gigahercios, 35 veces por encima de los actuales gigahercios de los procesadores más rápidos en las computadoras personales.
Intel presentó una nueva estructura para transistores, que permitirá que los chips funcionen más rápido y consuman menos energía. Lo llaman el Transistor TeraHertz, porque su ciclo de encendido y apagado es de un billón de veces por segundo.
El proyecto del chip molecular sustituirá al silicio, en favor de la química, más manipulable. Se prevé que se podrán fabricar computadoras del tamaño de una partícula de polvo y miles de veces más potentes que los existentes. De momento, se ha conseguido simular el cambio de una molécula, mediante su rotura, pero falta crear moléculas que se curven sin romperse.
También es necesario fabricar otros conductores, porque los existentes no sirven. Los experimentos con nanotubos de carbón (milmillonésima parte de un metro) para la conducción de información entre las moléculas ya han dado resultados. IBM acaba de anunciar que ha conseguido crear un circuito lógico de ordenador con una sola molécula de carbono, una estructura con forma de cilindro 100.000 veces más fino que un cabello. Este proyecto permite introducir 10.000 transistores en el espacio que ocupa uno de silicio.
Los desarrollos en Nanotecnología se están aplicando también a los sistemas de seguridad. La empresa taiwanesa Biowell Technology presentó, en agosto, un sintetizado que puede utilizarse para probar la autenticidad de pasaportes y otros documentos y tarjetas, con el fin de evitar el pirateo.
Este chip podrá utilizarse también en tarjetas de débito, carnets, matrículas de automóviles, permisos de conducir, discos compactos, DVD, programas informáticos, títulos y valores, bonos, libretas bancarias, antigüedades, pinturas, y otras aplicaciones en las que se necesite comprobar su autenticidad.
Computación Suave o Soft Computing
Su objetivo es bien concreto: aumentar el "coeficiente intelectual" de las máquinas dándoles la habilidad de imitar a la mente humana, la cual es blanda, suave, flexible, adaptable e inteligente. Es la antítesis de la computación actual, asociada con la rigidez, la fragilidad, la inflexibilidad y la estupidez. Los métodos de la computación dura no proveen de suficientes capacidades para desarrollar e implementar sistemas inteligentes.
En lugar de confiar en las habilidades del programador, un verdadero programa de Computación Suave aprenderá de su experiencia por generalización y abstracción, emulando la mente humana tanto como pueda, especialmente su habilidad para razonar y aprender en un ambiente de incertidumbre, imprecisión, incompletitud y verdad parcial, propios del mundo real. De esta forma, es capaz de modelizar y controlar una amplia variedad de sistemas complejos, constituyéndose como una herramienta efectiva y tolerante a fallas para tratar con los problemas de toma de decisiones en ambientes complejos, el razonamiento aproximado, la clasificación y compresión de señales y el reconocimiento de patrones. Sus aplicaciones están relacionadas, entre otras, con el comercio, las finanzas, la medicina, la robótica y la automatización.
La Computación Suave combina diferentes técnicas modernas de Inteligencia Artificial como Redes Neuronales, Lógica Difusa, Algoritmos Genéticos y Razonamiento Probabilística, esta última incluyendo Algoritmos Evolutivos, Sistemas Caóticos, Redes de Opinión y, aunque solo parcialmente, Teoría de Aprendizaje. No obstante, conviene aclarar, la Computación Suave no es una mezcla con estos ingredientes, sino una disciplina en la cual cada componente contribuye con una metodología distintiva para manejar problemas en su dominio de aplicación que, de otra forma, se tornarían irresolubles. De una forma complementaria y sinérgica -en lugar de competitiva-, conduce a lo que se denomina "sistemas inteligentes híbridos", siendo los más visibles los neuro-difusos, aunque también se están empezando a ver los difuso-genéticos, los neuro-genéticos y los neuro-difusos-genéticos.
Cyborgs
Dentro de algunos años, podría haber sofisticados sistemas computacionales implantados dentro mismo del sistema nervioso humano y enlazados con las partes sensitivas del cerebro. De este modo, y a través de las ondas cerebrales, el hombre podrá interactuar directamente con su "anexo cibernético" a través de sus procesos de pensamiento, mejorando su rendimiento, expandiendo sus habilidades innatas o creando otras nuevas. Incluso el cerebro humano tendría integradas las funciones de algunos dispositivos actuales como el celular, el pager, el e-mail o la agenda.
Por ejemplo, cualquiera podría tener en su memoria y a su disposición súbita y virtualmente la totalidad de los conocimientos de la humanidad, con el agregado de que estarán permanentemente actualizados. Sin embargo, estarían en la memoria de la microcomputadora, no en la memoria del ser humano. Este podría tener acceso a ella, ya que estarán completamente integrados, pero no lo podría entender hasta que no lo haya "concientizado", comprendiendo el significado de cada frase. En ese caso, sería posible conectarse con la computadora a voluntad y usarla para extraer recuerdos específicos. Incluso, la nueva capa encefálica artificial podría hacer surgir "en vivo" los recuerdos guardados en la mente humana con la misma intensidad con que fueron realidad en un remoto pasado. Con las "películas omnisensoriales on-line", por ejemplo, uno podría llegar a convertirse en un "copiloto" que experimenta la realidad de otra persona en el mismo momento en que ésta lo está viviendo.
El gran salto en la Informática y las Telecomunicaciones se dará con el uso de los Componentes de la Luz
Es ciertamente muy difícil hablar sobre el futuro: una y otra vez hemos visto cómo la extraordinaria inventiva humana deja atrás cualquier predicción y cómo, a su vez, la naturaleza nos da muestras de ser mucho más rica y sutil de lo que puede ser imaginado. Sin embargo, avances recientes en las aplicaciones físicas asociados a las tecnologías de la información basados en las propiedades de los componentes de la luz (fotones), y de la materia (electrones), así como en la aplicación de las leyes de la naturaleza a este nivel (los principios de la mecánica cuántica), nos permiten prever para las próximas décadas un avance importante en los límites de la computación y las comunicaciones. Se abrirán así grandes posibilidades para la humanidad en el siglo XXI. Aún si la industria de los semiconductores ha seguido la "ley de Moore", según la cual el poder de los procesadores se duplica cada 18 meses, lo cierto es que la tecnología actual tiene un límite físico impuesto por la miniaturización de los componentes y, por consiguiente, por las dimensiones del procesador y por el número de transistores, puesto que las señales eléctricas no pueden sobrepasar la velocidad de la luz.
Un grupo de investigadores del Laboratorio Nacional de Sandia en Albuquerque, Nuevo México, puso en operación por primera vez un cristal fotónico en tres dimensiones, que es el equivalente para la luz (fotones) de lo que los semiconductores y transistores usuales son para los electrones. La luz es desviada en los diversos materiales que constituyen el cristal fotónico, que actúa como un switch de luz que servirá de base para los futuros transistores ópticos. A diferencia de los procesadores actuales que operan a velocidades en el rango de los millones de oscilaciones por segundo, los transistores ópticos tendrán capacidad de operar un millón de veces más rápido, lo que equivale a un millón de millones de ciclos por segundo.
Se llevó a cabo en la Universidad de Harvard un experimento nunca antes realizado, en el que la velocidad de la luz es reducida a 17 metros por segundo de su velocidad en el vacío de 300.000 kilómetros por segundo. Para lograr este efecto, se creó un medio de materia condensada llamado "transparencia inducida por electromagnetismo" utilizando un sistema de láser, que permitió reducir la velocidad de la luz por un factor de 20 millones sin ser absorbida. Se espera alcanzar próximamente velocidades tan bajas como centímetros por segundo en la propagación de la luz para aplicaciones prácticas de conversión óptico-electrónica y conversión de la luz de una frecuencia a otra, aspectos necesarios para implementar la tecnología óptica en los computadores y sistemas de comunicaciones en el futuro.
Una propiedad básica de los electrones es su spin u orientación de su rotación intrínseca, que actúa como un minúsculo magneto. Esta propiedad es la base de otra nueva tecnología, la spintrónica, donde el uso de las corrientes de spin de los electrones en un circuito de información se usa en lugar de las corrientes de carga eléctrica en la electrónica. Como fue demostrado recientemente en la Universidad de California, en Santa Bárbara, esta tecnología puede ser viable para transportar información en los computadores cuánticos.
El Futuro de las Telecomunicaciones
Siguiendo el ritmo de desarrollo actual, veremos en la primera década del siglo XXI crecer el número de usuarios de Internet de unos 100 millones en la actualidad a unos 1.000 millones. El modelo de Internet posiblemente se impondrá en todos los aspectos de las telecomunicaciones, e incluso sustituirá la telefonía actual. Los protocolos de comunicación de Internet son simples y poderosos y pueden adaptarse a todo tipo de aplicaciones y a un gran crecimiento.
Un ejemplo de las aplicaciones tecnológicas del siglo XXI es el Proyecto Abilene, parte del Proyecto Internet 2, que interconecta a las universidades y centros de investigación más importantes en Estados Unidos. En Europa, el proyecto equivalente se conoce como TEN-155 y une a las universidades en16 países en el viejo continente. Abilene, es un proyecto conjunto de la Corporación Universitaria de Desarrollo Avanzado de Internet, y de las empresas Qwest, Cisco y Nortel. La velocidad usada en las aplicaciones de Abilene es 100.000 veces mayor que una conexión usual por módem. Aplicaciones como telecirugía y acceso remoto a telescopios, laboratorios e instrumentos avanzados de investigación y enseñanza serán cotidianas.
El Futuro del Software
Los avances en los límites de la computación no podrían ser aprovechados sin un avance paralelo en el desarrollo de las aplicaciones y la accesibilidad de las tecnologías. Con el rol central y cada vez más importante de Internet, es posible que el software en el futuro sea cada vez más utilizado, distribuido y creado en la misma red de Internet en una forma abierta y disponible para todos.
Desde sus comienzos el Hombre ha buscado (y casi siempre con éxito) la manera de superar los obstáculos impuestos por sus propias limitaciones, desde la invención de la escritura como una forma de romper la barrera que le impedía interactuar con sus pares, pasando por etapas en las que su ingenio lo llevara a construir máquinas que simplificaran y resolvieran las tareas administrativas, estadísticas y contables, disminuyendo los esfuerzos del trabajo humano y acelerando el tiempo de cada proceso.
Las computadoras son el reflejo de la inteligencia humana, representan la materialización de todos aquellos aspectos del pensamiento que son automáticos, mecánicos y determinísticos. Ellas potencian enormemente las capacidades intelectuales del hombre.
Obviamente, las computadoras han invadido ya todos y cada uno de los campos de la actividad humana: ciencia, tecnología, arte, educación, recreación, administración, comunicación, defensa y de acuerdo a la tendencia actual, nuestra civilización y las venideras dependerán cada vez más de éstas.
Se están desarrollando nuevas investigaciones en las que un programa informático de Inteligencia Artificial al equivocarse puede aprender de sus errores y utilizar fórmulas alternativas para no volver a cometerlos.
Está claro que estamos transitando una nueva era en la que se avanza a pasos agigantados, sin mirar a veces el terreno por el que caminamos.
Así como Julio Verne nunca imaginó al escribir "20.000 Leguas de viaje Submarino" que el Nautilus un siglo después sería una realidad, (convirtiéndolo en un visionario), deberíamos replantearnos, a la velocidad que avanzan la ciencia y la tecnología, si lo que hoy vemos como ciencia ficción (como por ejemplo Matrix) no será algún día realidad, y en lugar de estar las maquinas al servicio del hombre, este pase a ser esclavo de ellas.
Por eso creo firmemente que "Aún nos queda mucho por Aprender", y espero que sepamos utilizar toda esa tecnología en pos de un futuro mejor para toda la humanidad.
"Electrónica." Enciclopedia Microsoft Encarta 2001. 1993-2000 Microsoft Corporation. http://www.iacvt.com.ar/generaciones.htm http://www.formarse.com.ar/informatica/generaciones.htm
http://itesocci.gdl.iteso.mx/~ia27563/basico.htm
http://www.infosistemas.com.mx/soto10.htm
http://www.fciencias.unam.mx/revista/temas/contenido.html
https://www.edu.red
Enciclopedia Microsoft Encarta 98
"Introducción a las Computadoras y al Procesamiento de la Información"; Cuarta Edición Joyanes A. Luis; Metodología de la Programación"; McGrawHill
Trabajo realizado por:
Héctor Venti
Estudiante de Ing. Informática, Universidad Abierta Interamericana; (UAI) Buenos Aires, Argentina.
Página anterior | Volver al principio del trabajo | Página siguiente |