Вы находитесь на странице: 1из 31

c 

c c
c
 
c
   c
c  c


cc 
 c 
  
 

c 



LICENCIATURA EN CIENCIAS DE LA INFORMÁTICA

INTEGRANTES:
ALFARO RAMÍREZ ALMA NAYELI
MAGAÑA VEGA CYNTHIA CORINA
RODRÍGUEZ SORIA NANCY MIREYA
TREJO SÁNCHEZ JESSICA DANIELA
URIOSTEGUI SÁNCHEZ ROSA ITZEL

ASIGNATURA:
ORGANIZACIÓN DE COMPUTADORAS

PROFESOR:
ROBERTO CARAM ESPINOSA

SEMESTRE:
TERCERO

SECUENCIA:
3CM4

TEMA:
UNIDAD 1 ³CLASIFICACION DE LAS COMPUTADORAS´

FECHA DE ENTREGA:
6-septiembre-2010

Y

Unidad 2 ARQUITECTURA DE LAS COMPUTADORA Y YY
2. Procesadores Y YY
Procesadores de microcomputadoras Y YY
Procesadores Intel Y YY
Procesadores Advanced Micro Devices (AMD) Y YY
Procesadores Freescale Y YY
Procesadores IBM Y YY
Procesadores RISC Y YY
2.1 Multiprocesadores. Y YY
Componentes de un sistema multiprocesador son: Y YY
Objetivos de un Multiprocesador Y YY
Tipos de multiprocesador: YY
åY Multiprocesador von Newman: Y YY
2.2 Arquitectura Von Newman. Y YY
2.3. Arquitecturas de Pila y Paralelo. YY
Arquitectura paralela. Y YY
Paralelismo a nivel de instrucciones. Y YY
p    
  Y YY
Arquitectura de pila. Y YY
2.4 Arquitectura Relacional. Y YY
2.5. Arquitectura Distribuida. Y Y Y
Proceso distribuido. Y Y Y
Computación Distribuida en Internet. Y YY
Los programas son clientes o servidores. Y Y
Y
Un servidor debe estar siempre en funcionamiento. Y Y
Y
2.6. Arquitectura Vectorial. Y YY
¿Por qué máquinas vectoriales? Y YY
Arquitectura vectorial básica. Y YY
2.7 OTRAS ARQUITECTURAS Y YY
Arquitectura SPARC Y YY
Estructura al cauce segmentado Y YY
ARQUITECTURA DE REPERTORIO REDUCIDO Y YY
¿PORQUE CISC?Y YY
GLOSARIO DE TERMINOS Y Y
Y
BIBLIOGRAFIAY Y
Y


c    


FIG 1. Ejemplos de procesadores

FIG. 2 El primer procesador

FIG.3 Procesadores Pentium 4, Xeon e Itanium 2

FIG.5 Procesador Athlon

FIG.6 Multiprocesador

FIG.7 Multiprocesador con memoria

FIG.8 Multiprocesador con memoria distribuida

FIG.9 CPU

FIG10. Taxonomía de las arquitecturas en paralelo

FIG 11. Opciones básicas de la pila

FIG 12. Ocho ventanas de registros que forman una pila circular en
el SPARC

FIG 13. Dos comparaciones de las aproximaciones registro a


registro y memoria a memoria.
Un   U  URA  A  UTADORA

    
El ñ t i ñ i t ,
it t , l i ti t . it t
t i l ti t i t ti t t l
l .

l t ti l IB l
t i t ti it t t i ti t i i i
j t l i ft ;l i t ti
t it j t it t ifi
li i i t .

t t í ti f t l ñ l
ti it t l z, i t l
t P t f t it
l t li i t l j it t .

÷      


        !  
?  i  I t l A it  l l
ñ , i  t i  i ,     l  úi  f i t,
t i  t t  l  l
l  l f i l     
it  .

?  f i t   i  j      t  l 


    f      l i    i  l  z.

    ntel
Itl  l    lí    i   P . E , Itl it l
i      l  l . Et it   j l  i   l 
i  i   t     z      .

÷            

 e eAdvned  Deve"AMD)


E A  i   l ii l  ti  t l ii 
Itl t l   l  P   til   IB .

 l l z it  l  i     K At l , A


     í  ti,       l   t   it   
Itl. Il  A  z        t l    
i   P .
÷ 
       !    

Modelo Uo n l eloddde ntddde


eloj tntoe

tn! Si  . z   ill 

ent!# P . z   ill 

ent!$eon Et i  z   ill 


t  j

ent! P   z   ill 


  t 

eleon B t P z   ill 

AB?A : P ESA ES I E? A A?ES

