primera unidad de educación para el trabajo - primero

69
Introducción a Los Sistemas Computacionales ORDENADOR O COMPUTADORAS Dispositivo electrónico capaz de recibir un conjunto de instrucciones y ejecutarlas realizando cálculos sobre los datos numéricos, o bien compilando y correlacionando otros tipos de información. El mundo de la alta tecnología nunca hubiera existido de no ser por el desarrollo del ordenador o computadora. Toda la sociedad utiliza estas máquinas, en distintos tipos y tamaños, para el almacenamiento y manipulación de datos. Los equipos informáticos han abierto una nueva era en la fabricación gracias a las técnicas de automatización, y han permitido mejorar los sistemas modernos de comunicación. Son herramientas esenciales prácticamente en todos los campos de investigación y en tecnología aplicada. Tipos de ordenadores o computadoras En la actualidad se utilizan dos tipos principales de ordenadores: analógicos y digitales. Sin embargo, el término ordenador o computadora suele utilizarse para referirse exclusivamente al tipo digital. Los ordenadores analógicos aprovechan la similitud matemática entre las interrelaciones físicas de determinados problemas y emplean circuitos electrónicos o hidráulicos para simular el problema físico. Los ordenadores digitales resuelven los problemas realizando cálculos y tratando cada número dígito por dígito. Las instalaciones que contienen elementos de ordenadores digitales y analógicos se denominan ordenadores híbridos. En un ordenador digital también pueden introducirse datos en forma analógica mediante un convertidor analógico digital, y viceversa (convertidor digital a analógico).

Upload: luis060754

Post on 30-Jul-2015

57 views

Category:

Education


2 download

TRANSCRIPT

Introducción a Los Sistemas Computacionales

ORDENADOR O COMPUTADORAS

Dispositivo electrónico capaz de recibir un conjunto de instrucciones y

ejecutarlas realizando cálculos sobre los datos numéricos, o bien compilando y

correlacionando otros tipos de información.

El mundo de la alta tecnología nunca hubiera existido de no ser por el desarrollo

del ordenador o computadora. Toda la sociedad utiliza estas máquinas, en

distintos tipos y tamaños, para el almacenamiento y manipulación de datos. Los

equipos informáticos han abierto una nueva era en la fabricación gracias a las

técnicas de automatización, y han permitido mejorar los sistemas modernos de

comunicación. Son herramientas esenciales prácticamente en todos los campos

de investigación y en tecnología aplicada.

Tipos de ordenadores o computadoras

En la actualidad se utilizan dos tipos principales de ordenadores: analógicos y

digitales.

Sin embargo, el término ordenador o computadora suele utilizarse para referirse

exclusivamente al tipo digital. Los ordenadores analógicos aprovechan la

similitud matemática entre las interrelaciones físicas de determinados problemas

y emplean circuitos electrónicos o hidráulicos para simular el problema físico.

Los ordenadores digitales resuelven los problemas realizando cálculos y

tratando cada número dígito por dígito.

Las instalaciones que contienen elementos de ordenadores digitales y

analógicos se denominan ordenadores híbridos. En un ordenador digital también

pueden introducirse datos en forma analógica mediante un convertidor analógico

digital, y viceversa (convertidor digital a analógico).

Ordenadores analógicos

El ordenador analógico es un dispositivo electrónico o hidráulico diseñado para

manipular la entrada de datos en términos de, por ejemplo, niveles de tensión o

presiones hidráulicas, en lugar de hacerlo como datos numéricos.

El dispositivo de cálculo analógico más sencillo es la regla de cálculo, que utiliza

longitudes de escalas especialmente calibradas para facilitar la multiplicación, la

división y otras funciones. En el típico ordenador analógico electrónico, las

entradas se convierten en tensiones que pueden sumarse o multiplicarse

empleando elementos de circuito de diseño especial. Las respuestas se generan

continuamente para su visualización o para su conversión en otra forma

deseada.

Ordenadores digitales

Todo lo que hace un ordenador digital se basa en una operación: la capacidad