oedoe eele
?   ñí  l i  t , I.,   i i i  t  l
I.,  t     ñ   it i  i lti .

 l fi   itt          tiliz  


l    t   it  . ? i f ili       l f ili
.
?     P    l      t   l 
  t    Al. ?     P P   l  
i  l   ilt  l it  ti ?i .

÷  

oedoe%M
IB f i l  P    if  t i   t  j  lt
ñ . E , IB   i   Al l z l  l
 i   l     i    iti .

El f l       t i  t  j l  t 


 it  it i t .   t i, l  t i   Pi 
ii   i    t     l , l   l      l
lí l       iPi .

 e&'n AMDAthlon(# $ ntelent! oweM )

ntddde 
egto

T*ode it  it it


l+
l  l  1.6 GH 800 MH 1 GH
 ll
  

,- 128 KB nd nd

,  1024 KB 512 512

Tabla : especificaciones del desempe o del CPU

       
Los procesadores de las PC compatibles con IBM son lo que tienen la
tecnología computación de conjunto complejo de instrucciones (CISC).

El conjunto de instrucciones de estos CPU es grande y contiene de 200


a 300 instrucciones.

Cuando el conjunto de instrucciones para el CPU se mantiene peque o


y simple, cada instrucción se reali ara en mucho menos tiempo. Los CPU que
se dise an de acuerdo con esto se llaman procesadores de conjunto redujo de
de instrucciones (RISC).

El dise o RISC, el cual se utili a ahora en el procesador PowerPC da


como resultado un procesador más rápido y menos costoso.

- l     
Es un sistema de cómputo de dos o más CPU comparten pleno
acceso a memoria RAM com n. Un programa que se ejecuta en cualquiera de
las CPUs ve un espacio de direcciones virtual normal (por lo regular
paginado).

El multiprocesamiento un computador ejecuta una o más aplicaciones


que se componen de una serie de procesos secuenciales que cooperan entre
sí. La comunicación entre procesos se reali a mediante mensajes y se ales de
estado que pueden intercambiarse los procesadores a través de la memoria.

.  
   /   0
 1    2 
?  it   lti      jl l    itt 
iñ l   lli .

mo onentede!nte!lt oedoon:


å Elt      .
å Elt    i .
å Elt     i i.

O+jetvode!nM!lt oedo
å Al  l j i  li i .
å S   t i.
å Ej t   li i    i  ti .

T ode!lt oedo:


å M!lt oedovon ewn:


Et  itt   t t i t     t  V 
     i     .    j t    j t
 l  it i  l     i . P  ll i   
 i  t      , j   it   i Aitti ?i .

÷   

?   lti   ti V       l ifi   


 t í :
r MMm:Ô lti    Ô i  ti . 



÷    

?   it i it  l i     


 l i  ii   i . 

i   i lt
0 Ô lti     Ô i l  l.
0 Ô lti   tt A l .
0 Ô lti  .
r MMD:Ô lti    Ô i iti i . 




÷    " 
La red de interconexión permite a cualquier procesador comunicarse con
cualquiera de los procesadores del sistema.
3  4 / l 
0 Multiprocesador con Memoria Local.
0 Multiprocesador Débilmente Acoplado.
0 Multicomputador. 




.l    c1 05l l05l   0 6
  c 78969 2

 
4   c1 

John Von Newman nació el 28 de diciembre en Budapest Hungría.
John Von Newman fue un matemático brillante que hi o importantes
contribuciones a la física cuántica, a la lógica, a la meteorología, a la guerra a
la teoría a las aplicaciones de ordena dores rápidos.

.:,c1 l   ;l   2 

å Arquitectura de una computadora:


Se le llama arquitectura de una computadora a la organi ación que tiene en sus
componentes electrónicos y a la manera en como están integrados para
funcionar.

å Arquitectura de Von Newman:


La mayoría de computadoras modernas están basadas en esta arquitectura,
aunque pueden incluir otros dispositivos adicionales, (por ejemplo, para
gestionar las interrupciones de dispositivos externos como ratón, teclado, etc.).

 <  =     laar4   rac1a> 

÷ #

?       t  itt   t   i  t: ?


i itti li A?, l i   t l, l  i ,  i iti
 t  li  l    t      i    i  t  t 
l  t  t l  itit   t.

Ú A?:

? i itti li   i it   i i  l    liz 


l l  itti   li  t  ti ift li i   
ift    t  j .

? i Aitti ?i , ilt A?   Ait ti ? i


it
   l  i     f   l i t l  P  
P
 i t l  l      liz    j t   i 
itti  i  t ,   , iii   ltili i
   i 
li  , ,A , t.
.

Ú Ô i :

E if ti , l eo t i ll  lenento



fi l    t     t  , i iti   i  
l  it   ti t  if ti   t lú it l 
tiempo. Las memorias de computadora proporcionan unas de las principales
funciones de la computación moderna, la retención o almacenamiento de
información. Es uno de los componentes fundamentales de todas las
computadoras modernas que, acoplados a una unidad central de
procesamiento (  por su sigla en inglés, central processing unit ),
implementa lo fundamental del modelo de computadora de Arquitectura de von
Newmann, usado desde los a os 1940. 

Ú Unidad de control:

La unidad de control el elemento que se encarga de sincroni ar las acciones


que reali a cada una de las unidades funcionales de un computador. Las
funciones de la unidad de control son básicamente dos.

Interpretación de las instrucciones: La unidad de con trol debe ser capa de


decodificar los códigos de operación y los modos de direccionamiento de las
instrucciones y actuar de forma diferente para cada uno.

También debe controlar el secuenciamiento de las instrucciones en


función de la evolución del regist ro contador de programa.

Se llaman se ales de control a las variables binarias que controlan las


entradas y salidas de información de los registros y el funcionamiento de las
unidades funcionales.

La ejecución de una instrucción se divide en varias etapa s que deben


reali arse seg n una secuencia muy precisa de se ales de control que
establece la se al de control. Hay dos formas básicas para implementar la
unidad de control:

- Unidad de control cableada: Reali a sus funciones mediante elementos


hardware. No la anali aremos en profundidad aquí.
-Unidad de control microprogramada: Es más lenta que la anterior, pero
permite implementar instrucciones más potentes y flexibles. Será anali ada en
profundidad en los siguientes apartados.

Funcionalidad de la arquitectura de Von Newman:

Un ordenador con esta arquitectura reali a o emula los siguientes pasos


secuencialmente:

1. Enciende el ordenador y obtiene la siguiente instrucción desde la


memoria en la dirección indicada por el contador de programa y la
guarda en el registro de instrucción.
2. Aumenta el contador de programa en la longitud de la instrucción para
apuntar a la siguiente.
3. Decodifica la instrucción mediante la unidad de control. Ésta se encarga
de coordinar el resto de componentes del ordenador para reali ar una
función determinada.
4. Se ejecuta la instrucción. Ésta puede cambiar el valo r del contador del
programa, permitiendo así operaciones repetitivas. El contador puede
cambiar también cuando se cumpla una cierta condición aritmética,
haciendo que el ordenador pueda 'tomar decisiones', que pueden
alcan ar cualquier grado de complejidad , mediante la aritmética y lógica
anteriores.
5. Vuelve al paso 1.

[Introducción a las ciencias de la computación con JAVA, Elisa Viso G.]


h?
r4   rasla;arall


r4   ra aralla

Los micropresadores modernos buscan instrucciones en la memoria,


tales procesadores están estructurados de modo que contengan
muchas más unidades internas de procesamiento, cada una de las
cuales efect a una tarea específica, (teniendo presente que cada una
de estas unidades de procesamiento es en sí, un microprocesador
para fines especiali ados.) Esto significa que el microprocesador
moderno puede a menudo procesar cierto n mero de instrucciones en
forma simultánea, en diversas etapas de la ejecución. A esta
capacidad se le denomina a menudo °  . Podemos decir que
el paralelismo se presenta en dos niveles, los cuales son: paralelismo
a nivel de instrucciones y paralelismo de la máquina.

arallsa/lsruccs 

Existe paralelismo a nivel de instrucciones cuando las instrucciones


de una secuencia son independientes y por tanto pueden ejecutarse
en paralelo solapándose. Por ejemplo, consideremos los dos
fragmentos de código siguientes:
as ?
as ? sruccs 
Load R1 <-- R2 sruccs u
Add R3 <-- R3,"1"
(2*3) s jcuars 
 s0 Add R4 <-- R3,R2 arall r4u
Add R3 <-- R3,"1"
;  r<a las ? Store[R4] <-- R0 lahasrucc 
Add R4 <-- R4,R0 r<a usa l rsula
paralelismo = 1
paralelismo = 3 jcuars   la-a0 ; la?a
arall usa l rsula
laha
El paralelismo a nivel de instrucciones es función de la frecuencia de
dependencias de datos verdaderas y relativas al procesamiento que
haya en el código. Estos factores dependen a su ve de la arquitectura
del conjunto de instrucciones y de la aplicación. El paralelismo a nivel
de instrucciones depende también de algo que se denomina espera de
una operación, que es el tiempo transcurrido hasta que e l resultado de
una instrucción está disponible para ser usado como operando de una
instrucción posterior. La espera determina cuánto retardo causará una
dependencia de datos o relativa al procedimiento.
YYYY  YY Y
 Y