de determinar si un conmutador, o `puerta’, está abierto o cerrado. Es decir, el

ordenador puede reconocer sólo dos estados en cualquiera de sus circuitos

microscópicos: abierto o cerrado, alta o baja tensión o, en el caso de números, 0

o 1. Sin embargo, es la velocidad con la cual el ordenador realiza este acto tan

sencillo lo que lo convierte en una maravilla de la tecnología moderna. Las

velocidades del ordenador se miden en megahercios, o millones de ciclos por

segundo.

Un ordenador con una velocidad de reloj de 100 MHZ, velocidad bastante

representativa de un microordenador o microcomputadora, es capaz de ejecutar

100 millones de operaciones discretas por segundo. Las microcomputadoras de

las compañías pueden ejecutar entre 150 y 200 millones de operaciones por

segundo, mientras que las supercomputadoras utilizadas en aplicaciones de

investigación y de defensa alcanzan velocidades de miles de millones de ciclos

por segundo.

La velocidad y la potencia de cálculo de los ordenadores digitales se

incrementan aún más por la cantidad de datos manipulados durante cada ciclo.

Si un ordenador verifica sólo un conmutador cada vez, dicho conmutador puede

representar solamente dos comandos o números. Así, ON simbolizaría una

operación o un número, mientras que OFF simbolizará otra u otro.

Sin embargo, al verificar grupos de conmutadores enlazados como una sola

unidad, el ordenador aumenta el número de operaciones que puede reconocer

en cada ciclo.

Por ejemplo, un ordenador que verifica dos conmutadores cada vez, puede

representar cuatro números (del 0 al 3), o bien ejecutar en cada ciclo una de las

cuatro operaciones, una para cada uno de los siguientes modelos de

conmutador: OFF-OFF (0), OFF-ON (1), ON-OFF (2) u ON-ON (3). En general,

los ordenadores de la década de 1970 eran capaces de verificar 8 conmutadores

simultáneamente; es decir, podían verificar ocho dígitos binarios, de ahí el

término bit de datos en cada ciclo. Un grupo de ocho bits se denomina byte y

cada uno contiene 256 configuraciones posibles de ON y OFF (o 1 y 0). Cada

configuración equivale a una instrucción, a una parte de una instrucción o a un

determinado tipo de dato; estos últimos pueden ser un número, un carácter o un

símbolo gráfico. Por ejemplo, la configuración 11010010 puede representar

datos binarios, en este caso el número decimal 210 (véase Sistemas

numéricos), o bien estar indicando al ordenador que compare los datos

almacenados en estos conmutadores con los datos almacenados en

determinada ubicación del chip de memoria. El desarrollo de procesadores

capaces de manejar simultáneamente 16, 32 y 64 bits de datos ha permitido

incrementar la velocidad de los ordenadores.

La colección completa de configuraciones reconocibles, es decir, la lista total de

operaciones que una computadora es capaz de procesar, se denomina conjunto,

o repertorio, de instrucciones. Ambos factores, el número de bits simultáneos y

el tamaño de los conjuntos de instrucciones, continúa incrementándose a

medida que avanza el desarrollo de los ordenadores digitales modernos.

Historia

La primera máquina de calcular mecánica, un precursor del ordenador digital,

fue inventada en 1642 por el matemático francés Blaise Pascal. Aquel

dispositivo utilizaba una serie de ruedas de diez dientes en las que cada uno de

los dientes representaba un dígito del 0 al 9.

Las ruedas estaban conectadas de tal manera que podían sumarse números

haciéndolas avanzar el número de dientes correcto. En 1670 el filósofo y

matemático alemán Gottfried Wilhelm Leibniz perfeccionó esta máquina e

inventó una que también podía multiplicar.

El inventor francés Joseph Marie Jacquard, al diseñar un telar automático, utilizó

delgadas placas de madera perforadas para controlar el tejido utilizado en los

diseños complejos. Durante la década de 1880 el estadístico estadounidense

Herman Hollerith concibió la idea de utilizar tarjetas perforadas, similares a las

placas de Jacquard, para procesar datos. Hollerith consiguió compilar la

información estadística destinada al censo de población de 1890 de Estados

Unidos mediante la utilización de un sistema que hacía pasar tarjetas perforadas

sobre contactos eléctricos.

La máquina analítica

También en el siglo XIX el matemático e inventor británico Charles Babbage

elaboró los principios de la computadora digital moderna. Inventó una serie de

máquinas, como la máquina diferencial, diseñadas para solucionar problemas

matemáticos complejos. Muchos historiadores consideran a Babbage como el

verdadero inventor de la computadora.

La tecnología de aquella época no era capaz de trasladar a la práctica sus

acertados conceptos; pero una de sus invenciones, la máquina analítica, ya

tenía muchas de las características de un ordenador moderno. Incluía una

corriente, o flujo de entrada en forma de paquete de tarjetas perforadas, una

memoria para guardar los datos, un procesador para las operaciones

matemáticas y una impresora para hacer permanente el registro.

Primeros ordenadores

Los ordenadores analógicos comenzaron a construirse a principios del siglo XX.

Los primeros modelos realizaban los cálculos mediante ejes y engranajes

giratorios.

Durante las dos guerras mundiales se utilizaron sistemas informáticos

analógicos, primero mecánicos y más tarde eléctricos, para predecir la

trayectoria de los torpedos en los submarinos y para el manejo a distancia de las

bombas en la aviación.

Circuitos integrados

A finales de la década de 1960 apareció el circuito integrado (CI), que posibilitó

la fabricación de varios transistores en un único sustrato de silicio en el que los

cables de interconexión iban soldados. El circuito integrado permitió una

posterior reducción del precio, el tamaño y los porcentajes de error. El

microprocesador se convirtió en una realidad a mediados de la década de 1970,

con la introducción del circuito de integración a gran escala (LSI, acrónimo de

Large Scale Integrated) y, más tarde, con el circuito de integración a mayor

escala (VLSI, acrónimo de Very Large Scale Integrated), con varios miles de

transistores interconectados soldados sobre un único sustrato de silicio.

Hardware

Todos los ordenadores digitales modernos son similares conceptualmente con

independencia de su tamaño.

Sin embargo, pueden dividirse en varias categorías según su precio y

rendimiento: el ordenador o computadora personal es una máquina de coste

relativamente bajo y por lo general de tamaño adecuado para un escritorio

(algunos de ellos, denominados portátiles, o laptops, son lo bastante pequeños

como para caber en un maletín); la estación de trabajo, un microordenador con

gráficos mejorados y capacidades de comunicaciones que lo hacen

especialmente útil para el trabajo de oficina; el mini-ordenador o mini-

computadora, un ordenador de mayor tamaño que por lo general es demasiado

caro para el uso personal y que es apto para compañías, universidades o

laboratorios; y el mainframe, una gran máquina de alto precio capaz de servir a

las necesidades de grandes empresas, departamentos gubernamentales,

instituciones de investigación científica y similares (las máquinas más grandes y

más rápidas dentro de esta categoría se denominan superordenadores).

En realidad, un ordenador digital no es una única máquina, en el sentido en el

que la mayoría de la gente considera a los ordenadores.

Es un sistema compuesto de cinco elementos diferenciados: una CPU (unidad

central de proceso); dispositivos de entrada; dispositivos de almacenamiento de

memoria; dispositivos de salida y una red de comunicaciones, denominada bus,

que enlaza todos los elementos del sistema y conecta a éste con el mundo

exterior.

CPU

(unidad central de proceso)

La CPU puede ser un único chip o una serie de chips que realizan cálculos

aritméticos y lógicos y que temporizan y controlan las operaciones de los demás

elementos del sistema. Las técnicas de miniaturización y de integración han

posibilitado el desarrollo de un chip de CPU denominado microprocesador, que

incorpora un sistema de circuitos y memoria adicionales. El resultado son unos

ordenadores más pequeños y la reducción del sistema de circuitos de soporte.

Los microprocesadores se utilizan en la mayoría de los ordenadores personales

de la actualidad.

La mayoría de los chips de CPU y de los microprocesadores están compuestos

de cuatro secciones funcionales: una unidad aritmética-lógica; unos registros;

una sección de control y un bus interno. La unidad aritmética-lógica es aquella

que permite realizar operaciones lógicas y aritméticas. Los registros son áreas

de almacenamiento temporal que contienen datos, realizan un seguimiento de

las instrucciones y conservan la ubicación y los resultados de dichas

operaciones. La sección de control tiene tres tareas principales: temporiza y

regula las operaciones de la totalidad del sistema informático; su descodificador

de instrucciones lee las configuraciones de datos en un registro designado y las

convierte en una actividad, como podría ser sumar o comparar, y su unidad

interruptora indica en qué orden utilizará la CPU las operaciones individuales y

regula la cantidad de tiempo de CPU que podrá consumir cada operación.

El último segmento de un chip de CPU o microprocesador es su bus interno, una

red de líneas de comunicación que conecta los elementos internos del

procesador y que también lleva hacia los conectores externos que enlazan al

procesador con los demás elementos del sistema informático.

Los tres tipos de bus de la CPU son: el bus de control que consiste en una línea

que detecta las señales de entrada y de otra línea que genera señales de control

desde el interior de la CPU; el bus de dirección, una línea unidireccional que sale

desde el procesador y que gestiona la ubicación de los datos en las direcciones

de la memoria; y el bus de datos, una línea de transmisión bidireccional que lee

los datos de la memoria y escribe nuevos datos en ésta.

Dispositivos de entrada

Estos dispositivos permiten al usuario del ordenador introducir datos, comandos

y programas en la CPU.

El dispositivo de entrada más común es un teclado similar al de las máquinas de

escribir.

La información introducida con el mismo, es transformada por el ordenador en

modelos reconocibles.

Otros dispositivos de entrada son los lápices ópticos, que transmiten información

gráfica desde tabletas electrónicas hasta el ordenador; joysticks y el ratón o

mouse, que convierte el movimiento físico en movimiento dentro de una pantalla

de ordenador; los escáneres luminosos, que leen palabras o símbolos de una

página impresa y los traducen a configuraciones electrónicas que el ordenador

puede manipular y almacenar; y los módulos de reconocimiento de voz, que

convierten la palabra hablada en señales digitales comprensibles para el

ordenador. También es posible utilizar los dispositivos de almacenamiento para

introducir datos en la unidad de proceso.

Dispositivos de almacenamiento

Los sistemas informáticos pueden almacenar los datos tanto interna (en la

memoria) como externamente (en los dispositivos de almacenamiento).

Internamente, las instrucciones o datos pueden almacenarse por un tiempo en

los chips de silicio de la RAM (memoria de acceso aleatorio) montados

directamente en la placa de circuitos principal de la computadora, o bien en

chips montados en tarjetas periféricas conectadas a la placa de circuitos

principal del ordenador. Estos chips de RAM constan de conmutadores sensibles

a los cambios de la corriente eléctrica.

Los chips de RAM estática conservan sus bits de datos mientras la corriente siga

fluyendo a través del circuito, mientras que los chips de RAM dinámica (DRAM,

acrónimo de Dynamic Random Access Memory) necesitan la aplicación de

tensiones altas o bajas a intervalos regulares aproximadamente cada dos

milisegundos para no perder su información.

Otro tipo de memoria interna son los chips de silicio en los que ya están

instalados todos los conmutadores. Las configuraciones en este tipo de chips de

ROM (memoria de sólo lectura) forman los comandos, los datos o los programas

que el ordenador necesita para funcionar correctamente. Los chips de RAM son

como pedazos de papel en los que se puede escribir, borrar y volver a utilizar;

los chips de ROM son como un libro, con las palabras ya escritas en cada

página. Tanto los primeros como los segundos están enlazados a la CPU a

través de circuitos.

Los dispositivos de almacenamiento externos, que pueden residir físicamente

dentro de la unidad de proceso principal del ordenador, están fuera de la placa

de circuitos principal. Estos dispositivos almacenan los datos en forma de cargas

sobre un medio magnéticamente sensible, por ejemplo una cinta de sonido o, lo

que es más común, sobre un disco revestido de una fina capa de partículas

metálicas. Los dispositivos de almacenamiento externo más frecuentes son los

disquetes y los discos duros, aunque la mayoría de los grandes sistemas

informáticos utiliza bancos de unidades de almacenamiento en cinta magnética.

Los discos flexibles pueden contener, según sea el sistema, desde varios

centenares de miles de bytes hasta bastante más de un millón de bytes de

datos. Los discos duros no pueden extraerse de los receptáculos de la unidad de

disco, que contienen los dispositivos electrónicos para leer y escribir datos sobre

la superficie magnética de los discos y pueden almacenar desde varios millones

de bytes hasta algunos centenares de millones. La tecnología de CD-ROM, que

emplea las mismas técnicas láser utilizadas para crear los discos compactos

(CD) de audio, permiten capacidades de almacenamiento del orden de varios

cientos de megabytes (millones de bytes) de datos.

Dispositivos de salida

Estos dispositivos permiten al usuario ver los resultados de los cálculos o de las

manipulaciones de datos de la computadora.

El dispositivo de salida más común es la unidad de visualización (VDU, acrónimo

de Video Display Unit), que consiste en un monitor que presenta los caracteres y

gráficos en una pantalla similar a la del televisor. Por lo general, las VDU tienen

un tubo de rayos catódicos como el de cualquier televisor, aunque los

ordenadores pequeños y portátiles utilizan hoy pantallas de cristal líquido (LCD,

acrónimo de Liquid Crystal Displays) o electro luminiscentes. Otros dispositivos

de salida más comunes son las impresoras y los módem.

Un módem enlaza dos ordenadores transformando las señales digitales en

analógicas para que los datos puedan transmitirse a través de las

telecomunicaciones.

Sistemas operativos

Los sistemas operativos internos fueron desarrollados sobre todo para coordinar

y trasladar estos flujos de datos que procedían de fuentes distintas, como las

unidades de disco o los coprocesadores (chips de procesamiento que ejecutan

operaciones simultáneamente con la unidad central, aunque son diferentes). Un

sistema operativo es un programa de control principal, almacenado de forma

permanente en la memoria, que interpreta los comandos del usuario que solicita

diversos tipos de servicios, como visualización, impresión o copia de un archivo

de datos; presenta una lista de todos los archivos existentes en un directorio o

ejecuta un determinado programa.

Programación

Un programa es una secuencia de instrucciones que indican al hardware de un

ordenador qué operaciones debe realizar con los datos. Los programas pueden

estar incorporados al propio hardware, o bien pueden existir de manera

independiente en forma de software.

En algunas computadoras especializadas las instrucciones operativas están

incorporadas en el sistema de circuitos; entre los ejemplos más comunes

pueden citarse los microordenadores de las calculadoras, relojes de pulsera,

motores de coches y hornos microondas. Por otro lado, un ordenador universal,

o de uso general, contiene algunos programas incorporados (en la ROM) o

instrucciones (en el chip del procesador), pero depende de programas externos

para ejecutar tareas útiles. Una vez programado, podrá hacer tanto o tan poco

como le permita el software que lo controla en determinado momento. El

software de uso más generalizado incluye una amplia variedad de programas de

aplicaciones, es decir, instrucciones al ordenador acerca de cómo realizar

diversas tareas.

Lenguajes

Las instrucciones deben darse en un lenguaje de programación, es decir, en una

determinada configuración de información digital binaria. En las primeras

computadoras, la programación era una tarea difícil y laboriosa ya que los

conmutadores ON-OFF de las válvulas de vacío debían configurarse a mano.

Programar tareas tan sencillas como ordenar una lista de nombres requería

varios días de trabajo de equipos de programadores. Desde entonces se han

inventado varios lenguajes informáticos, algunos orientados hacia funciones

específicas y otros centrados en la facilidad de uso.

Lenguaje máquina

El lenguaje propio del ordenador, basado en el sistema binario, o código

máquina, resulta difícil de utilizar para las personas.

El programador debe introducir todos y cada uno de los comandos y datos en

forma binaria, y una operación sencilla como comparar el contenido de un

registro con los datos situados en una ubicación del chip de memoria puede

tener el siguiente formato: 11001010 00010111 11110101 00101011. La

programación en lenguaje máquina es una tarea tan tediosa y consume tanto

tiempo que muy raras veces lo que se ahorra en la ejecución del programa

justifica los días o semanas que se han necesitado para escribir el mismo.

Lenguaje ensamblador

Uno de los métodos inventados por los programadores para reducir y simplificar

el proceso es la denominada programación con lenguaje ensamblador. Al

asignar un código mnemotécnico (por lo general de tres letras) a cada comando

en lenguaje máquina, es posible escribir y depurar o eliminar los errores lógicos

y de datos en los programas escritos en lenguaje ensamblador, empleando para

ello sólo una fracción del tiempo necesario para programar en lenguaje máquina.

En el lenguaje ensamblador, cada comando mnemotécnico y sus operadores

simbólicos equivalen a una instrucción de máquina.

Un programa ensamblador traduce el código fuente, una lista de códigos de

operación mnemotécnicos y de operadores simbólicos, a código objeto (es decir,

a lenguaje máquina) y, a continuación, ejecuta el programa.

Sin embargo, el lenguaje ensamblador puede utilizarse con un solo tipo de chip

de CPU o microprocesador.

Los programadores, que dedicaron tanto tiempo y esfuerzo al aprendizaje de la

programación de un ordenador, se veían obligados a aprender un nuevo estilo

de programación cada vez que trabajaban con otra máquina. Lo que se

necesitaba era un método abreviado en el que un enunciado simbólico pudiera

representar una secuencia de numerosas instrucciones en lenguaje máquina, y

un método que permitiera que el mismo programa pudiera ejecutarse en varios

tipos de máquinas. Estas necesidades llevaron al desarrollo de lenguajes de alto

nivel.

Lenguajes de alto nivel

Los lenguajes de alto nivel suelen utilizar términos ingleses del tipo LIST, PRINT

u OPEN como comandos que representan una secuencia de decenas o de

centenas de instrucciones en lenguaje máquina. Los comandos se introducen

desde el teclado, desde un programa residente en la memoria o desde un

dispositivo de almacenamiento, y son interceptados por un programa que los

traduce a instrucciones en lenguaje máquina.

Los programas traductores son de dos tipos: intérpretes y compiladores. Con un

intérprete, los programas que repiten un ciclo para volver a ejecutar parte de sus

instrucciones, reinterpretan la misma instrucción cada vez que aparece. Por

consiguiente, los programas interpretados se ejecutan con mucha mayor lentitud

que los programas en lenguaje máquina. Por el contrario, los compiladores

traducen un programa íntegro a lenguaje máquina antes de su ejecución, por lo

cual se ejecutan con tanta rapidez como si hubiesen sido escritos directamente

en lenguaje máquina.

Se considera que fue la estadounidense Grace Hopper quien implementó el

primer lenguaje de ordenador orientado al uso comercial. Después de programar

un ordenador experimental en la Universidad de Harvard, trabajó en los modelos

UNIVAC I y UNIVAC II, desarrollando un lenguaje de alto nivel para uso

comercial llamado FLOW-MATIC.

Para facilitar el uso del ordenador en las aplicaciones científicas, IBM desarrolló

un lenguaje que simplificaría el trabajo que implicaba el tratamiento de fórmulas

matemáticas complejas.

Iniciado en 1954 y terminado en 1957, el FORTRAN (acrónimo de Formula

Translator) fue el primer lenguaje exhaustivo de alto nivel de uso generalizado.

En 1957 una asociación estadounidense, la Association for Computing

Machinery comenzó a desarrollar un lenguaje universal que corrigiera algunos

de los defectos del FORTRAN. Un año más tarde fue lanzado el ALGOL

(acrónimo de Algorithmic Language), otro lenguaje de orientación científica. De

gran difusión en Europa durante las décadas de 1960 y 1970, desde entonces

ha sido sustituido por nuevos lenguajes, mientras que el FORTRAN continúa

siendo utilizado debido a las gigantescas inversiones que se hicieron en los

programas existentes. El COBOL (acrónimo de Common Business Oriented

Language) es un lenguaje de programación para uso comercial y empresarial

especializado en la organización de datos y manipulación de archivos, y hoy día

está muy difundido en el mundo empresarial.

El lenguaje BASIC (acrónimo de Código de Instrucciones Simbólicas de Uso

General para Principiantes) fue desarrollado en el Dartmouth College a

principios de la década de 1960 y está dirigido a los usuarios de ordenador no

profesionales. Este lenguaje se universalizó gracias a la popularización de los

microordenadores en las décadas de 1970 y 1980. Calificado de lento, ineficaz y

poco estético por sus detractores, BASIC es sencillo de aprender y fácil de

utilizar.

Como muchos de los primeros microordenadores se vendieron con BASIC

incorporado en el hardware (en la memoria ROM), se generalizó el uso de este

lenguaje.

Aunque existen centenares de lenguajes informáticos y de variantes, hay

algunos dignos de mención, como el PASCAL, diseñado en un principio como

herramienta de enseñanza, hoy es uno de los lenguajes de microordenador más

populares; el Logo fue desarrollado para que los niños pudieran acceder al

mundo de la informática; el C, un lenguaje de Bell Laboratories diseñado en la

década de 1970, se utiliza ampliamente en el desarrollo de programas de

sistemas, al igual que su sucesor, el C++. El LISP y el PROLOG han alcanzado

amplia difusión en el campo de la inteligencia artificial.

Evolución futura

Una tendencia constante en el desarrollo de los ordenadores es la micro

miniaturización, iniciativa que tiende a comprimir más elementos de circuitos en

un espacio de chip cada vez más pequeño. Además, los investigadores intentan

agilizar el funcionamiento de los circuitos mediante el uso de la

superconductividad, un fenómeno de disminución de la resistencia eléctrica que

se observa cuando se enfrían los objetos a temperaturas muy bajas.

Las redes informáticas se han vuelto cada vez más importantes en el desarrollo

de la tecnología de computadoras. Las redes son grupos de computadoras

interconectados mediante sistemas de comunicación. La red pública Internet es

un ejemplo de red informática planetaria. Las redes permiten que las

computadoras conectadas intercambien rápidamente información y, en algunos

casos, compartan una carga de trabajo, con lo que muchas computadoras

pueden cooperar en la realización de una tarea. Se están desarrollando nuevas

tecnologías de equipo físico y soporte lógico que acelerarán los dos procesos

mencionados.

Otra tendencia en el desarrollo de computadoras es el esfuerzo para crear

computadoras de quinta generación, capaces de resolver problemas complejos

en formas que pudieran llegar a considerarse creativas. Una vía que se está

explorando activamente es el ordenador de proceso paralelo, que emplea

muchos chips para realizar varias tareas diferentes al mismo tiempo. El proceso

paralelo podría llegar a reproducir hasta cierto punto las complejas funciones de

realimentación, aproximación y evaluación que caracterizan al pensamiento

humano. Otra forma de proceso paralelo que se está investigando es el uso de

computadoras moleculares. En estas computadoras, los símbolos lógicos se

expresan por unidades químicas de ADN en vez de por el flujo de electrones

habitual en las computadoras corrientes. Las computadoras moleculares podrían

llegar a resolver problemas complicados mucho más rápidamente que las

actuales supercomputadoras y consumir mucha menos energía.

1.1Antecedentes Históricos y Tendencias

Antecedentes historicos de la computadora

La primera máquina de calcular mecánica, un precursor del ordenador digital,

fue inventada en 1642 por el matemático francés Blaise Pascal. Aquel

dispositivo utilizaba una serie de ruedas de diez dientes en las que cada uno de

los dientes representaba un dígito del 0 al 9. Las ruedas estaban conectadas de

tal manera que podían sumarse números haciéndolas avanzar el número de

dientes correcto. En 1670 el filósofo y matemático alemán Gottfried Wilhelm

Leibniz perfeccionó esta máquina e inventó una que también podía multiplicar.

El inventor francés Joseph Marie Jacquard, al diseñar un telar automático, utilizó

delgadas placas de madera perforadas para controlar el tejido utilizado en los

diseños complejos. Durante la década de 1880 el estadístico estadounidense

Herman Hollerith concibió la idea de utilizar tarjetas perforadas, similares a las

placas de Jacquard, para procesar datos. Hollerith consiguió compilar la

información estadística destinada al censo de población de 1890 de Estados

Unidos mediante la utilización de un sistema que hacía pasar tarjetas perforadas

sobre contactos eléctricos.

El mundo de la alta tecnología nunca hubiera existido de no ser por el desarrollo

del ordenador o computadora. Toda la sociedad utiliza estas máquinas, en

distintos tipos y tamaños, para el almacenamiento y manipulación de datos. Los

equipos informáticos han abierto una nueva era en la fabricación gracias a las

técnicas de automatización, y han permitido mejorar los sistemas modernos de

comunicación. Son herramientas esenciales prácticamente en todos los campos

de investigación y en tecnología aplicada.

2. La máquina analítica

También en el siglo XIX el matemático e inventor británico Charles Babbage

elaboró los principios de la computadora digital moderna. Inventó una serie de

máquinas, como la máquina diferencial, diseñadas para solucionar problemas

matemáticos complejos.

Muchos historiadores consideran a Babbage y a su socia, la matemática

británica Augusta Ada Byron (1815–1852), hija del poeta inglés Lord Byron,

como a los verdaderos inventores de la computadora digital moderna.

La tecnología de aquella época no era capaz de trasladar a la práctica sus

acertados conceptos; pero una de sus invenciones, la máquina analítica, ya

tenía muchas de las características de un ordenador moderno.

Incluía una corriente, o flujo de entrada en forma de paquete de tarjetas

perforadas, una memoria para guardar los datos, un procesador para las

operaciones matemáticas y una impresora para hacer permanente el registro.

Considerada por muchos como predecesora directa de los modernos

dispositivos de cálculo, la máquina diferencial era capaz de calcular tablas

matemáticas. Este corte transversal muestra una pequeña parte de la ingeniosa

máquina diseñada por el matemático británico Charles Babbage en la década de

1820. La máquina analítica, ideada también por Babbage, habría sido una

auténtica computadora programable si hubiera contado con la financiación

adecuada. Las circunstancias quisieron que ninguna de las máquinas pudieran

construirse durante su vida, aunque esta posibilidad estaba dentro de la

capacidad tecnológica de la época. En 1991, un equipo del Museo de las

Ciencias de Londres consiguió construir una máquina diferencial Nº 2 totalmente

operativa, siguiendo los dibujos y especificaciones de Babbage.

3. Los primeros ordenadores

Los ordenadores analógicos comenzaron a construirse a principios del siglo XX.

Los primeros modelos realizaban los cálculos mediante ejes y engranajes

giratorios. Con estas máquinas se evaluaban las aproximaciones numéricas de

ecuaciones demasiado difíciles como para poder ser resueltas mediante otros

métodos. Durante las dos guerras mundiales se utilizaron sistemas informáticos

analógicos, primero mecánicos y más tarde eléctricos, para predecir la

trayectoria de los torpedos en los submarinos y para el manejo a distancia de las

bombas en la aviación.

4. Ordenadores electrónicos

Durante la II Guerra Mundial (1939–1945), un equipo de científicos y

matemáticos que trabajaban en Bletchley Park, al norte de Londres, crearon lo

que se consideró el primer ordenador digital totalmente electrónico: el Colossus.

Hacia diciembre de 1943 el Colossus, que incorporaba 1.500 válvulas o tubos de

vacío, era ya operativo. Fue utilizado por el equipo dirigido por Alan Turing para

descodificar los mensajes de radio cifrados de los alemanes. En 1939 y con

independencia de este proyecto, John Atanasoff y Clifford Berry ya habían

construido un prototipo de máquina electrónica en el Iowa State College (EEUU).

Este prototipo y las investigaciones posteriores se realizaron en el anonimato, y

más tarde quedaron eclipsadas por el desarrollo del Calculador e integrador

numérico electrónico (en inglés ENIAC, Electronic Numerical Integrator and

Computer) en 1945. El ENIAC, que según se demostró se basaba en gran

medida en el ordenador Atanasoff-Berry (en inglés ABC, Atanasoff-Berry

Computer), obtuvo una patente que caducó en 1973, varias décadas más tarde.

La primera computadora electrónica comercial, la UNIVAC I, fue también la

primera capaz de procesar información numérica y textual. Diseñada por J.

Presper Eckeret y John Mauchly, cuya empresa se integró posteriormente en

Remington Rand, la máquina marcó el inicio de la era informática. En la

ilustración vemos una UNIVAC. La computadora central está al fondo, y en

primer plano puede verse al panel de control de supervisión. Remington Rand

entregó su primera UNIVAC a la Oficina del Censo de Estados Unidos en 1951.

5. El eniac

El ENIAC contenía 18.000 válvulas de vacío y tenía una velocidad de varios

cientos de multiplicaciones por minuto, pero su programa estaba conectado al

procesador y debía ser modificado manualmente. Se construyó un sucesor del

ENIAC con un almacenamiento de programa que estaba basado en los

conceptos del matemático húngaro-estadounidense John von Neumann. Las

instrucciones se almacenaban dentro de una llamada memoria, lo que liberaba

al ordenador de las limitaciones de velocidad del lector de cinta de papel durante

la ejecución y permitía resolver problemas sin necesidad de volver a conectarse

al ordenador.

A finales de la década de 1950 el uso del transistor en los ordenadores marcó el

advenimiento de elementos lógicos más pequeños, rápidos y versátiles de lo que

permitían las máquinas con válvulas. Como los transistores utilizan mucha

menos energía y tienen una vida útil más prolongada, a su desarrollo se debió el

nacimiento de máquinas más perfeccionadas, que fueron llamadas ordenadores

o computadoras de segunda generación. Los componentes se hicieron más

pequeños, así como los espacios entre ellos, por lo que la fabricación del

sistema resultaba más barata.

6. Circuitos integrados

A finales de la década de 1960 apareció el circuito integrado (CI), que posibilitó

la fabricación de varios transistores en un único sustrato de silicio en el que los

cables de interconexión iban soldados. El circuito integrado permitió una

posterior reducción del precio, el tamaño y los porcentajes de error. El

microprocesador se convirtió en una realidad a mediados de la década de 1970,

con la introducción del circuito de integración a gran escala (LSI, acrónimo de

Large Scale Integrated) y, más tarde, con el circuito de integración a mayor

escala (VLSI, acrónimo de Very Large Scale Integrated), con varios miles de

transistores interconectados soldados sobre un único sustrato de silicio.

Los circuitos integrados han hecho posible la fabricación del microordenador o

microcomputadora. Sin ellos, los circuitos individuales y sus componentes

ocuparían demasiado espacio como para poder conseguir un diseño compacto.

También llamado chip, un circuito integrado típico consta de varios elementos

como reóstatos, condensadores y transistores integrados en una única pieza de

silicio. En los más pequeños, los elementos del circuito pueden tener un tamaño

de apenas unos centenares de átomos, lo que ha permitido crear sofisticadas

computadoras del tamaño de un cuaderno. Una placa de circuitos de una

computadora típica incluye numerosos circuitos integrados interconectados entre

sí.

7. Evolución cronológica de la computadora

La necesidad del hombre de encontrar métodos rápidos y efectivos para resolver

sus cálculos y su gran inventiva lo llevaron a través de los siglos al desarrollo de

lo que hoy conocemos como la computadora. Desde el ábaco hasta las

computadoras personales éstas han tenido una gran influencia en diferentes

aspectos de nuestro diario vivir, mejorando nuestra calidad de vida y abriendo

puertas que antes eran desconocidas para la humanidad.

500 AC: Ábaco

El primer calculador de tipo mecánico fue ideado en Babilonia alrededor de 500

A.C. Este dispositivo mecánico llamado ábaco consistía de un sistema de barras

y poleas con lo cual se podían efectuar diferentes tipos de cálculos aritméticos.

1622: Oughtred presenta la regla de cálculo

Hacia 1622, el matemático inglés William Oughtred utilizó los recién inventados

logaritmos para fabricar un dispositivo que simplificaba la multiplicación y la

división. Consistía en dos reglas graduadas unidas que se deslizaban una sobre

otra.

1642: Primera máquina de sumar

El matemático y filósofo francés Blaise Pascal tenía diecinueve años cuando

construyó la primera máquina sumadora del mundo en 1642. Utilizaba un

engranaje de ruedas dentadas como contadores. El dispositivo llevaba 1

automáticamente al llegar a las decenas y también podía emplearse para restar.

1834: Primera computadora digital programable

En 1834 el científico e inventor inglés Charles Babbage realizó los esquemas de

un dispositivo el cual llamó máquina analítica lo que en realidad era una

computadora de propósitos generales. Esta máquina era programada por una

serie de tarjetas perforadas que contenían datos o instrucciones las cuales

pasaban a través de un dispositivo de lectura, eran almacenados en una

memoria y los resultados eran reproducidos por unos moldes. Esta máquina

superaba por mucho la tecnología de su tiempo y nunca se terminó.

1850: Primera sumadora de teclado

El teclado apareció en una máquina inventada en Estados Unidos en 1850.

Podían sumarse una secuencia de dígitos pulsando unas teclas sucesivas. Cada

tecla alzaba un eje vertical a cierta altura y la suma quedaba indicada por la

altura total.

8. Generaciones Del Computador

9. A.C. (Antes De Ordenadores)

o Dotación física

+ Mecánico

o Software lógica

+ Tarjetas o cinta de papel perforadas

+ Ada Lovelace - primer programador (c. 1840)

+ Máquina de Turing y Church-Turing Thesis (1937)

o Máquinas Especiales

+ Ábaco

+ Pascaline - Primera Máquina calculadora Automática (1642)

+ Telar De Telar jacquar (1805)

+ Motores De Babbage

# Motor De Diferencia (1822)

# Motor Analítico (1832)

+ Hollerith

# Máquina De Tabulación (Censo 1890 De los E.E.U.U.)

# La máquina de tabulación de las formas Co. (1896) - se convierte

la IBM en 1924

+ Máquina sumadora De Burroughs (1888)

10. Primera generación: C. 1940 – 1955

o Dotación física

+ Tubos de vacío

+ Tambores magnéticos

+ Cinta magnética (cerca del extremo de la generación)

o Software lógica

+ Programas en terminología de la informática

+ Programas en lenguaje ensamblador (cerca del extremo de la

generación)

+ 1946 - von Neumann publica el documento sobre el ordenador

salvado del programa

+ 1950 - Prueba de Turing publicada

o Máquinas Especiales

+ 1940 - ABC (1r ordenador electrónico)

+ 1940 - Robinson (1r ordenador, código operacionales de Enigma de

las grietas)

+ 1946 - Calculadora numérica de ENIAC (1r completamente

electrónico, de uso general)

+ 1950 - UNIVAC I (1r ordenador comercialmente acertado)

11. Segunda generación: C. 1955 – 1964

o Dotación física

+ Transistores

# 1947 - Convertido

# 1955 - Calculadora Del Transistor De IBM’s

+ Minicomputadoras

+ Discos magnéticos

+ Tarjetas de circuito impresas

o Software lógica

+ Lenguajes de alto nivel

# 1956 - FORTRAN

# 1959 - COBOL

o Máquinas Especiales

+ 1963 — PDP 8 (1ra minicomputadora)

12. Tercera generación: C. 1964 – 1971

o Dotación física

+ Circuitos integrados (c. desarrollada 1958)

+ Familias de los ordenadores (1964 - IBM 360)

+ 1970 - Diskette

o Software lógica

+ Los programas entraron directamente en los ordenadores

+ Lenguajes de un nivel más alto (1965 - BASIC)

+ Sistemas operativos

+ Timesharing

o Máquinas Especiales

+ 1964 — Serie del sistema 360 de la IBM (1ra familia de

ordenadores)

13. Cuarta generación: C. 1971 – PRESENTE

o Dotación física

+ 1971 - Viruta del microprocesador introducida en los E.E.U.U. por

Intel

+ Microordenadores (Ordenadores Personales)

+ Integración De la Escala Grande (LSI)

+ Integración De la Escala Muy Grande (Vlsi)

o Software lógica

+ Programación estructurada

+ Conjuntos de aplicación

+ Sistemas del windowing (interfaces utilizador gráficos — GUIs)

+ Programas conviviales

o Máquinas Especiales

+ 1971 - (1ra calculadora de bolsillo)

+ 1975 — Altaír 8800 (1ra PC)

+ 1977 — Manzana I (hágala usted mismo kit)

+ 1978 — Manzana II (premontada)

+ 1981 — PC DE LA IBM

+ 1984 — Impermeable

14. Tendencias generales

o Dotación física

+ Más pequeño

+ Más rápidamente

+ Más barato

+ Más disponible

o Software lógica

+ Más grande (más exige en la dotación física: CPU, memoria, espacio

de disco, etc.)

+ Más fácil utilizar

+ Mejore El Diseño

+ Más barato

+ Más disponible

15. Ordenadores analógicos

El ordenador analógico es un dispositivo electrónico o hidráulico diseñado para

manipular la entrada de datos en términos de, por ejemplo, niveles de tensión o

presiones hidráulicas, en lugar de hacerlo como datos numéricos. El dispositivo

de cálculo analógico más sencillo es la regla de cálculo, que utiliza longitudes de

escalas especialmente calibradas para facilitar la multiplicación, la división y

otras funciones. En el típico ordenador analógico electrónico, las entradas se

convierten en tensiones que pueden sumarse o multiplicarse empleando

elementos de circuito de diseño especial. Las respuestas se generan

continuamente para su visualización o para su conversión en otra forma

deseada.

16. Ordenadores digitales

Todo lo que hace un ordenador digital se basa en una operación: la capacidad

de determinar si un conmutador, o ‘puerta’, está abierto o cerrado. Es decir, el

ordenador puede reconocer sólo dos estados en cualquiera de sus circuitos

microscópicos: abierto o cerrado, alta o baja tensión o, en el caso de números, 0

o 1. Sin embargo, es la velocidad con la cual el ordenador realiza este acto tan

sencillo lo que lo convierte en una maravilla de la tecnología moderna. Las

velocidades del ordenador se miden en megahercios, o millones de ciclos por

segundo. Un ordenador con una velocidad de reloj de 100 MHz, velocidad

bastante representativa de un microordenador o microcomputadora, es capaz de

ejecutar 100 millones de operaciones discretas por segundo. Las

microcomputadoras de las compañías pueden ejecutar entre 150 y 200 millones

de operaciones por segundo, mientras que las supercomputadoras utilizadas en

aplicaciones de investigación y de defensa alcanzan velocidades de miles de

millones de ciclos por segundo.

La velocidad y la potencia de cálculo de los ordenadores digitales se

incrementan aún más por la cantidad de datos manipulados durante cada ciclo.

Si un ordenador verifica sólo un conmutador cada vez, dicho conmutador puede

representar solamente dos comandos o números. Así, ON simbolizaría una

operación o un número, mientras que OFF simbolizará otra u otro. Sin embargo,

al verificar grupos de conmutadores enlazados como una sola unidad, el

ordenador aumenta el número de operaciones que puede reconocer en cada

ciclo. Por ejemplo, un ordenador que verifica dos conmutadores cada vez, puede

representar cuatro números (del 0 al 3), o bien ejecutar en cada ciclo una de las

cuatro operaciones, una para cada uno de los siguientes modelos de

conmutador: OFF-OFF (0), OFF-ON (1), ON-OFF (2) u ON-ON (3). En general,

los ordenadores de la década de 1970 eran capaces de verificar 8 conmutadores

simultáneamente; es decir, podían verificar ocho dígitos binarios, de ahí el

término bit de datos en cada ciclo.

Un grupo de ocho bits se denomina byte y cada uno contiene 256

configuraciones posibles de ON y OFF (o 1 y 0). Cada configuración equivale a

una instrucción, a una parte de una instrucción o a un determinado tipo de dato;

estos últimos pueden ser un número, un carácter o un símbolo gráfico. Por

ejemplo, la configuración 11010010 puede representar datos binarios, en este

caso el número decimal 210 , o bien estar indicando al ordenador que compare

los datos almacenados en estos conmutadores con los datos almacenados en

determinada ubicación del chip de memoria. El desarrollo de procesadores

capaces de manejar simultáneamente 16, 32 y 64 bits de datos ha permitido

incrementar la velocidad de los ordenadores. La colección completa de

configuraciones reconocibles, es decir, la lista total de operaciones que una

computadora es capaz de procesar, se denomina conjunto, o repertorio, de

instrucciones. Ambos factores, el número de bits simultáneos y el tamaño de los

conjuntos de instrucciones, continúa incrementándose a medida que avanza el

desarrollo de los ordenadores digitales modernos.

17. Evolución futura

Una tendencia constante en el desarrollo de los ordenadores es la

microminiaturización, iniciativa que tiende a comprimir más elementos de

circuitos en un espacio de chip cada vez más pequeño. Además, los

investigadores intentan agilizar el funcionamiento de los circuitos mediante el

uso de la superconductividad, un fenómeno de disminución de la resistencia

eléctrica que se observa cuando se enfrían los objetos a temperaturas muy

bajas.

Las redes informáticas se han vuelto cada vez más importantes en el desarrollo

de la tecnología de computadoras. Las redes son grupos de computadoras

interconectados mediante sistemas de comunicación. La red pública Internet es

un ejemplo de red informática planetaria. Las redes permiten que las

computadoras conectadas intercambien rápidamente información y, en algunos

casos, compartan una carga de trabajo, con lo que muchas computadoras

pueden cooperar en la realización de una tarea. Se están desarrollando nuevas

tecnologías de equipo físico y soporte lógico que acelerarán los dos procesos

mencionados.

Otra tendencia en el desarrollo de computadoras es el esfuerzo para crear

computadoras de quinta generación, capaces de resolver problemas complejos

en formas que pudieran llegar a considerarse creativas. Una vía que se está

explorando activamente es el ordenador de proceso paralelo, que emplea

muchos chips para realizar varias tareas diferentes al mismo tiempo. El proceso

paralelo podría llegar a reproducir hasta cierto punto las complejas funciones de

realimentación, aproximación y evaluación que caracterizan al pensamiento

humano. Otra forma de proceso paralelo que se está investigando es el uso de

computadoras moleculares. En estas computadoras, los símbolos lógicos se

expresan por unidades químicas de ADN en vez de por el flujo de electrones

habitual en las computadoras corrientes.

1.2Modelo de Von Neuman

John Von Newman observo que la torpeza de la aritmética decimal utilizadas en

la computadora ENIAC podia remplazarse utilizando la aritmatica binaria.

Realizo un diseño básico llamado la máquina de Von Newman y se utilizo en la

computadora EDVAC que fue la primer computadora que almacenaba el

programa.

La máquina de Von Newman tenia 5 partes principales y son las siguientes:

LA MEMORIA: Constaba de 4096 palabras cada una de 40 bits.Y cada palabra

podia contener 2 instrucciones de 20 bits cada una o un número entero de 39

bits y su signo.

UNIDAD DE CONTROL:Es la que supervisaba la transferencia de información y

la indicaba a la unidad aritmetica lógica cual operación debia ejecutar.

UNIDAD DE ARITMATICA LÓGICA: Es aquella que se encarga de realizar las

operaciones aritméticas y lógicas necesarias para la ejecución de una

instrucción.

ENTRADA:Es cualquier dispositivopor el que se introduce información a la

computadora.

SALIDA:Es cualquier dispositivo que recibe información de la máquina para ser

utilizadas por el usuario.

Centrándonos en los ordenadores sobre los que vamos a trabajar desarrollaré

a grandes rasgos la arquitectura Von Newman que, si bien no es la primera en

aparecer, sí que lo hizo prácticamente desde el comienzo de los ordenadores y

se sigue desarrollando actualmente. Claro es que está siendo desplazada por

otra que permiten una mayor velocidad de proceso, la RISC.

En los primeros tiempos de los ordenadores, con sistemas de numeración

decimal, una electrónica sumamente complicada muy susceptible a fallos y un

sistema de programación cableado o mediante fichas, Von Newman propuso

dos conceptos básicos que revolucionarían la incipiente informática:

a) La utilización del sistema de numeración binario. Simplificaba

enormemente los problemas que la implementación electrónica de las

operaciones y funciones lógicas planteaban, a la vez proporcionaba una mayor

inmunidad a los fallos (electrónica digital).

b) Almacenamiento de la secuencia de instrucciones de que consta el

programa en una memoria interna, fácilmente accesible, junto con los datos que

referencia. De este forma la velocidad de proceso experimenta un considerable

incremento; recordemos que anteriormente una instrucción o un dato estaban

codificados en una ficha en el mejor de los casos.

Tomando como modelo las máquinas que aparecieron incorporando las

anteriores características, el ordenador se puede considerar compuesto por las

siguientes partes:

- La Unidad Central de Proceso, U.C.P., más conocida por sus siglas en

inglés (CPU).

- La Memoria Interna, MI.

- Unidad de Entrada y Salida, E/S.

- Memoria masiva Externa, ME.

Realicemos a continuación una descripción de lo que se entiende por cada

una de estas partes y cómo están relacionadas entre si:

- La Unidad Central de Proceso (CPU) viene a ser el cerebro del ordenador y

tiene por misión efectuar las operaciones aritmético-lógicas y controlar las

transferencias de información a realizar.

- La Memoria Interna (MI) contiene el conjunto de instrucciones que ejecuta la

CPU en el transcurso de un programa. Es también donde se almacenan

temporalmente las variables del mismo, todos los datos que se precisan y todos

los resultados que devuelve.

- Unidades de entrada y salida (E/S) o Input/Output (I/O): son las encargadas

de la comunicación de la máquina con el exterior, proporcionando al operador

una forma de introducir al ordenador tanto los programas como los datos y

obtener los resultados.

Como es de suponer, estas tres partes principales de que consta el

ordenador deben estar íntimamente conectadas; aparece en este momento el

concepto de bus: el bus es un conjunto de líneas que enlazan los distintos

componentes del ordenador, por ellas se realiza la transferencia de datos entre

todos sus elementos.

Se distinguen tres tipos de bus:

- De control: forman parte de él las líneas que seleccionan desde dónde y

hacia dónde va dirigida la información, también las que marcan la secuencia de

los pasos a seguir para dicha transferencia.

- De datos: por él, de forma bidireccional, fluyen los datos entre las distintas

partes del ordenador.

- De direcciones: como vimos, la memoria está dividida en pequeñas

unidades de almacenamiento que contienen las instrucciones del programa y los

datos. El bus de direcciones consta de un conjunto de líneas que permite

seleccionar de qué posición de la memoria se quiere leer su contenido. También

direcciona los puertos de E/S.

La forma de operar del ordenador en su conjunto es direccionar una posición

de la memoria en busca de una instrucción mediante el bus de direcciones,

llevar la instrucción a la unidad central de proceso -CPU- por medio del bus de

datos, marcando la secuencia de la transferencia el bus de control. En la CPU la

instrucción se decodifica, interpretando qué operandos necesita: si son de

memoria, es necesario llevarles a la CPU; una vez que la operación es

realizada, si es preciso se devuelve el resultado a la memoria.

1.3 Clasificacion de las Computadoras

Las computadoras se clasifican :

A)DE ACUERDO A SU FORMA DE OPERACION

B)DE ACUERDO CON EL PROPOSITO PARA EL QUE SON CONSTRUIDAS

c)DEACUERDO CON SU POTENCIA Y PRECIO

DE ACUERDO A SU FORMA DE OPERACION:

Estas a su vez se clasifican en Analogicas que son las que su informacion que

se alimenta a ellas proviene de alguna forma de medicion donde su exactitud

esta directamente relacionadala presicion de su medicion,Tambien existen las

Digitales que son dispositivos de calculo que procesan datos discretos o digitos

representados por numeros letras u otros simbolos especiales resuelve los

problemas mediante operaciones aritmeticas ,lógicas y relacionales;y por ultimo

estan las hibridas que combinan las caracteristicas mas favorables de las 2

anteriores tienen la velocidad de las Analogicas y la precision de las digitales.

DE ACUERDO CON EL PROPOSITO PARA EL QUE SON CONSTRUIDAS:

Las hay de Proposito Especial que se diseñan para manejar problemas

específicos y no se aplican a otras actividades computarizadas y tambien las hay

de Proposito General que son diseñadas para resolver problemas diversos que

se presentan frecuentemente en cualquier organización.

DE ACUERDO CON SU POTENCIA Y PRECIO:

Se clasifican en Supercomputadora que utilizan sistemas de refrigeracion para

dispersar el calor generado por la maquina,Macrocomputadora su informacion

esta organizada en una o mas base de datos enormes,Minicomputadora puede

manejar mas entradas y salidas de informacion que una computadora personal y

la Microcomputadora que estan diseñadas para ser utilizadas por un solo

usuario a la vez pueden costar desde 100dlls. hasta 7500.

CLASIFICACION DE LAS COMPUTADORAS.

Las computadoras se clasifican : A)DEACUERDO A SU FORMA DE

OPERACION B)DEACUERDO CON EL PROPOSITO PARA EL QUE SON

CONSTRUIDAS c)DEACUERDO CON SU POTENCIA Y PRECIO

DEACUERDO A SU FORMA DE OPERACION:

Estas a su vez se clasifican en Analogicas que son las que su informacion que

se alimenta a ellas proviene de alguna forma de medicion donde su exactitud

esta directamente relacionadala presicion de su medicion,Tambien existen las

Digitales que son dispositivos de calculo que procesan datos discretos o digitos

representados por numeros letras u otros simbolos especiales resuelve los

problemas mediante operaciones aritmeticas ,lógicas y relacionales;y por ultimo

estan las hibridas que combinan las caracteristicas mas favorables de las 2

anteriores tienen la velocidad de las Analogicas y la precision de las digitales.

DEACUERDO CON EL PROPOSITO PARA EL QUE SON CONSTRUIDAS:Las

hay de Proposito Especial que se diseñan para manejar problemas específicos y

no se aplican a otras actividades computarizadas y tambien las hay de Proposito

General que son diseñadas para resolver problemas diversos que se presentan

frecuentemente en cualquier organización.

DEACUERDO CON SU POTENCIA Y PRECIO:Se clasifican en

Supercomputadora que utilizan sistemas de refrigeracion para dispersar el calor

generado por la maquina,Macrocomputadora su informacion esta organizada en

una o mas base de datos enormes,Minicomputadora puede manejar mas

entradas y salidas de informacion que una computadora personal y la

Microcomputadora que estan diseñadas para ser utilizadas por un solo usuario a

la vez pueden costar desde 100dlls. hasta 7500.

El procesador El procesador es el cerebro del ordenador. Controla el

funcionamiento de la computadora y lleva a cabo las funciones de

procesamiento de datos. La velocidad del microprocesador se mide en Mega

Hertz, aunque solo es la fuerza bruta del procesador. Este va montado sobre un

socket de la mother board, existe otra velocidad, la FBS, que es la velocidad con

la que se comunican el procesador y la mother board. Partes De Un

Microprocesador 1. - Encapsulado: rodea el chip, sirve para protegerlo contra los

agentes externos y para montar los conectores externos para montarlo en la

mother board. 2. - La memoria caché: memoria muy rápida donde el procesador

almacena los datos que está usando o los que va a usar próximamente. 3. -

FPU, floating point unit: parte especializada en cálculos de punto flotante. 4. -

Existen otras piezas que no es necesario mencionar por el momento. Por su

estructura Por su fuente de energía. La forma más común de alimentación de

una computadora pues es la energía eléctrica, antes las computadoras gastaban

muchísima electricidad, hoy en día gracias a las nuevas tecnologías en los

componentes se ahorra mucha electricidad. Entre esta clase de computadoras

están las analógicas y las digitales. Las computadoras analógicas basan su

funcionamiento en comparar parámetros y hacer mediciones, analogía quiere

decir comparación. Sus cálculos los hacen con base a comparaciones que

realizan por medio de instrumentos mecánicos. Las computadoras digitales

realizan todas sus operaciones basándose en cálculos matemáticos

exclusivamente. Se basan en el sistema binario y en las matemáticas discretas,

de estado finito, a diferencia de las analógicas que siguen unas matemáticas

continuas. En el siglo XIX Charles Babbage desarrolló una computadora

analógica que funcionaba a base de engranes, Claro está que su propulsión era

puramente mecánica, fue ayudado por Ada Lovelace, a quien se le atribuye el

haber escrito el primer algoritmo de computación. La idea de la máquina de

Babbage era buena, pero nunca funcionó bien debido a que la precisión que

requerían las piezas sobrepasaba la tecnología de aquel tiempo. Por su tamaño.

La característica es su tamaño, refiriéndose a su capacidad de cómputo.

Macrocomputadora: máquina utilizada en grandes organizaciones, es capaz de

comunicarse con varios usuarios a la vez. El trabajar con varios usuarios a la

vez se logra debido a la gran capacidad de esta clase de máquina y a un método

que se llama tiempo compartido. El tiempo compartido se basa en que el

procesador tiene tiempos muertos, entonces para evitar esto se asignan

pequeños espacios de tiempo a cada usuario en los cuales se realizan parte de

las operaciones que solicita el usuario, dado el corto espacio de tiempo entre las

interrupciones de un usuario a otro no se siente ninguna clase de retraso o de

tiempo de espera. Además también se debe a la gran rapidez del sistema.

Minicomputadora: también es una máquina multiusuario, pero no es tan grande

como una macrocomputadora. Estación de trabajo: esta es más potente que una

microcomputadora, también tiene potencia para ser multiusuario, pero es mas

frecuentemente utilizada por ingenieros o científicos que requieran una gran

cantidad de cálculos. Entre la comunidad de desarrolladores de software una

estación de trabajo es muy útil, porque además de hacer el trabajo en red mas

dinámico se requiere de bastante potencia para compilar programas de gran

tamaño. Aunque se puede decir que una estación de trabajo es solo una PC

pero más potente. Microcomputadora: es una PC, son utilizadas para trabajos de

oficina o para entretenimiento multimedia. Las hay de escritorio o portátiles. 2.

Arquitectura de su procesador Procesadores CISC y RISC. Agrupados en dos

familias, la más antigua es la CISC, complex instruction set computer.

Corresponde a procesadores capaces de ejecutar un gran número de

instrucciones pre-definidas en lenguaje máquina, en un orden de centenas. Los

procesadores RISC, reduced instruction set computer. Permite una ejecución

más rápida, pero requiere de compiladores más complejos ya que el RISC

admite menos instrucciones que un CISC. RISC Las características comunes a

todos los procesadores RISC, fuente de sus capacidades de altas prestaciones,

son: 1.Modelo de conjunto de instrucciones Load/Store (Cargar/Almacenar).

Sólo las instrucciones Load/Store acceden a memoria; las demás operaciones

en un RISC, tienen lugar en su gran conjunto de registros. Ello simplifica el

direccionamiento y acorta los tiempos de los ciclos de la CPU, y además facilita

la gestión de los fallos de paginas (page faults) en entornos de memoria virtual.

Además, permite un elevado nivel de concurrencia a consecuencia de la

independencia de las operaciones de Load/Store de la ejecución del resto de las

instrucciones. 2.Arquitectura no destructiva de tres direcciones. Los

procesadores CISC destruyen la información que existe en alguno de los

registros, como consecuencia de la ejecución normal de instrucciones; esto es

debido a su arquitectura de dos direcciones, por la cual el resultado de una

operación sobrescribe uno de los registros que contenía a los operandos. Por

contra, las instrucciones RISC, con tres direcciones, contienen los campos de

los dos operándoos y de su resultado. Por lo tanto, tanto los operandos origen

como el destino, son mantenidos en los registros tras haber sido completada la

operación. Esta arquitectura “no destructiva” permite a los compiladores

organizar las instrucciones de modo que mantengan llenos los conductos

(pipelines) del chip, y por tanto reutilizar los operandos optimizando la

concurrencia. 3.Instrucciones simples, de formato fijo, con pocos modos de

direccionamiento. Las instrucciones simples reducen de manera muy

significativa el esfuerzo para su descodificación, y favorecen su ejecución en

pipelines. Las instrucciones de longitud fija, con formatos fijos, implican que los

campos de códigos de operación (opcodes) y de los operandos están siempre

codificados en las mismas posiciones, permitiendo el acceso a los registros al

mismo tiempo que se está descodificando el código de operación. Todas las

instrucciones tienen una longitud equivalente a una palabra y están alineadas en

la memoria en límites de palabra (word boundaries), ya que no pueden ser

repartidas en pedazos que puedan estar en diferentes páginas. 4.Ausencia de

microcódigo. El microcódigo no se presta a la ejecución en ciclos únicos, ya que

requiere que el hardware sea dedicado a su interpretación dinámica. La

programación en microcódigo no hace que el software sea más rápido que el

programado con un conjunto de instrucciones simples. Todas las funciones y el

control, en los procesadores RISC, están “cableados” (hardwired), para lograr

una máxima velocidad y eficiencia. 5.Ejecución en conductos (pipelined). Las

instrucciones simples, de formato fijo y ciclo único permiten que las diferentes

etapas de los ciclos de ejecución (búsqueda o fetch, descodificación, ejecución,

y escritura del resultado o result write-back) para instrucciones múltiples, se

puedan realizar simultáneamente, de un modo más simple y eficaz. 6.Ejecución

en ciclos únicos (single-cycle). El resultado directo de los conjuntos de

instrucciones que ofrecen los procesadores RISC, es que cada instrucción

puede ser ejecutada en un único ciclo de la CPU. Esto invalida la creencia de

que las microinstrucciones en microcódigo, creadas para ser ejecutadas en un

solo ciclo de procesador, son más rápidas que las instrucciones del lenguaje

ensamblador. Ya que el caché esta construido partiendo de la misma tecnología

que el almacenamiento de control del microprograma, una única instrucción

puede ser ejecutada a la misma velocidad que una microinstrucción. La

ejecución en ciclos únicos también simplifica la gestión de las interrupciones y

los conductos (pipelines). RISC frente a CISC: Existen varios mitos que

contraponen las ventajas de la tecnología RISC frente a la CISC, que es

importante descalificar: a. Los procesadores RISC ofrecen peor soporte para los

lenguajes de alto nivel o HLL (High Level Language) que lo CISC. Esta creencia

se argumenta en que un conjunto de instrucciones de “alto nivel” (CISC) es

mejor soporte para lenguajes de alto nivel. Sin embargo, la característica

fundamental de los lenguajes de alto nivel, implica que el programador sólo

interacciona con el ordenador a través del propio lenguaje de alto nivel

(programación, depuración, mensajes del sistema, etc.), por lo que todos los

problemas a “bajo nivel”, deben de ser transparentes y desconocidos para él.

Por ello, son de nulas consecuencias para el programador y los lenguajes de

alto nivel, como se implementan las funciones, en función del tipo de CPU. b. Es

más complicado escribir compiladores RISC que CISC. Dado que los

procesadores CISC tienen un mayor número de instrucciones y modos de

direccionamiento, existen por tanto más formas de hacer la misma tarea, lo que

puede confundir tanto al compilador como al que lo escribe. Por ello,

subjetivamente es posible escoger una forma de hacerlo poco adecuada, por el

tipo de instrucciones o por el tiempo de ejecución que requieren. En cambio, en

un procesador RISC, hay menos opciones, por lo que el compilador es más

simple, aunque se genere, habitualmente, un 20–30% más código; a cambio, se

consigue un incremento de la velocidad de hasta un 500%. c. Un programa es

más rápido cuanto más pequeño. La velocidad a la que un programa puede ser

ejecutado no depende en absoluto de su tamaño, sino del tiempo de ejecución

de cada una de sus instrucciones. Dado que las instrucciones RISC son más

rápidas, y admiten mejor los pipelines, puede haber mayor paralelismo y

simultaneidad en la ejecución de pequeñas secciones de código. Dichas

secciones de código pueden ser ejecutadas en una fracción del tiempo que

requiere una sola instrucción CISC. Resumiendo: No es un hecho meramente

académico, sino puramente comercial y económico. La “era RISC” ha alcanzado

a todos los fabricantes de semiconductores: AMD, Intel, MIPS, Motorola, ROSS,

…; y todos ellos son productos usados por fabricantes de ordenadores y

estaciones de trabajo: Apple, DEC, HP, IBM, SUN, etc. y sus correspondientes

clónicos. El tiempo de diseño de estos productos se reduce sensiblemente, lo

que disminuye su coste final, y por tanto, se incrementan sus expectativas, al

poder llegar al mercado en un tiempo más adecuado, y con menos posibilidades

de errores. Además, son globalmente más eficaces, de menores dimensiones y

más bajo consumo, ofreciendo siempre claras ventajas técnicas frente a los más

avanzados CISC. Actualmente, las estaciones de trabajo RISC

multiprocesadoras de mayor éxito, se basan en diferentes versiones de la

tecnología SPARC: superSPARC e Hyper SPARC?. Esta claro que el futuro

pertenece a los RISC y a los sistemas multiprocesador, a no ser que la física y la

electrónica logren superar las barreras tecnológicas para incrementar muy por

encima de las cotas actuales, las velocidades y prestaciones de una única CPU.

También cabe esperar, y por que no, la pronta aparición de otras tecnologías

que compitan con CISC y RISC. Arquitectura Von Newman. En los primeros

tiempos de los ordenadores se utilizaba el sistema decimal, por lo tanto una

electrónica sumamente complicada y propensa a fallos. Además un sistema de

programación cableado o mediante fichas, Von Newman propuso dos conceptos

básicos que revolucionaron la informática. a) La utilización del sistema binario.

Esto simplificaba muchísimo la electrónica de las operaciones matemáticas y

lógicas, a la vez este sistema era más inmune a los fallos, esto es la electrónica

digital. b) Almacenamiento de la secuencia de instrucciones de que consta el

programa en una memoria interna, fácilmente accesible, lo cual reduce el tiempo

de espera. Multiprocesamiento Multiprocesadores débilmente acoplados.

Consiste en un conjunto de sistemas relativamente autónomos, donde cada

CPU tiene su propia memoria principal y sus canales E / S. Procesadores de uso

específico. Por ejemplo los procesadores de E / S, en este caso hay un

procesador maestro, y los procesadores de uso específico están controlados por

la CPU maestra. Multiprocesadores fuertemente acoplados. Conjunto de

procesadores que comparten la misma memoria principal. Procesadores

paralelos. Multiprocesadores fuertemente acoplados que pueden cooperar en la

ejecución en paralelo de una misma tarea. Procesador Unidad de control

Controla las operaciones que se deben realizar. Su operación obedece a las

instrucciones aportadas por el programa que se esté ejecutando, recoge las

instrucciones del programa directamente de la memoria central y administra las

operaciones de los demás componentes del procesador, ordenando y

guardando los datos en la memoria antes y después de haber sido tratados por

la unidad aritmética-lógica. Realiza dos tareas básicas: SECUENCIAMIENTO.

Hace que la CPU avance a través de las micro operaciones al tiempo debido.

EJECUCIÓN. Se encarga de que las operaciones sean ejecutadas. ENTRADAS.

Permiten determinar el estado del sistema. SALIDAS. Permiten controlar el

estado del sistema. Unidad de ejecución Es la que ejecuta las instrucciones y

realiza los cálculos a partir de las señales de control. Bus interno. Conecta todos

los componentes de la CPU al chipset y a la memoria principal. La velocidad de

este es muy importante, ya que si la velocidad del bus es muy poca, aumentará

el tiempo de espera del procesador, no obstante se tenga un procesador muy

bueno, claro, en todo debe haber un equilibrio, por ejemplo el procesador PI de

166 MHz trabaja sobre un bus de sistema de 66 MHz y el PIIII trabaja con un

bus de 400 MHz, aunque trabajaría mejor con un bus de 800, este bus no salió

por problemas con los fabricantes de tarjetas madre. Memoria caché Memoria

ultra rápida donde la CPU almacena los datos que va a usar o que está usando,

haciendo que el tiempo de respuesta no se ralentice debido a la menor velocidad

de la RAM. Esta memoria es sumamente rápida, unas 5 o 6 veces más rápida

que la memoria RAM, hablando de equilibrio se debe mantener este en todos los

aspectos, una caché muy pequeña puede hacer que el procesador se tarde

mucho en encontrar los datos que necesita al buscarlos en la memoria RAM, y

por el contrario una caché muy grande puede hacer que el procesador se tarde

más en encontrar los datos que busca. Pila y cola Pila. Colección de elementos

donde se pueden suprimir o insertar nuevos elementos por un lado. Cola.

Colección de elementos donde se pueden insertar elementos nuevos por un lado

llamado final y eliminarlos por un lado llamado frente. 3. Memoria En un sistema

los programas a ejecutarse deben ser almacenados en una memoria para que la

CPU pueda acceder a ellos y realizar operaciones con ellos, una computadora

sin memoria sería totalmente inservible. Memoria Principal Es la unidad de

almacenamiento central, es aquí donde se almacenan los datos y los programas

que la computadora está usando en ese momento, debe de ser suficientemente

grande para soportar al sistema. La mayoría de esta memoria es memoria RAM,

pero también está la memoria ROM, que contiene las instrucciones base de la

computadora, es la que reconoce los dispositivos que esta posee, así como el

conjunto de instrucciones para su funcionamiento. Memoria RAM Es una

memoria bastante rápida, de acceso aleatorio, es volátil, así que solo almacena

los datos temporalmente para ser usados mientras se ejecuta el programa en

curso. Memoria ROM Memoria de solo lectura, esta memoria no se puede

borrar, es programada por el proveedor de la computadora, esto de solo lectura

es relativo, ya que si se puede borrar o alterar, pero no es volátil como la

memoria RAM. EPROM. Esta memoria solo se puede borrar con rayos

ultravioleta, se puede usar para un propósito especial en hardware. EEPROM.

Es eléctricamente borrable y se puede programar mediante una interfase

especial conectada a una computadora. PROM. Esta puede ser programada una

sola vez por el usuario o por el fabricante. Memoria Secundaria En esta memoria

se almacenan los datos de manera permanente, para ser utilizados después.

Estos datos pueden ser manipulados por el usuario ya que es aquí donde se

guardan todos los archivos de este, incluyendo los programas que utiliza el

sistema para funcionar, entre otros programas del usuario. Disco duro. Unidad

fija de gran capacidad, hasta de 120 Giga Bytes, Almacena los datos de forma

permanente. Discos flexibles. Unidad extraíble de pequeña capacidad, hasta 1.6

Mega Bytes dependiendo del sistema de archivos, almacena los datos como

cargas magnéticas al igual que el disco duro. Puertos Definición: Un puerto es el

lugar donde el CPU se comunica con otros dispositivos, existen de varios tipos,

hay puertos de entrada, de salida y ambos. Además estos pueden ser seriales o

paralelos. Puertos de entrada: Estos puertos recogen datos de algún dispositivo

externo, externo se refiere a estar fuera del CPU, no del gabinete. Existen

muchos dispositivos periféricos que se conectan a un puerto de entrada, por

ejemplo tenemos al teclado y al mouse, también están los lápices ópticos, los

lectores de código se barras, etc. Puertos de salida: Son todos aquellos por

donde el CPU envía datos a otros dispositivos, por ejemplo están la salida de

video y de sonido. Puertos de entrada / salida: Estos son una clase de puertos

por donde el CPU puede enviar y recibir información. Son muy importantes, ya

que entre estos se encuentran las memorias del CPU como son la RAM, ROM,

los floppys y discos duros. Estos puertos pueden ser usados para controlar

dispositivos, tales como las impresoras y los quemadores externos, por ejemplo.

Nosotros vamos a hablar acerca de los puertos que se encuentran fuera del

gabinete, hablaremos de los puertos de teclado, mouse, impresoras, etc. La

computadora por si misma no seria capaz de realizar operaciones útiles para

nosotros si no podemos comunicarnos con ella, necesita dispositivos periféricos

por donde pueda darnos mensajes y nosotros podamos enviarle órdenes. Ahora

bien, existen infinidad de dispositivos que sirven de extensión a la computadora,

muchos son para fines muy específicos y no se pueden abarcar, entre los

dispositivos que son de uso común se encuentra la impresora, el teclado, el

mouse y el monitor. Puerto serial: El puerto serial es aquel que envía y recibe los

datos BIT por BIT, entre los puertos seriales se puede mencionar el puerto de

teclado, o el puerto del MODEM. Puerto paralelo: Este tipo de puerto transmite la

información byte por byte, o sea que transmite ocho bits al mismo tiempo, de

forma paralela. un puerto paralelo por excelencia pues es el puerto para

impresora Se puede observar que un puerto de entrada puede ser paralelo o

serial, lo mismo que un puerto de entrada o de entrada / salida. A cada puerto la

bios le asigna una dirección de memoria para que pueda trabajar, dependiendo

de que clase de puerto sea se le asigna un determinado espacio exclusivo para

él. Por medio de estas localidades de memoria el sistema puede enviarles o

recibir información, es una especie de memoria de intercambio para la

transmisión de dados de un lugar a otro. A esto se le llama espacio de

localidades de memoria y se realiza dentro del primer kilo bite de la memoria

principal. Existen otras asignaciones de memoria en otras capas superiores de

memoria pero estas son hechas por el sistema operativo y por los demás

programas, pero estas asignaciones son para fines específicos de los demás

programas. Los puertos no solo se limitan a recibir la información, o enviarla,

según sea el caso. El puerto provee la corriente eléctrica necesaria para el

funcionamiento del dispositivo y revisa el estado de este. 4. Efecto de tuberías

Las tuberías son el medio mediante dos procesos se comunica entre sí, son

unidireccionales, o sea que existe un proceso que genera la tubería y otro que

recibe la información. En UNIX la tubería se genera mediante una pipa o pipe en

inglés: Root@darkstar# ‹proceso 1> | <proceso 2› Esto genera una tubería del

proceso uno al proceso dos, pero, ¿qué es esto? Esto significa que la salida del

proceso uno servirá de entrada al proceso dos. Lógica Predictiva Aquí el

procesador puede decidir el curso que seguirán los procesos a ejecutar, lo cual

permite adelantarse al “curso natural de los sucesos” y “adelantarse” a las

siguientes instrucciones. Así es que el procesador predice en cada bifurcación si

el proceso tomará o no la bifurcación y por lo tanto las búsquedas y ejecuciones

de las instrucciones subsecuentes. Si la predicción es correcta la ejecución

seguirá sin interrupción. En cambio si es incorrecta cualquier instrucción

ejecutada después de la bifurcación será cancelada y el procesador retorna al

estado en que estaba antes de tomar dicha bifurcación y continua con el camino

correcto. Segmentación La segmentación permite al programador considerar la

memoria como un conjunto de bloques o segmentos, pueden ser de tamaño

desigual. La segmentación simplifica el manejo de estructuras de datos

dinámicas, asignando un segmento del tamaño adecuado para la estructura y

agregando o reduciendo el espacio según se vaya requiriendo espacio en la

memoria. Permite alterar y recompilar los programas de forma independiente sin

tener que volver a ligar y cargar el conjunto entero de programas. Además como

se conoce el espacio del segmento se pueden tener restricciones o privilegios al

acceder a este espacio de memoria. Computadoras Matriciales Procesadores

vectoriales. Existe un problema que está fuera del alcance de las computadoras

convencionales, es cuando se requiere una gran cantidad de cálculos que a una

computadora convencional le tomaría días resolver. Para este fin se

desarrollaron las supercomputadoras con capacidades especiales para resolver

problemas tales como simulaciones aerodinámicas y espaciales y sistemas

expertos. Supercomputadoras Sistema con capacidades procesamiento paralelo

y de gran potencia. Capaces de realizar cientos de millones de operaciones en

coma flotante por segundo, diseñadas para la multiprogramación y las entradas

y saldas intensivas. Hay otro tipo de sistemas conocidos como procesadores

matriciales, que han sido diseñados para realizar cálculos vectoriales, están

configurados como dispositivos periféricos para que los usuarios de

computadoras centrales y minicomputadoras puedan ejecutar partes

vectorizadas de sus programas. Sistemas Multiprocesadores La industria

informática, ha tenido siempre un objetivo primordial, repetido a lo largo de toda

su cadena (fabricantes de semiconductores, fabricantes de sistemas y usuarios):

la búsqueda de la velocidad. Para alcanzar este objetivo se han invertido

ingentes cantidades de recursos, hasta alcanzar los límites físicos del silicio.

Obviamente, la velocidad va ligada a las prestaciones, y por lo general, la

primera ha sido la principal medida para decidirse por un sistema u otro. Sin

embargo, por muy evidente que parezca, y dados los límites físicos de los

semiconductores, las prestaciones pueden no estar forzosamente ligadas a la

velocidad. Hoy es posible construir sistemas, que aún teniendo procesadores

más “lentos” que otros, ofrezcan unas prestaciones significativamente

superiores. Son los sistemas multiprocesador, que como su denominación

indica, incorporan varios procesadores para llevar a cabo las mismas funciones.

No es un concepto nuevo, ya que los “minicomputadores” construidos por

compañías como NCR, Sequent y Stratus, ya empleaban varios nodos de

proceso como alternativas económicas a otros productos de otras compañías.

Sin embargo, aquellos sistemas aún duplicaban recursos caros del sistema,

como memoria y dispositivos de entrada/salida, y por tanto, confinaban a los

sistemas multiprocesador al mundo de los sistemas de alto nivel. Ahora, y en

gran medida gracias a los procesadores de arquitectura RISC, el soporte

multiprocesador es una solución integrada y fácilmente disponible en estaciones

de trabajo de sobremesa, que resuelve, a través de hardware VLSI, los

complejos problemas de compartición de recursos (memoria compartida) de

aquellas primeras máquinas. Evidentemente, estas mejoras en el hardware, para

ser funcionales, requieren importantes desarrollos en el software, y de hecho,

muchos sistemas operativos admiten extensiones multiproceso (Match, SCO,

Solaris, System V, etc.), que proporcionan paralelismo “en bruto” (asignando

múltiples tareas a múltiples procesadores) a nivel del sistema operativo. Las

aplicaciones escritas para facilitar el paralelismo en su ejecución, incrementan

significativamente las prestaciones globales del sistema; esto es lo que se

denomina multi-enhebrado (multithreading), que implica dividir una sola

aplicación entre varios procesadores. Sin embargo, los desarrolladores de

software y programadores de aplicaciones sólo han comenzado a explorar las

vastas posibilidades de incremento de prestaciones que ofrecen los sistemas

con capacidades reales de proceso en paralelo. El multiproceso no es algo difícil

de entender: más procesadores significan mas potencia computacional. Un

conjunto de tareas puede ser completado más rápidamente si hay varias

unidades de proceso ejecutándolas en paralelo. Esa es la teoría, pero otra

historia es la práctica, como hacer funcionar el multiproceso, lo que requiere

unos profundos conocimientos tanto del hardware como del software. Es

necesario conocer ampliamente como están interconectados dichos

procesadores, y la forma en que el código que se ejecuta en los mismos ha sido

escrito para escribir aplicaciones y software que aproveche al máximo sus

prestaciones. Para lograrlo, es necesario modificar varias facetas del sistema

operativo, la organización del código de las propias aplicaciones, así como los

lenguajes de programación. Es difícil dar una definición exacta de un sistema

multiprocesador, aunque podemos establecer una clasificación de los sistemas

de procesadores en: SISD o secuencia única de instrucciones y datos (Single

Instruction, Single Data): una sola secuencia de instrucciones opera sobre una

sola secuencia de datos (caso típico de los ordenadores personales). SIMD o

secuencia única de instrucciones y múltiple de datos (Single Instruction, Multiple

Data): una sola secuencia de instrucciones opera, simultáneamente, sobre

múltiples secuencias de datos (array processors). MISD o múltiples secuencias

de instrucciones y única de datos (Multiple Instruction, Single Data): múltiples

secuencias de instrucciones operan, simultáneamente, sobre una sola secuencia

de datos (sin implementaciones útiles actualmente). MIMD o múltiples

secuencias de instrucciones y datos (Multiple Instruction, Multiple Data):

múltiples secuencias de instrucciones operan, simultáneamente, sobre múltiples

secuencias de datos. Los sistemas multiprocesadores pueden ser clasificados

con mayor propiedad como sistemas MIMD. Ello implica que son máquinas con

múltiples y autónomos nodos de proceso, cada uno de los cuales opera sobre su

propio conjunto de datos. Todos los nodos son idénticos en funciones, por lo que

cada uno puede operar en cualquier tarea o porción de la misma. El sistema en

que la memoria está conectada a los nodos de proceso establece el primer nivel

de distinción entre diferentes sistemas multiprocesador: 1.Multiprocesadores de

memoria distribuida (distributed-memory multiprocessors), también denominados

multiprocesadores vagamente acoplados (loosely coupled multiprocessors). Se

caracterizan porque cada procesador sólo puede acceder a su propia memoria.

Se requiere la comunicación entre los nodos de proceso para coordinar las

operaciones y mover los datos. Los datos pueden ser intercambiados, pero no

compartidos. Dado que los procesadores no comparten un espacio de

direcciones común, no hay problemas asociados con tener múltiples copias de

los datos, y por tanto los procesadores no tienen que competir entre ellos para

obtener sus datos. Ya que cada nodo es un sistema completo, por si mismo

(incluso sus propios dispositivos de entrada/salida si son necesarios), el único

límite práctico para incrementar las prestaciones añadiendo nuevos nodos, esta

dictado por la topología empleado para su interconexión. De hecho, el esquema

de interconexión (anillos, matrices, cubos, …), tiene un fuerte impacto en las

prestaciones de estos sistemas. Además de la complejidad de las

interconexiones, una de las principales desventajas de estos sistemas, como es

evidente, es la duplicación de recursos caros como memoria, dispositivos de

entrada/salida, que además están desocupados en gran parte del tiempo.

2.Multiprocesadores de memoria compartida (shared-memory multiprocessors),

también llamados multiprocesadores estrechamente acoplados (tightly coupled

multiprocessors). Son sistemas con múltiples procesadores que comparten un

único espacio de direcciones de memoria. Cualquier procesador puede acceder

a los mismos datos, al igual que puede acceder a ellos cualquier dispositivo de

entrada/salida. El sistema de interconexión más empleado para estos casos, es

el de bus compartido (shared-bus). Tener muchos procesadores en un único bus

tiene el inconveniente de limitar las prestaciones del sistema a medida que se

añaden nuevos procesadores. La razón es la saturación del bus, es decir, su

sobre utilización; en un sistema de bus compartido, se deriva por la contienda

entre los diferentes dispositivos y procesadores para obtener el control del bus,

para obtener su utilización. Es evidente, que los sistemas actuales tienden al uso

de arquitecturas de memoria compartida, fundamentalmente por razones de

costes, a pesar del problema de la contienda por el bus. Los tres fuentes

fundamentalmente responsables de dicha disputa son la memoria (cada CPU

debe usar el bus para acceder a la memoria principal), la comunicación (el bus

es usado por los “bus masters” para la comunicación y coordinación), y la

latencia de la memoria (el subsistema de memoria mantiene al bus durante las

transferencias de datos, y en función de la velocidad a la que la memoria puede

responder a las peticiones, puede llegar a ser un factor muy significativo). Los

sistemas de memoria caché y el multiproceso: Los sistemas de memoria

multinivel (caché) son un esfuerzo para evitar el número de peticiones realizadas

por cada CPU al bus. Los caches son pequeñas y rápidas (y por tanto caras)

memorias, que hacen de tampón (buffer) entre la CPU y la memoria externa,

para mantener los datos y/o instrucciones. Se basan en el principio de la

“localidad”, lo que significa que, dada la fundamental naturaleza secuencial de

los programas, los siguientes datos o instrucciones requeridas, estarán

localizadas inmediatamente a continuación de las actuales. Los datos

contenidos en la memoria caché se organizan en bloques denominados líneas.

Las líneas son cargadas en el caché como copias exactas de los datos situados

en la memoria externa. Para referenciar a los datos de la memoria caché, se

emplean marcas (tags) que identifican a cada línea. Las marcas o tags emplean

una porción de la dirección física de los datos, para compararla con la dirección

física solicitada por la CPU. Cuando existe una coincidencia exacta de la

dirección y de otros cualificadores (estado, privilegio, contexto, etc.), se dice que

ha tenido lugar un acierto (hit) de caché; en caso contrario, tiene lugar un fallo

(miss) del caché, y en ese caso, los datos han de ser recuperados desde la

memoria. El empleo de memoria caché se ha popularizado, como medida para

acelerar el tiempo de acceso a la memoria principal, incluso en los sistemas

monoprocesador, evitando así, según se incrementa la velocidad de los propios

procesadores, aumentar la velocidad de dicha memoria, y por tanto encarecer el

sistema. La forma en que la memoria es actualizada por los cachés locales

puede tener un gran impacto en las prestaciones de un sistema multiprocesador.

Básicamente hay dos métodos: 1.Escritura continua (write-through). Requiere

que todas las escrituras realizadas en el caché actualicen asimismo los datos de

la memoria principal. De esta forma, la memoria principal siempre tiene la última

copia de los datos, y por tanto no hay nunca ninguna incoherencia con el caché.

El inconveniente es que se producen frecuentes accesos a memoria,

especialmente superfluos cuando el software está modificando las mismas

secciones de datos repetidamente (por ejemplo ejecutando bucles). 2.Copia

posterior (copy-back). Es un sistema mucho más eficiente, aunque también más

complejo de implementar. En este caso, la CPU puede modificar la línea de

caché sin necesidad de actualizar inmediatamente la memoria principal. Los

datos sólo son copiados a la memoria principal cuando la línea de caché va a

ser reemplazada con una nueva. Ello no solo minimiza el tráfico del bus, de vital

importancia para el resto de los procesadores, sino que también libera al

procesador de la tarea de escribir en la memoria principal. Sin embargo, este

sistema, en una arquitectura de bus compartido, implica un nuevo nivel de

dificultad, denominado coherencia o consistencia (coherency o consistency);

dado que cada caché puede tener una copia de los datos existentes en la

memoria principal, el desafío es asegurar que los datos permanecen iguales

entre todos los caches. Hay dos métodos para mantener cada línea de caché

idéntica a las demás: a. Escritura radiada (write-broadcast), que requiere que la

CPU que modifica los datos compartidos actualice los otros caches, para lo cual

escribe en el bus la dirección de los datos, y los datos mismos, de modo que

todos los dispositivos interesados (otras CPU’s) los capturen. Esto asegura que

cada línea de caché en el sistema es una copia exacta de las demás. b.

Escritura invalidada (write-invalidate), impide a una CPU modificar los datos

compartidos en su caché hasta que otros caches han invalidado sus copias. En

cuanto otros caches invalidan sus líneas, el caché modificado tiene la única

copia; de este modo, se garantiza que un sólo caché escribe una línea

compartida en un momento dado. Tiene la ventaja de conservar el ancho de

banda del bus ya que los datos modificados no tienen que ser enviados a otros

caches. Ambos sistemas requieren que los caches sean capaces de identificar

peticiones en el bus que afecten a sus datos, lo que se realiza con una técnica

conocida como “sondeo del bus” (bus snooping). Cada caché compara las

direcciones de las peticiones en el bus compartido con los datos en su propio

cache, usando las marcas (tags). Este sistema requiere un acceso concurrente a

las marcas (tags) del caché por parte del bus del sistema y del bus del

procesador. Sin dicho acceso concurrente, el procesador no podría acceder al

caché durante las operaciones de sondeo del bus (que tienen que tener

prioridad de acceso a las marcas, para poder mantener la coherencia del caché).

El resultado son frecuentes atascos del procesador y consecuentemente, bajo

rendimiento. A su vez, hay varios protocolos asociados con el sondeo del bus

para el movimiento de los datos y los mensajes entre los caches: 1.Intervención

indirecta de los datos (indirect data intervention). Es el método más simple de

intercambio de datos entre procesadores, aunque también el menos eficiente. La

1ª CPU hace una petición de datos, que es sondeada por la 2ª; tiene lugar un

acierto de sondeo (snoop hit) si dichos datos están en el caché de la 2ª CPU,

entonces esta obtiene el control del bus e indica a la 1ª que lo reintente más

tarde. La 2ª CPU escribe los datos de su caché a la memoria, y la 1ª CPU

obtiene el control del bus de nuevo, reiniciando la petición. Los datos son ahora

suministrados por la memoria. 2.Intervención directa de los datos (direct data

intervention). Los datos son suministrados directamente por la 2ª CPU a la 1ª.

Este mecanismo es aplicable fundamentalmente a los sistemas con sistemas de

cache de copia posterior (copy-back). Aunque pueden evitar muchos ciclos

comparados con la intervención indirecta, la memoria principal permanece

inconsistente con el caché, y debe de ser actualizada cuando la línea de caché

es vaciada. 3.Reflexión a memoria (memory reflection) con intervención directa.

La memoria captura los datos que han sido depositados en el bus, mientras son

enviados a la CPU solicitante. Si la línea de caché no ha sido modificada antes

de que tenga lugar la última transacción de intervención de datos, no es

necesario escribir a la memoria, con lo que se conserva el ancho de banda. Esta

actualización del cache solicitante y la memoria puede tener lugar en un mismo y

único ciclo de reloj. 5. Lenguajes De Programación Al desarrollarse las primeras

computadoras electrónicas se dio la necesidad de programarlas para realizar

tareas útiles. En un principio se programaban conectando cables en distintas

posiciones para lograr así un resultado, se usaban como calculadoras simples

para realizar operaciones de una por una. En los años cincuentas se empezaron

a desarrollar lenguajes para programar las tareas de las computadoras. El más

primitivo de los lenguajes de alto nivel es FORTRAN, COBOL también es un

veterano. FORTRAN mostró el uso de expresiones simbólicas y subrutinas y

COBOL el concepto de descripción de datos. Evolución Los lenguajes más

primitivos eran lenguajes de máquina, o sea programar con base a números que

la máquina entendiera. Esto es muy complicado y propenso a errores, pero no

había alternativa. El primer gran logro fue el lenguaje ensamblador, junto con él,

el nacimiento de herramientas automáticas para generar el lenguaje máquina.

Aunque en este lenguaje sigue siendo difícil no equivocarse, ya que se debe

trabajar de la misma forma en que trabaja el procesador y entender bien su

funcionamiento. El lenguaje ensamblador es una abstracción del lenguaje

máquina, que asocia palabras fáciles de entender para el ser humano con

números que puede entender la maquina. Traduciendo así los códigos del

lenguaje al lenguaje máquina directamente. Esto se hacía mediante unas tablas

de códigos, haciendo la traducción a mano, pero dada la sencillez de la

traducción pronto aparecieron los primeros programas ensambladores que

realizaban dichas traducciones al lenguaje maquina, también conocido como

código objeto. Con el desarrollo en los años cincuentas y sesentas de los

algoritmos de mas alto nivel, junto con el aumento del poder del hardware,

científicos de otras ramas empezaron a utilizar las computadoras, pero no

sabían mucho de computación. Entonces se creó el primer lenguaje de alto nivel

junto con el propio concepto, nació el primer compilador FORTRAN.

Aumentando la productividad al escribir un código sencillo, con la herramienta

del compilador que traduce el código al lenguaje máquina de manera

automática. A partir de esto se han desarrollado otros lenguajes de alto nivel,

entre ellos el lenguaje c, y cobol. Cabe destacar que dadas ciertas

características del lenguaje c, este se considera de nivel medio ya que puede

ser usado como lenguaje de alto nivel con sus instrucciones en ingles y sus

librerías, pero tiene características de un lenguaje de bajo nivel, ya que fue

escrito para diseñar sistemas operativos. Lenguajes de alto nivel. Los lenguajes

de alto nivel se caracterizan porque utilizan palabras y frases más fáciles de

entender para las personas. Como palabras en ingles o frases abreviadas.

FORTRAN. FO Rmula? TRA Nslator?, traductor de formula, uno de los primeros

de alto nivel. COBOL. Comon Business Oriented Languaje, lenguaje orientado a

negocios comunes. Uno de los primeros. BASIC. Beginners Allpurpose Symbolic

Instruction Code, código de instrucción simbólica de propósito general dirigido a

principiantes, Comenzó como un lenguaje herramienta para enseñar

programación a principiantes. PASCAL. Se diseñó para enseñar programación

estructurada, se considera que es excelente en este aspecto y aun se sigue

usando con el mismo fin. Lenguaje C. Predecesor del lenguaje B, fue

desarrollado para escribir UNIX, es muy poderoso, ya que con este lenguaje se

puede hacer casi todo lo que la computadora puede realizar, es portable, o sea

que puede ser compilado en diferentes sistemas operativos con muy pocos

cambios, a diferencia de otros que no pueden ser compilados en diversos

sistemas operativos. Es sumamente ligero y rápido, un programa hecho en

vbasic es de 50 a 100 veces más pesado que uno echo en c. Nunca podrá

desligarse el software del hardware, es importante tomar en cuenta qué lenguaje

se utilizará para desarrollar alguna clase de proyecto. Por ejemplo, si se requiere

alguna aplicación de oficina en modo gráfico, que no requiera de mucho

desempeño tal vez visual basic o visual C++ para Windows sea buena opción, o

si se requiere de una aplicación para Internet donde se tiene un buen ancho de

banda pues Java sería una buena opción, en cambio, si se quiere un

desempeño eficaz, donde este sea crucial, pues c es el lenguaje apropiado, o

para aplicaciones de internet que requieran rapidez en la respuesta, HTML +

lenguaje c sería eficaz. Aunque sería una perdida de tiempo y esfuerzo tener

que hacer un programa en c si se cuenta con un software potente que soporte

bien lenguajes más pesados como Fox pro o Python, y en cambio sería una

tontería querer implementar una base de datos en basic si se cuenta con pocos

recursos. Clases de computadoras 1. Análoga

La computadora análoga es la que acepta y procesa señales continuas, tales

como: fluctuaciones de voltaje o frecuencias. Ejemplo: El termostato es la

computadora análoga más sencilla. 2. Digital

La computadora digital es la que acepta y procesa datos que han sido

convertidos al sistema binario. La mayoría de las computadoras son digitales. 3.

Híbrida

La computadora híbrida es una computadora digital que procesa señales

análogas que han sido convertidas a forma digital. Es utilizada para control de

procesos y en robótica. 4. Propósito especial

La computadora de propósito especial está dedicada a un solo propósito o tarea.

Pueden ser usadas para producir informes del tiempo, monitorear desastres

naturales, hacer lecturas de gasolina y como medidor eléctrico. Ejemplo: carros

de control remoto, horno microoondas, relojes digitales, cámaras, procesador de

palabras, etc. 5. Propósito general

La computadora de propósito general se programa para una variedad de tareas

o aplicaciones. Son utilizadas para realizar cálculos matemáticos, estadísticos,

contabilidad comercial, control de inventario, nómina, preparación de inventario,

etc. Ejemplo: “mainframes” o minicomputadoras.

Categorías de las computadoras · Supercomputadora

La supercomputadora es lo máximo en computadora, 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 lo 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. · ”Mainframe”

Los “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. confién 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. · Minicomputadora

La 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”. Su costo está entre los cincuenta mil hasta varios cientos de

miles. 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

mayoria usa una batería como fuente de poder. Pesan entre 15 y 20 lbs.

* “Laptop”

La computadora “laptop” tiene una pantalla plana y pesa entre 5 y 12 lbs.

* “Notebook”

La computadora “notebook” es más pequeña y pesa alrededor de 5 lbs. o

menos. Ejemplo: Toshiba’s 486 SX.

c. “Palmtop”

Es la computadora del tamaño de una calculadora de manos. Utiliza bateria y

puede ser conectada a la desktop para transferir datos. Ejemplos: Apple Newton,

Hewlett-Packard’s 95 LX.

Las Computadoras y las Redes Clasificación de las computadoras ·

Supercomputadoras · Macrocomputadoras · Minicomputadoras ·

Microcomputadoras o PC Supercomputadoras Una supercomputadora es el tipo

de computadora más potente y más rápida que existe en un momento dado.

Estas máquinas fueron diseñadas para realizar una tarea específica y para

procesar enormes cantidades de información en corto tiempo. Así mismo son las

más costosas, sus precios alcanzan los 30 millones de dólares y más. Por eso

mismo son muy pocas las supercomputadoras que se construyen en un año.

Estas computadoras cuentan con un control de temperatura especial para

disipar el calor que algunos de sus componentes alcanzan a tener. Algunos

ejemplos de tareas a las que son expuestas las supercomputadoras son los

siguientes: · Búsqueda y estudio de la energía y armas nucleares. · Búsqueda

de yacimientos petrolíferos con grandes bases de datos sísmicos. · El estudio y

predicción de tornados. · El estudio y predicción del clima de cualquier parte del

mundo. · La elaboración de maquetas para proyectos especializados en la

creación de aviones y simuladores de vuelos Macrocomputadoras Las

macrocomputadoras son también conocidas como “Mainframes”. Éstas son

grandes, rápidas y costosas. Son sistemas capaces de controlar cientos de

usuarios simultáneamente, así como cientos de dispositivos de entrada y salida.

Los “mainframes” tienen un costo que va desde 350,000 dólares hasta varios

millones de dólares. Se dice que de alguna manera los “mainframes” son más

poderosos que las supercomputadoras porque soportan más programas

simultáneamente. Sin embargo, las supercomputadoras pueden ejecutar un sólo

programa más rápido que un “mainframe”. En el pasado, los “mainframes

ocupaban cuartos completos y hasta pisos enteros de algún edificio.

Actualmente, un “mainframe” es parecido a una hilera de armarios o anaqueles

para archivos usualmente con un falso piso para ocultar los cientos de cables de

los periféricos. Todavía su temperatura tiene que estar controlada aunque

generan menos calor que las supercomputadoras. Tipos de Computadoras y

Redes SALP 6001 Preparado por Prof. Lillian E. Ríos Rodríguez 2

Minicomputadoras En 1960, surgió la minicomputadora, una versión más

pequeña de la macrocomputadora. Al ser orientada a tareas específicas, no

necesitaba de todos los periféricos que necesita un “mainframe”. De algún modo

eso contribuyó a reducir el precio y costos de mantenimiento. Las

minicomputadoras, en tamaño y poder de procesamiento, se encuentran entre

los “mainframes” y las estaciones de trabajo. En general, una minicomputadora,

es un sistema multiproceso (varios procesos en paralelo) capaz de soportar de

10 hasta 200 usuarios simultáneamente. Actualmente se usan para almacenar

grandes bases de datos, automatización industrial y aplicaciones multiusuario

Microcomputadoras Las microcomputadoras o computadoras personales (PC´s)

tuvieron su origen con la creación de los microprocesadores. Las PC´s son

computadoras para uso personal y son relativamente económicas. Actualmente

se encuentran en las oficinas, escuelas y hogares. El término PC surge porque

para el año de 1981 , IBM puso a la venta su modelo “IBM PC”. Ésta se convirtió

en el tipo de computadora ideal de uso personal. De ahí que el término “PC” se

estandarizó y los clones de otras empresas y que salieron posteriormente fueron

llamados “PC y compatibles”. Esos clones utilizaban procesadores del mismo

tipo que las IBM, podían ejecutar el mismo tipo de programas pero a un costo

menor. Existen otros tipos de microcomputadoras, como la Macintosh, que no

son compatibles con la IBM, pero que en muchos de los casos se les llaman

también “PC´s”, por ser de uso personal. Existen variados tipos en el diseño de

PC´s: · Computadoras personales, con el gabinete tipo minitorre (“minitower”),

separado del monitor. · Computadoras personales portátiles “Laptop” o

“Notebook”. Las computadoras “laptops” son aquellas computadoras que están

diseñadas para poder ser transportadas de un lugar a otro. Se alimentan por

medio de baterías recargables y la mayoría trae integrada una pantalla de LCD

(Liquid Crystal Display) · Computadoras personales más comunes, con el

gabinete horizontal, separado del monitor. · Computadoras personales que están

en una sola unidad compacta el monitor y el CPU. · Estaciones de trabajo o

“Workstations”. Las estaciones de trabajo se encuentran entre las

Minicomputadoras y las macrocomputadoras (por el procesamiento). Las

estaciones de trabajo son un tipo de computadoras que se utilizan para

aplicaciones que requieran de un poder de procesamiento moderado y Tipos de

Computadoras y Redes SALP 6001 Preparado por Prof. Lillian E. Ríos

Rodríguez 3 capacidades de gráficos de relativa alta calidad. Son usadas para:

Aplicaciones de ingeniería CAD (Diseño asistido por computadora), CAM

(manufactura asistida por computadora) y Publicidad para Creación de Software

en redes. La palabra “workstation” o “estación de trabajo” se utiliza para referirse

a cualquier computadora que está conectada a una red de área local (LAN). Los

periféricos Se le llama periférico a cualquier dispositivo o aparato que podamos

conectar a la computadora para diversos fines, tales como impresoras, cámaras

de video, teclado, el ratón y el monitor, entre otros. La computadora tiene

distintas vías de comunicación con su parte externa, generalmente por su parte

trasera, a fin de conectar cualquier componente adicional a través de las cuales

recibe y envía datos . A esas vías se les conoce como unidades de entrada o

unidades de salida, que en inglés se especifican como “input devices ” y “output

devices”. Algunas de estas vías ya están predispuestas, listas para conectar

algo, como es el caso del puerto paralelo (el conector donde se acopla el cable

de la impresora), el puerto serie donde va insertado el cable del ratón, así como

la conexión para el monitor y el teclado. Otras de las vías están internamente, en

este caso los slots de expansión, una serie de ranuras donde se pueden insertar

tarjetas (placas electrónicas) que sirvan de interfaz entre la máquina y

determinados periféricos. Los periféricos se pueden dividir en dos grandes

grupos: internos (que van afuera de la computadora) y externos (que pueden

operarse desde afuera). Por ejemplo, la impresora o el escáner son externos, en

tanto que el resto de los periféricos pueden ser tanto una cosa como la otra. En

caso de tener demasiados dispositivos instalados en forma interna, lo mejor es

optar por los externos. Los periféricos más comunes son los siguientes: ·

Teclado y el mouse · Disco rígido · Impresora · Monitor · Módem · Escáner ·

Lector de CD-ROM · Placas de sonido o de video · Zip drive El teclado y el ratón

(“mouse”) son los periféricos más fáciles de instalar e incluso se venden con el

resto de la computadora. Enchufar un teclado no tiene mayores secretos. Una

vez conectado, la máquina lo detecta. En cuanto a los monitores, hay una gran

variedad de tamaños y de calidad y su conexión no trae mayores

inconvenientes: el cable se conecta directamente a la salida de la tarjeta de

video. Después sólo hay que hacer unos cuantos ajustes en la pantalla para

indicarle a la PC qué grado de nitidez se prefiere. Tipos de Computadoras y

Redes SALP 6001 Preparado por Prof. Lillian E. Ríos Rodríguez 4 El módem,

que puede ser externo o interno. Instalar un módem externo no debería traer

muchas complicaciones. Un CD-ROM externo puede conectarse al puerto

paralelo de la computadora. Claro que también puede ser SCSI e insertarse

directamente a su respectiva tarjeta. Una lectora o una grabadora de CD-ROM

interna puede instalarse mediante una controladora IDE o una SCSI. Los “Zip

Drive”, unidad de almacenamiento de información. Tienen capacidad para

guardar 100 MB o más. Éstos son muy útiles para hacer copias de seguridad

(“backups”). También hay modelos internos y externos. En caso de que sea

externo, un Zip Drive puede instalarse por intermedio del puerto paralelo. Con

uno interno, se debe poner en la parte frontal de la máquina (sacando primero la

tapita de plástico) y luego la conexión puede ser a través de una tarjeta IDE o

una SCSI. La única excepción son los llamados Jaz, que son SCSI. Redes La

más simple de las redes conecta dos computadoras, permitiéndoles compartir

archivos e impresos. Una red mucho más compleja conecta todas las

computadoras de una empresa o compañía en el mundo. Una red informática se

puede definir como un conjunto de equipos conectados entre sí con la finalidad

de compartir información y recursos. Es decir, es un conjunto de ordenadores,

impresoras y otros medios informáticos conectados entre sí. Usualmente, con el

fin de compartir eficientemente archivos y ejecutar aplicaciones de red, se

utilizan tarjetas de interfaz de red (Net Ware? Interface Cards o NIC) y cables

para conectar los sistemas. Una red es, en pocas palabras, el lugar físico por

donde viaja la información. Componentes de una Red · Servidor Este

computador ejecuta el sistema operativo de red y ofrece los servicios de red a

las estaciones de trabajo. · Estaciones de trabajo Cuando una computadora se

conecta a una red, la primera se convierte en un nodo de la última y se puede

tratar como una estación de trabajo o cliente. Las estaciones de trabajos pueden

ser computadoras personales con casi cualquier sistema operador. · Tarjeta de

interfaz de red Toda computadora que se conecta a una red necesita de una

tarjeta de interfaz de red que soporte un esquema de red especifico, como

Ethernet, Arc Net? o Token Ring. El cable de red se conectará a la parte trasera

de la tarjeta. Hay tarjetas de interfaz de red disponibles de diversos fabricantes.

Se pueden elegir entre distintos tipos, según se desee configurar o cablear la

red. Los tres tipos más usuales son Arc Net?, Ethernet y Token Ring. Tipos de

Computadoras y Redes SALP 6001 Preparado por Prof. Lillian E. Ríos

Rodríguez 5 Las diferencias entre estos distintos tipos de red se encuentran en

el método y velocidad de comunicación, así como el precio. Actualmente se

pueden adquirir tarjetas de interfaz de red que admiten diversos medios, lo que

hace mucho más fácil la planificación y configuración de las redes. En la

actualidad las decisiones se toman en función del costo, distancia del cableado y

topología a utilizar. · Sistema de cableado El sistema de la red está constituído

por el cable utilizado para conectar entre sí el servidor y las estaciones de

trabajo. Hace un tiempo el cableado estaba más estandarizado que ahora. Arc

Net? y Ethernet usaban cable coaxial y Token Ring usaba par trenzado. El cable

coaxial fue uno de los primeros que se usaron, pero el par trenzado fue ganando

popularidad. El cable de fibra óptica se utiliza cuando es importante la velocidad,

si bien los avances producidos en el diseño de las tarjetas de interfaz de red

permiten velocidades de transmisión sobre cable coaxial o par trenzado por

encima de lo normal. Actualmente el cable de fibra óptica sigue siendo la mejor

elección cuando se necesita una alta velocidad de transferencia de datos. ·

Recursos y periféricos compartidos Entre los recursos compartidos se incluyen

los dispositivos de almacenamiento conectados al servidor, las unidades de

discos ópticos, las impresoras, los trazadores y el resto de equipos que puedan

ser utilizados por cualquier usuario de la red Las redes se pueden clasificar

según su extensión y según su topología. De acuerdo a su extensión o

distribución geográfica se pueden tipificar de la siguiente manera: · red de área

local (local area network o LAN) Ésta es una red red pequeña (3 a 50 nodos),

localizada normalmente en un solo edificio perteneciente a una organización ·

red de área metropolitana (metropolitan area network o MAN) Una red de área

metropolitana es un sistema de interconexión de equipos informáticos

distribuídos en una zona que abarca diversos edificios, por medios

pertenecientes a la misma organización propietaria de los equipos.

Habitualmente, este tipo de redes se utiliza para interconectar redes de área

local. Son normalmente redes de fibra óptica de gran velocidad que conectan

segmentos de red local de un área especifica, como un campus, un polígono

industrial o una ciudad. · red de área amplia o extensa (wide area network o

WAN) - Una red de área extensa es un sistema de interconexión de equipos

informáticos geográficamente dispersos, incluso en continentes distintos.

Permiten la interconexión nacional o mundial mediante líneas telefónicas y

satélites. Las Tipos de Computadoras y Redes SALP 6001 Preparado por Prof.

Lillian E. Ríos Rodríguez 6 líneas utilizadas para realizar esta interconexión

suelen ser parte de las redes públicas de transmisión de datos. La topología de

una red define únicamente la distribución del cable que interconecta los

diferentes ordenadores, es decir, es el mapa de distribución del cable que forma

la red. Define cómo se organiza el cable de las estaciones de trabajo. A la hora

de instalar una red, es importante seleccionar la topología más adecuada a las

necesidades existentes. Hay una serie de factores a tener en cuenta a la hora de

decidirse por una topología de red concreta y son :la distribución de los equipos

a interconectar, el tipo de aplicaciones que se van a ejecutar, la inversión que se

quiere hacer, el costo que se quiere dedicar al mantenimiento y actualización de

la red local, el tráfico que va a soportar la red local y la capacidad de expansión.

Las tres principales maneras de clasificar redes de acuerdo a su topología son: ·

Anillo Es una de las tres principales topologías de red. Las estaciones están

unidas una con otra formando un círculo por medio de un cable común. Las

señales circulan en un solo sentido alrededor del círculo, regenerándose en

cada nodo. · Estrella Es otra de las tres principales topologías. La red se une en

un único punto, normalmente con control centralizado, como un concentrador

(“hub”) de cableado. El concentrador es un equipo que permite estructurar el

cableado de las redes. La variedad de tipos y características de estos equipos

es muy grande. En un principio eran solamente concentradores de cableado,

pero cada vez disponen de mayor número de capacidades, como aislamiento de

tramos de red, capacidad de conmutación de las salidas para aumentar la

capacidad de la red, gestión remota, etc. La tendencia es a incorporar más

funciones en el concentrador. · Bus Es la tercera de las topologías principales.

Las estaciones están conectadas por un único segmento de cable. A diferencia

del anillo, el bus es pasivo, no se produce regeneración de las señales en cada

nodo. Existe otras formas topológicas que en general son combinaciones de las

tres antes descritas. Sin embargo, es importante mencionar que no se debe

confundir el término topología con el de arquitectura. La arquitectura de una red

engloba la topología, el método de acceso al cable y el protocolo de

comunicación. Actualmente la topología está directamente relacionada con el

método de acceso al cable, puesto que éste depende casi directamente de la

tarjeta de red y ésta depende de la topología elegida. Tipos de Computadoras y

Redes SALP 6001 Preparado por Prof. Lillian E. Ríos Rodríguez 7 Protocolos

Los protocolos de comunicación son las reglas y procedimientos utilizados en

una red para establecer la comunicación entre los nodos que tienen acceso a la

red. Los protocolos de comunicación definen las reglas para la transmisión y

recepción de la información entre los nodos de la red, de modo que para que

dos nodos se puedan comunicar entre sí es necesario que ambos empleen la

misma configuración de protocolos. Los protocolos gestionan dos niveles de

comunicación distintos. Las reglas de alto nivel definen como se comunican las

aplicaciones, mientras que las de bajo nivel definen como se transmiten las

señales por el cable. El protocolo de bajo nivel es básicamente la forma en que

las señales se transmiten por el cable, transportando tanto datos como

información y los procedimientos de control de uso del medio por los diferentes

nodos. Los protocolos de bajo nivel más utilizados son: Ethernet, Token ring,

Token bus, FDDI, CDDI, HDLC, Frame Relay y ATM. El protocolo de red

determina el modo y organización de la información (tanto los datos como los

controles) para su transmisión por el medio físico con el protocolo de bajo nivel.

Los protocolos de red más comunes son: IPX/SPX, DE Cnet?, X.25, TCP/IP,

Apple Talk? y Net BEUI?. Servicios de la red La finalidad de una red es que los

usurarios de los sistemas informáticos de una organización puedan hacer un

mejor uso de los mismos mejorando de este modo el rendimiento global de la

organización. Así las organizaciones obtienen una serie de ventajas del uso de

las redes en sus entornos de trabajo. Para que todo esto sea posible, la red

debe prestar una serie de servicios a sus usuarios, como son: · Acceso Control

de acceso - para el control de acceso, el usuario debe identificarse conectando

con un servidor en el cual se autentifica por medio de un nombre de usuario y

una clave de acceso o contraseña (“password”). Si ambos son correctos, el

usuario puede conectarse a la red. Acceso remoto - en este caso, la red está

conectada con redes públicas que permiten la conexión de estaciones de trabajo

situadas en lugares distantes. Dependiendo del método utilizado para establecer

la conexión el usuario podrá accesar a unos u otros recursos. · Archivos y

Almacenamiento El servicio de archivos consiste en ofrecer a la red grandes

capacidades de almacenamiento para descargar o eliminar los discos de las

estaciones. Esto Tipos de Computadoras y Redes SALP 6001 Preparado por

Prof. Lillian E. Ríos Rodríguez 8 permite almacenar tanto aplicaciones como

datos en el servidor, reduciendo los requerimientos de las estaciones · Impresión

Permite compartir impresoras entre múltiples usuarios reduciendo gastos.

Existen equipos servidores con capacidad de almacenamiento propio donde se

almacenan los trabajos en espera de impresión, lo cual permite que los clientes

se descarguen de esta información con más rapidez. · Correo electrónico El

correo electrónico es la aplicación de red más utilizada. Permite claras mejoras

en la comunicación frente a otros sistemas. Por ejemplo, es más cómodo que el

teléfono porque se puede atender al ritmo determinado por el receptor, no al

ritmo de los llamantes. Además tiene un costo mucho menor para transmitir

iguales cantidades de información. Frente al correo convencional tiene la clara

ventaja de la rapidez. · Información Permite compartir programados, bases de

datos, gráficos y cualquier tipo de archivo, además de la posibilidad de acceso a

información a través del internet. · Otros Estaciones integradas con voz y datos,

telefonía integrada, sevidores de imágenes y videoconferencias, entre otros.

Para más información sobre redes, el internet, su historia y otros asuntos

relacionados, visite el sitio

1.4 Componentes de un Sistema de Computo

En base a la función que realiza un sistema de cómputo tiene cuatro

componentes: entrada, procesamiento, salida y almacenamiento.

ENTRADA: Es la operación de lectura que hace la computadora de los datos.

PROCESAMIENTO: Son las operaciones de cálculo ( suma, resta,

multiplicación, división, exponenciación ) y lógicas (menor, maryor, igual o <, , =)

que una computadora realiza a los datos.

ALMACENAMIENTO/SALIDA: Son las operaciones de escritura que hace la

computadora de los datos procesados.

CAPACIDADES DE UN SISTEMA :

Un sistema de cómputo presenta cuatro capacidades importantes y que de

manera definitiva influyen en el usuario para usarlo:

VELOCIDAD: Realización de varias actividades ejecutando instrucciones. Estas

se miden en milisegundos, microsegundos, nanosegundos y picosegundos

( milésima, millonésima, mil millonésima y billonésima de segundo ).

PRECISION: Prácticamente en un sistema no ocurren errores. CONFIABILIDAD:

Son expertos en tareas repetitivas, no toman descansos ni se quejan.

CAPACIDAD DE MEMORIA: Los sistemas tienen una memoria total e

instantánea de los datos y una capacidad casi ilimitada de almacenamiento. Con

el fin de comprender mejor la estructura de un sistema de cómputo en este curso

se tratarán por separado el Software y Hardware. l terminar.

nancy neri diaz miguel liñan rodriguez

Componentes de la Computadora

Todas las computadoras, desde el más pequeño microsistema hasta los más

complejos, están compuestos de cuatro componentes básicos. Estos

componentes son:

Unidad Central de Proceso: También llamada CPU o UCP, está formado por dos

unidades principales: La unidad de Control, representa el “corazón” de un

computador, encargándose de controlar y coordinar toda la actividad del

procesamiento de datos, incluyendo el control de todos los dispositivos de

Entrada/Salida (en adelante E/S), coordinar la entrada y salida de datos e

información de las diferentes memorias, determinar las direcciones de las

operaciones aritméticas y lógicas, y seleccionar, interpretar y enviar a ejecutar

las instrucciones de los programas. La unidad aritmética y lógica, es la

encargada de ejecutar todos los cálculos matemáticos (Suma, resta,

multiplicación y división) y todas las comparaciones lógicas. Unidades de

Memoria: Un computador personal posee básicamente dos tipos de memoria: La

Memoria Principal, dividida a su vez en memoria sólo de lectura (ROM: Read

Only Memory), y la memoria que puede leerse, borrarse y actualizarse (RAM:

Random Access Memory). La ROM es el área de la memoria donde el fabricante

de la computadora graba todos los datos e instrucciones necesarias para el

funcionamiento del computador. El usuario tiene acceso a esta memoria para

leerla pero no puede grabar ni cambiar absolutamente nada en ella. El contenido

de esta memoria es permanente y con la ausencia del flujo electrónico no

desaparece.

La RAM es el área de memoria principal disponible para satisfacer las

necesidades de programación del usuario, es allí donde se guardan los datos y

los programas a ejecutarse en un momento determinado. Esta memoria es

volátil, significa que su contenido se pierde al apagarse el computador.

Generalmente el tamaño de memoria de los computadores está determinado por

la cantidad de memoria RAM que posea.

La Memoria Auxiliar. La capacidad de almacenamiento en memoria principal es

limitada, situación diferente se presenta para la memoria auxiliar que es

ilimitada, todo medio magnético, diskette, zip, cassette, cinta, disco, cd, etcétera,

se considera como memoria auxiliar sirviendo este para guardar todos los datos

y programas deseados. Dispositivos de Entrada y /o Salida: Nunca debe haber

confusión entre dispositivo y medio magnético, los dispositivos son las máquinas

electromecánicas que manipulan los medios magnéticos. Existen dispositivos de

entrada y/o salida de toda índole. Una computadora debe tener al menos un

dispositivo de entrada y otro de salida o uno con las dos funciones.

El Hard Ware ? Según la Organización Internacional de Estándares, el Hardware

son todos los dispositivos físicos utilizados en el procesamiento de datos, que en

su conjunto forman una computadora o un Sistema de Cómputo. Por lo que

podemos decir que hardware es todo lo que el usuario puede ver y tocar en un

sistema de computación, por ejemplo, el monitor, el teclado, las unidades de

disco, la impresora, el mouse, scanner, etcétera. El Soft Ware ? Según la

Organización Internacional de Estándares, el Software son todos los programas,

procedimientos, reglas y cualquier documentación relacionada a la operación de

un Sistema de Cómputo. Por lo anterior, es todo lo que no podemos ver, mucho

menos tocar, o ¿puedes tocar un programa? El Firm Ware ? El Firm Ware es un

concepto recientemente introducido y se refiere a la lógica “alambrada” para

realizar ciertas funciones incorporadas en ciertas computadoras, a menudo en

forma de ROM. Procesamiento de la Información Las computadoras son

complejas desde el punto de vista técnico, pero simples desde el punto de vista

conceptual. Un sistema de computadora tiene sólo tres componentes

fundamentales para el procesamiento de información: Unidades de Entrada,

Unidades de Salida y/o Almacenamiento, y Unidades de Proceso. La Unidad de

Proceso es la más importante. Es la responsable de todo el trabajo en la

computadora. Controla el ingreso, almacenaje, proceso y salida de los datos por

medio de órdenes directas o previamente almacenadas. A la unidad de proceso

también se le conoce popularmente como CPU.

Un sistema de cómputo puede compararse con el sistema biológico del cuerpo

humano. El cerebro es la unidad de proceso, los ojos y oídos son componentes

de entrada que envían señales al cuerpo. Las cuerdas vocales, por ejemplo,

podrían ser los componentes de salida.

El sistema de informe de calificaciones, ilustra la interacción entre los tres

componentes del sistema de computadora. Las calificaciones que los alumnos

obtienen en sus clases son proporcionadas como entrada al sistema. Estas se

almacenan (salida) en el archivo personal de cada estudiante. El informe de

calificaciones se produce cuando el componente de procesamiento ejecuta un

programa, generando un reporte impreso de calificaciones.

Los datos se introducen (entrada) utilizando generalmente un teclado semejante

al de una máquina de escribir, y se visualiza (salida) en una pantalla parecida a

una televisión.

Por favor sigue colaborando agregando mas información sobre el tema