Y
El paralelismo de la máquina es una medida de la capacidad del
procesador de sacar partido al paralelismo a nivel de instrucciones. El
paralelismo de la máquina depende del n mero de instrucciones que
pueden captarse y ejecutarse al mismo tiempo (n mero de cauces
paralelos) y de la velocidad y sofisticación del mecanismo que usa el
procesador para locali ar instrucciones independientes.
Tanto el paralelismo a nivel de instrucciones como el paralelismo de
la máquina son factores importantes para aumentar las prestaciones.
El empleo de una arquitectura con instrucciones de longitud fija como
en un RISC, aumenta el paralelismo a nivel de instrucciones. Por otra
parte, un escaso paralelismo de máquina limitará las prestaciones sin
que importe la naturale a del programa.

Fig10. Taxonomía de las arquitecturas en paralelo

[4,608-603]

r4ucura la

La arquitectura de pila se refiere básicamente a la forma en que la


unidad central de procesamiento (CPU) almacena las instrucciones,
por lo que es así como los repertorios de instrucciones se clasifican
habitualmente por ese estado interno como máquina de pila, máquina
de acumulador o máquina de registros de propósito general.
Los operandos en una arquitectura de pila están implícitamente en el
tope de la pila; en una arquitectura de acumulador un operando esta
implícitamente en el acumulador. Las ar quitecturas de registros de
propósito general tienen solamente operandos explícitos -en registros
o en posiciones de memoria-.
Dependiendo de la arquitectura, los operandos explícitos para una
operación pueden ser accedidos directamente desde memoria o
puede ser necesario cargarlos primero en el almacenamiento
temporal, dependiendo de la clase de instrucción y elección de la
instrucción específica. En la siguiente tabla se muestra como sería la
secuencia de código C = A + B en estas tres clases de repertorios de
instrucciones.
la
cuular 5sr
PUSH A LOAD A LOAD R1, A
PUSH B ADD B ADD R1, B
ADD STORE C STORE C, R1
POP C
A continuación se listan las principales ventajas y desventajas de
cada clase de máquina, las cuales están relacionadas con tres
aspectos: la forma en que la estructura se adapta a las necesidades
de un compilador; lo eficiente que es el enfoque desde el punto de
vista de la implementación, y cómo es el tama o efectivo de código
con respecto a otros enfoques.




c
:

Modelo sencillo para evaluación de expresiones (polaca inversa). Instrucciones
cortas pueden dar una buena densidad de código
 c
:

A una pila no se puede acceder aleatoriamente. Esta limitación hace difícil
generar código eficiente. También dificulta una implementación eficiente, ya
que la pila llega a ser un cuello de botella


 
c
:

Minimi a los estados internos de la máquina. Instrucciones cortas
 c
:

Como el acumulador es solamente almacenamiento temporal, el tráfico de
memoria es el más alto en esta aproximación

  
c
:

Modelo más general para generación de código
 c
:

Todos los operandos deben ser nombrados, conduciendo a instrucciones más
largas

Fig 11. Opciones básicas de la pila

[5,68-72]
h 
r4ucura lacal

Hasta ahora se ha supuesto que dos procesos que se comunican a


través de una conexión de sesión o transporte son simétricos. En la
práctica, esta suposición no siempre se cumple. Un ejemplo com n es
una red de ordenadores personales o estaciones de trabajo sin discos,
llamadas clientes, que se están comunicando a través de una red con
un servidor de archivos que tiene un disco sobre el cual se almacenan
todos los archivos. En este sistema, los clientes acceden a sus datos
mediante la transmisión de solicitudes al servidor, el cual se encarga
de llevar a cabo el trabajo y devuelve respuestas. La comunicación
siempre toma la forma de parejas de solicitud -respuesta, siempre
iniciadas por el cliente y nunca por el se rvidor. A este modo se le
conoce con el nombre de modelo cliente -servidor, también conocido
como arquitectura relacional, el cual se ilustra a continuación:
Mientras que resulta obvia la posibilidad de establecer sesiones
entre clientes y servidores, y después utili ar comunicación
semiduplex en esas sesiones, la gran sobrecarga ocasionada por
m ltiples capas de conexiones viene a ser, por lo general, poco
atractiva para aplicaciones, como servidores de archivos, en donde el
rendimiento es sumamente c rítico. Una forma de comunicación
totalmente sin conexión, construida justo encima del servidor de
datagramas en bruto (especialmente en redes tipo LAN), resulta ser
frecuentemente una mejor elección.

A n cuando los problemas de rendimiento pueden resolverse


mediante el empleo de un modo sin conexión, todavía existe un fallo
importante en el modelo: la base conceptual de toda la comunicación
es ES (entradasalida). Los programas se comunican con otros
programas utili ando comandos como X.DATA.request y
X:DATA.indication, en donde el primero es una ES, y el ltimo una
interrupción. Difícilmente vienen a ser las herramientas más
apropiadas para construir aplicaciones bien estructuradas.

La escuela de pensamiento de la RPC desarrolla el modelo cliente -


servidor desde una perspectiva completamente diferente. Desde este
punto de vista, un cliente que trasmite un mensaje a un servidor y
obtiene una respuesta, es equivalente a un programa que llama a un
procedimiento y obtiene un resultado. En ambos casos, el que hace la
llamada inicia una acción y espera hasta que se complete, y los
resultados estén disponibles. Aunque en el caso ordinario, el
procedimiento se ejecuta en l misma del que hace la llamad a, y con
una RPC éste se ejecuta en una máquina diferente, el que hace la
llamada no necesita preocuparse de esta diferencia.

Con objeto de ayudar a ocultar, todavía más, la diferencia entre


llamadas locales y remotas, es posible incluir la RPC en el lenguaje de
programación. Supóngase, por ejemplo, que a cada uno de los
clientes del servidor de archivos se les dota de un procedimiento (de
biblioteca) read, que puede ser llamado con tres parámetros: un
identificador que indique el archivo que se tiene que leer, un tampón
en el que se puedan leer los datos y una cuenta del n mero de octetos
por leer. Una llamada

read(fileid, buffer, count)

es entonces una llamada orientada a un procedimiento local (es decir,


un procedimiento incluido en el espacio de direcciones del que hace la
llamada por el motador). Este procedimiento envía un mensaje al
servidor de archivos y espera la respuesta. Solamente después de
que llegue la respuesta, read devolverá el control al que hace la
llamada.

La belle a de este esquema consiste ahora en la comunicación


cliente-servidor se hace por medio de llamadas a procedimientos, y no
como comandos de ES (o peor a n, de interrupciones). Todos los
detalles de la red se ocultan del programa de aplicación, poniéndolos
en procedimientos locales como ³read´. Estos procedimientos se
llaman cabos(stub).

En este ejemplo, el procedimiento cabo efectivamente transfiere


datos, pero un procedimiento cabo puede de igual manera transmitir
un mensaje solicitándole al servidor que ejecute una operación
arbitraria. Por ejemplo, una llamada

delete(filename)

podría ocasionar que el procedimiento cabo, delete, envíe un mensaje


al servidor de archivos pidiéndole que destruya el archivo
específicado. Al proporcionar procedimientos cabo apropiados, se
puede hacer que el cliente invoque acciones arbitrarias en el servidor,
de una manera que viene a ser mucho más natural para el
programador de aplicaciones, que la de batallar con comandos de ES
e interrupciones. El objetivo final consiste en hacer que una llamada
de procedimiento remoto no se vea distinta a una llamada a un
procedimiento local.
[6,120-123]

h 
r4ucura sr ua
rcssr u
Las primeras computadoras eran grandes y caras. Como resultado,
la mayor parte de las compa ías podía adquirir sólo una computadora.
Cuando aparecieron las redes, las compa ías utili aron la tecnología
para conectar dispositivos de ES (IO) remotos con su computadora.
Aunque un dispositivo remoto estuviera conectado a una sola
computadora central a través de una red, dicha computadora central
controlaba completamente el dispositivo. El arreglo con el que una
gran computadora central controlaba dispositivos ES (IO) peque os
en sitios remotos, condujo al término red tipo     

Potenciadas por microprocesadores, aparecieron las computadoras


personales y las terminales científicas. Las computadoras personales
utili an redes de nuevas ma neras. Primero, debido a que una
computadora personal tiene el poder de procesamiento necesario para
enviar y recibir paquetes, se puede comunicar con cualquier otra
computadora dentro de la red. Segundo, como una computadora
personal no depende de una gran computadora central que la
controle, puede actuar de manera independiente. Para reali ar la
relación simétrica entre computadoras que se comunican una con otra,
se utili a el termino redes de punto a punto (peer to peer networking) o
el de computación distribuida (distributeng computing).

El termino punto a punto se refiere a las tecnologías de red que


permiten una comunicación arbitraria entre computadoras. Internet es
una tecnología punto a punto, ya que no distingue entre las
computadoras conectadas. Una computadora personal puede
conectar a otra, tan fácilmente como se conecta con una mainframe
grande. Una gran computadora mainframe puede conectar otro
mainframe, a una computadora de tama o mediano o a una peque a
computadora personal.

El termino computación distribuida se refiere a cualquier cómputo


que comprenda dos o más computadoras que se comuniquen a través
de una red. El cómputo no implica aritmética ni n meros. Por ejemplo,
cuando dos computadoras intercambian correo electrónico, lle van a
cabo una forma de computación distribuida, ya que muchas
computadoras cooperan para enviar y entregar el mensaje.

 uac  sr uar

Internet ofrece una sorprendente diversidad de servicios, y cada uno


comprende una forma de computación distribuida. Por ejemplo, una
persona puede enviar un mensaje a un amigo, recuperar un archivo,
rastrear directorios, buscar en una base de datos, imprimir un
documento, trasmitir un fax o escuchar m sica.

La variedad de servicios disponi bles, significa que Internet ofrece


también diversos tipos de interacción. En algunos casos, un usuario
interact a con otra persona. En otros, un usuario lo hace con el
programa de computadora remota que ofrece un servicio. Y en otros
casos dos sistemas de computadoras se comunican sin intervención
humana. Algunos servicios permiten que los usuarios recuperen
información, y otros que almacenen o actualicen información. Algunos
servicios comprendes sólo dos sistemas de computadoras, uno que
envía una solicitud y otro que proporciona una respuesta; otros
servicios comprenden muchas computadoras.
Un solo paradigma explica toda la computación distribuida.

A pesar de la amplia diversidad de servicios de Internet y de las


diferencias aparentes en su utili ación, el software que implementa un
servicio siempre utili a un solo esquema, el cual se llama computación
cliente ± servidor. La computación cliente ± servidor no está limitada a
Internet, forma la base para la computación distribuida.

La idea tras la computación cliente ± servidor es muy sencilla;


algunas computadoras en Internet ofrecen servicios a las que otras
accedan. Por ejemplo, algunos servidores manejan archivos que
contienen información. Un programa cliente puede contactar a dicho
servidor para solicitarle una copia de uno de sus archivos. Otros
servidores manejan juegos multiusuario. Un individuo que quiere jugar
debe utili ar un programa cliente para contactar al servidor y participar
en el juego.

Para entender cómo un solo paradigma puede incluir la diversidad


de servicios, se necesitan saber tres hechos básicos:

å Los programas se comunican. Las computadoras no se


comunican con otras computadoras, sólo los programas se pueden
comunicar. Un programa que corre en una computadora utili a
software de protocolo para contactar un programa en otra
computadora e intercambiar mensajes. En Internet, los dos programas
deben utili ar software de protocolo TCPIP.
å El TCPIP no crea ni corre programas de aplicación. Internet
trabaja como un sistema telefónico, permite que un programa llame a
otro, pero el programa contactado debe contestar la llamada antes de
que sea posible la comunicación. Por tanto, dos programas sólo se
pueden comunicar si uno de ellos comien a a ejecutar y está de
acuerdo en contestar llamadas, antes que lo contacte el otro
programa.
å Las computadoras pueden ejecutar muchos programas. Un
sistema operativo mantiene muchos progr amas en ejecución al
conmutar rápidamente el procesador entre ellos. Permite que el
procesador trabaje en un programa un corto periodo, luego mueve el
procesador hacia otro programa por un corto lapso, y así
sucesivamente. Debido a que el procesador de una computadora
puede ejecutar varios millones de operaciones por segundo,
conmutarlo entre muchos programas da la impresión de que todos los
programas corren al mismo tiempo.
Sabiendo que los programas se comunican y que una computadora
puede ejecutar al mismo tiempo muchos programas, se revela un
aparente misterio: la forma en que una computadora puede
proporcionar servicio a muchos usuarios de forma simultánea. Muchos
servicios de Internet utili an varias copias de un programa para
permitir que muchos usuarios accesen al servicio al mismo tiempo.
Por ejemplo, una sola computadora puede recibir y almacenar correo
electrónico entrante desde muchas otras computadoras al mismo
tiempo. Para hacerlo, crea muchas copias del programa que acepta la
entrada de correo electrónico. Cada computadora que envía correo se
comunica con una sola copia del programa. Como el procesador
puede conmutar rápidamente entre las copias, todas las transmisiones
parecen llevarse a cabo en forma simultánea.

s r5raassclssr/rs 

Cada programa de computadora que se comunica puede estar


clasificado dentro de dos categorías. Cualquier programa que ofrece
un servicio pertenece a la categoría de servidor; cualquier programa
que contacta un servicio pertenece a l a categoría de cliente.

Por lo general, las personas que utili an los servicios de Internet


ejecutan software cliente. Por ejemplo, un programa com n de
aplicación que utili a Internet para accesar un servicio se convierte en
cliente. El cliente utili a Internet para comunicarse con un servidor.
Para algunos servicios, el cliente interact a con el servicio por medio
de una solicitud. El cliente formula una solicitud, la envía al servidor y
espera la respuesta. Para otros servicios, el cliente lleva a cabo una
interacción larga. El cliente establece comunicación con el servidor, y
luego, continuamente, muestra la información recibida del servidor,
mientras transmite golpes de teclas o se ales de ratón al servidor.

sr/r sars r uca

A diferencia del software cliente, un programa servidor debe estar


siempre preparado para recibir solicitudes. Por lo general los
programas servidores sólo corren en computadoras grandes, que
permiten que muchos servidores estén en funcio namiento al mismo
tiempo. Cuando el sistema comien a con la ejecución, arranca una o
más copias de cada programa de servidor en ejecución. Un servidor
contin a la ejecución durante todo el tiempo que la computadora esté
en funcionamiento.
Si una computadora tiene una falla de alimentación de corriente, o
el sistema operativo falla, se pierden todos los servidores que se estén
ejecutando en la computadora. Cuando falla la computadora que
ofrece un servicio, los clientes que activamente estén utili and o un
servidor en esa computadora recibirán un mensaje de error. Cualquier
cliente que intente establecer comunicación con un servidor mientras
la computadora no esté en funcionamiento recibirá también un
mensaje de error.

[6,80-84]

h 
r4ucuracral

@r4u3=4uas/crals? 

Si bien es cierto que la segmentación se presenta como un
mecanismo importante para mejorar el rendimiento de una
computadora, es a n más cierto que existen límites en la mejora del
rendimiento que la segmentació n puede conseguir. Habrá que decir
que los procesadores segmentados de alta velocidad son tiles para
grandes aplicaciones científicas y de ingeniería, sin embargo, los
programas científicos grandes, cuya ejecución es larga, tienen con
frecuencia conjuntos de datos activos muy grandes que son accedidos
a menudo, consiguiendo un rendimiento pobre de la jerarquía de
memoria. El impacto resultante es una disminución en el rendimiento
de la cache.

Las 
 Y   proporcionan operaciones de alto nivel que
trabajan sobre   (arrays lineales de nuacutemeros).

Las operaciones vectoriales pueden hacerse más rápidas que una


secuencia de operaciones escalares sobre el mismo n mero de
elementos de datos, y los dise adores están motivados para incluir
unidades vectoriales si el conjunto de las aplicaciones las puede usar
frecuentemente.

Una operación vectorial normal puede sumar dos vectores de 64


elementos en punto flotante para obtener como resultado un vector de
64 elementos.

La instrucción vectorial es equivalente a un bucle completo, donde


en cada iteración se calcula uno de los 64 elementos del resultado,
actuali ando los índices y saltando al comien o.

r4ucura/cral =sca 

Una máquina vectorial, normalmente, consta de una unidad escalar


segmentada más una unidad vectorial. Todas las unidades funcionales
de la unidad vectorial tienen una latencia de varios ciclos de reloj. Esto
permite un ciclo de reloj de menor duración y es compatible con
operaciones vectoriales de larga e jecución que pueden ser
segmentadas a nivel alto sin generar riesgos. La mayoría de las
máquinas vectoriales permiten que los vectores sean tratados como
n meros en punto flotante, como enteros o como datos lógicos.

Hay dos tipos principales de arquitecturas vectoriales:

å Máquinas vectoriales con registros. En este tipo de máquina


todas las operaciones vectoriales -excepto las de carga y
almacenamiento- operan con vectores almacenados en los registros.
Estas máquinas son el equivalente vectorial de una arquitectura
escalar de cargaalmacenamiento. Ejemplos de máquinas vectoriales
construidas en 1990 que utili an una arquitectura vectorial son:

å Las máquinas de Cray Research: CRAY-1, CRAY-2, X-MP e Y-


MP.
å Los supercomputadores japoneses: NEC SX2, Fujitsu VP2000 y
el Hitachi S820.
å Los minisupercomputadores: Convex C-1 y C-2.
å Máquinas vectoriales memoria-memoria. En este tipo de
máquina todas las operaciones vectoriales son de memoria a
memoria. Las primeras máquinas vectoriales fueron de este tipo,
como por ejemplo las máquinas de CDC. Es necesario
mencionar que éstas no tuvieron el mismo éxito que las
máquinas vectoriales con registros.
å
å [4,627-635]

hA

 



r4ucura 


SPARC es el acrónimo de Scalable Procesor ARChitecture (arquit ectura del


procesador estable). Es la especificación del conjunto de arquitecturas de un
procesador, es decir, la especificación del conjunto de instrucciones y la organi ación
de registros de un procesador, independientemente de cómo se realice su
implementación en el hardware.
Se anuncio por primera ve en 1987, basada en las ideas desarrolladas al comien o
de los ochenta en Berkeley (Universidad de California), en un proyecto que acu o al
termino computador de Conjunto Reducido de Instrucciones (RISC).
Los datos y las direcciones de memoria son de 64 bits, las instrucciones son todas de
32 bits y operan con enteros y flotantes.
Solo observa 32 registros de los cuales los primeros 8 son globales y los otros 24 son
locales al contexto actual.
Fig 12. Ocho ventanas de registros que forman una pila circular en el SPARC

srucuraalcaucs5a 

Tiene 9 etapas, las primeras tres etapas del cauce son comunes a todas las
instrucciones. Las instrucciones se captan de la cache de instrucciones en la primera
etapa (F) y se codifican parcialmente en la en la segunda (D). Después de la tercera
etapa (G) selecciona un grupo de hasta cuatro instrucciones para ser ejecutadas en
paralelo.
Cada una de las dos unidades de ejecución consta de dos cauces paralel os con seis
etapas. Las primeras cuatro etapas permiten reali ar la operación especificada en la
instrucción, y las dos ltimas se utili an para comprobar las excepciones y almacenar
el resultado de la instrucción.
[5,491-498]

 
        

@   ?

Esta tendencia es m0otivadad po0r 2 ra ones


å El deseo de mejorar las prestaciones
å Simplificar los compiladores
La labor del escritor del compilador es generar una secuencia de instrucciones
maquina para cada sentencia Hill. Si existen instrucciones maquina que se
pare can a sentencias de Hill. La tarea se simplifica. Lo cual ha sido puesto en
duda por investigadores de RISC encontrando que las instrucci0ones maquina
complejas son con frecuencias difíciles de aprovechar ya q el compilador debe
descubrir aquellos casos que se ajustan a la construcción.
La optimi ación de el código generado para minimi ar su tama o, reducir el
numero de instrucciones ejecutadas y mejorar la segmentación es mucho0 más
difícil con un repertorio complejo de las instrucciones .además que el CISC
produ ca programas más peque os y rápidos.

Características de las arquitecturas de repertorio reducido de instrucciones

å Una instrucción por ciclo


Se ejecuta la instrucción por cada ciclo maquina. El ciclo maquina es el
tiempo0que se tarda en captar 2 o0perandos desde 2 registros

å Operaciones registro a registro


LA mayoría de operaciones deben ser del tipo registro a registro

å Modos de direccionamiento sencillo


_Pueden incluir varios modos adicionales como el despla amiento y el relativo
al contador del programa

å Formatos de instrucción sencillo


La longitud de instrucciones es fija y alineada en los limites de una palabra

Fig 13. Dos comparaciones de las aproximaciones registro a registro y mem oria a
memoria.
Características de algunos procesadores.

[7,303-312]

  c 
   
 

Circuito electrónico formado por millares de transistores integrados en una ficha
o pastilla, que reali a la función de una unidad central en los microordenadores:


c

Que se hace u ocurre al mismo tiempo un proceso


 

El microprocesador moderno puede a menudo procesar cierto n mero de
instrucciones en forma simultánea, en diversas etapas de l a ejecución




Una pila es una lista de elementos, normalmente palabras o bytes, con la
restricción de acceso de que los elementos solo pueden ser a adidos o
eliminados por un extremo de la lista. Este extremo se denomina tope de pila y
al otro extremo fondo de la pila.

c   Bc

Acción reconocida por el procesador para lo que esta dise ada


c


Instrumento que sirve para hacer un proceso

  

Mecanismo que sirve para un resultado

 


Computador que ha sido creado para muchos usuarios

  

Dato que se guarda en la cpu

  
 

Unidad funcional que interpreta y ejecuta instrucciones en un computador






1. [Sistemas operativos Modernos, Andrew.S Tanenbaum]


2. [Multiprocesadores Von Newman, Miguel Valero, Miguel Garcia,
UPCDAC Report No. RR-9002]
3. [Introducción a las ciencias de la computación con JAVA, Elisa Viso
G.]
4. Organi ación y Arquitectura de Computadores. Dise o para optimi ar
prestaciones.

STALLINGS, William

Quinta edición,

Espa a,

Prentice Hall, 1997.

5. Carl Hamacher Zunanko Vranesic Sapwat


Organi ación de las computadoras.

Quita edición,

México, McGraw hill.1997

6. MORRIS Mano,
M. Arquitectura de Computadores.

México, Editorial Prentice Hall, 1983.

7. Arquitectura computacional
irv england

ed. Cecsa

2° edicion, México D.F.

Вам также может понравиться