2. Elementos de Arquitectura de Computadores

2. Elementos de Arquitectura de Computadores INF2100 - Computaci´ on I Semestre 2/2007 Cristian Ruz R. (UDP) 2. Elementos de Arquitectura de Comput
Author:  Hugo Rojo Vega

5 downloads 79 Views 218KB Size

Recommend Stories


Arquitectura de Computadores
Arquitectura de Computadores 8. Arquitecturas RISC 1. Evolución de los CISC 2. Análisis de los Programas 3. Principios y Características de las Arquit

Arquitectura de Computadores
Arquitectura de Computadores TEMA 3 Lanzamiento múltiple, Límites de ILP, Multithreading Curso 2012-2013 Contenidos o Introducción: CPI < 1 o Lanz

Arquitectura de Computadores
Arquitectura de Computadores Entrega 1 En el siguiente informe detallamos el proyecto que realizaremos como grupo durante el siguiente semestre. Consi

Story Transcript

2. Elementos de Arquitectura de Computadores INF2100 - Computaci´ on I

Semestre 2/2007

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

1 / 16

Objetivos

En este cap´ıtulo revisaremos algunos de los conceptos fundamentales con que funcionan los computadores, y c´ omo escribimos y ejecutamos programas sobre ellos. Arquitectura de un computador. Componentes. Sistemas Operativos y software. Representaci´ on de n´ umeros. Base binaria y hexadecimal. Lenguajes de programaci´on. El proceso de compilaci´ on.

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

2 / 16

Arquitectura de un computador

Para poder construir un programa que resuelve un problema, debemos plantear un algoritmo, e implementarlo con un programa. Para comprender c´ omo se ejecutan los programas que vamos a desarrollar, es u ´til y pr´actico conocer c´ omo funciona la m´aquina sobre la cual estamos trabajando. Todos los computadores comparten una arquitectura similar desde sus inicios. La tecnolog´ıa, por supuesto, ha ido mejorando considerablemente.

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

3 / 16

Arquitectura de Von Neumann

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

4 / 16

Arquitectura de Von Neumann

La arquitectura de un computador tiene 3 componentes principales: Procesador (CPU, Central Processing Unit). Memoria principal. Dispositivos de Entrada/Salida, E/S (Input/Output, I/O). Tambi´en hay que considerar los buses de datos que conectan todos estos componentes.

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

5 / 16

Arquitectura de Von Neumann: Buses

La comunicaci´on interna de todos los componentes... Caminos el´ectricos que corren a lo largo de todo el sistema. Permiten transmitir datos entre los distintos componentes. Los datos t´ıpicamente se transmiten en palabras (words), que son grupos de bytes. El tama˜ no de una palabra es un par´ametro determinante en los sistemas. Sistemas embebidos peque˜ nos: palabras de 1 a 2 bytes (8 a 16-bit) Intel Pentium: palabras de 4 bytes (32-bit) Intel Itanium, Sun SPARC: palabras de 8 bytes (64-bit)

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

6 / 16

Arquitectura de Von Neumann: Entrada/Salida

La comunicaci´on con el exterior... Dispositivos de entrada: teclado, mouse, joysticks, micr´ ofonos, c´amaras... Dispositivos de salida: pantalla, aud´ıfonos/parlantes, impresoras... Dispositivos de entrada y salida: memoria usb, discos, conexiones de red... Se comunican con el bus de E/S a trav´es de controladores o adaptadores.

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

7 / 16

Arquitectura de Von Neumann: Memoria Principal El almacenamiento principal... Lugar de almacenamiento temporal. Almacena los datos y el c´ odigo de un programa en ejecuci´on. F´ısicamente, est´a compuesta de un conjunto de celdas de Dynamic Random Access Memory (DRAM). L´ ogicamente, es un arreglo de posiciones, numerados secuencialmente desde 0. ¿Cu´anta memoria se puede utilizar? Depende del tama˜ no del bus de direcciones y del tama˜ no de cada celda. Un Un Un Un Un

bus de 8-bit permite usar 256 posiciones de memoria. bus de 10-bit permite usar 1024 (1K) posiciones de memoeria. bus de 16-bit permite usar 65536 (64K) posiciones de memoria. bus de 20-bit permite usar 1048576 (1M) posiciones de memoria. bus de 32-bit permite usar 4294967296 (4G) posiciones de memoria.

¿Y si s´ olo tengo 256 MB de memoria, como puedo usar 4GB? Memoria virtual. Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

8 / 16

Arquitectura de Von Neumann: CPU Finalmente, aqu´ı se ejecuta toda la acci´ on... Interpreta y ejecuta las instrucciones de un programa, que est´an almacenadas en la memoria principal. Compuesto por un conjunto peque˜ no de celdas, y una ALU: Registros. Celdas de memoria de acceso inmediato. ALU. Unidad aritm´etica/l´ ogica. Ejecuta los c´alculos requeridos.

¿C´omo saber qu´e parte del programa debemos ejecutar? Un registro especial se usa para saber en qu´e parte del c´ odigo del programa nos encontramos: Program Counter (PC). La CPU ejecuta el siguiente ciclo una y otra vez: Fetch. Lee una instrucci´ on de memoria en los registros. Actualiza el Program Counter para poder leer la siguiente instrucci´ onExecute. Decodifica y ejecuta la instrucci´ on.

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

9 / 16

Arquitectura de Von Neumann: CPU

¿Con qu´e frecuencia se repite esto? La CPU tiene una frecuencia de reloj. En cada tick se lee o se ejecuta una instrucci´ on. Algunas instrucciones ocupan m´as de un ciclo.

Algunos procesadores famosos: Intel Intel Intel Intel Intel Intel

80386: 25 MHz 80486: 66 MHz Pentium: 100 MHz Pentium II: 300 MHz Pentium III: 750 MHz Pentium 4: 3.2 GHz.

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

10 / 16

Almacenamiento Distintos tipos de almacenamiento dan lugar a una jerarqu´ıa de memoria. L0: Registers

Smaller, faster, and costlier (per byte) storage devices

L1: L2:

L3: Larger, slower, and cheaper (per byte) storage devices

L4:

CPU registers hold words retrieved from cache memory.

On-chip L1 cache (SRAM)

L1 cache holds cache lines retrieved from the L2 cache.

Off-chip L2 cache (SRAM)

L2 cache holds cache lines retrieved from memory.

Main memory (DRAM)

Main memory holds disk blocks retrieved from local disks.

Local secondary storage (local disks) Local disks hold files retrieved from disks on remote network servers.

L5:

Cristian Ruz R. (UDP)

Remote secondary storage (distributed file systems, Web servers)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

11 / 16

El Sistema Operativo Todo lo anteriormente descrito es hardware. ¿Qui´en controla todo esto? El hardware tiene algunas instrucciones b´asicas codificadas. BIOS: Basic Input/Output System.

El que permite utilizar todos estos recursos es un software que se inicia al encender al computador (en verdad la BIOS permite iniciarlo): el Sistema Operativo. El sistema operativo administra el hardware, y permite al usuario ejecutar programas. Los programas del usuario funcionan sobre el sistema operativo. Los programas del usuario no pueden comunicarse directamente con el hardware. Para ello deben utilizar llamadas al sistema operativo (system calls).

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

12 / 16

El Sistema Operativo

Application programs

Software

Operating system Processor

Cristian Ruz R. (UDP)

Main memory

I/O devices

2. Elementos de Arquitectura de Computadores

Hardware

INF2100 - Sem. 2/2007

13 / 16

El Sistema Operativo

El sistema operativo provee abstracciones para permitir que los programas del usuario puedan ejecutar: Procesos: representan la ejecuci´ on de un programa. Memoria virtual: permite utilizar memoria f´ısica no cont´ınua, de forma independiente a la cantidad de memoria f´ısica disponible. Archivos: permiten tener acceso a los dispositivos de entrada/salida (por ejemplo, discos).

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

14 / 16

¿C´omo se ejecuta un programa? Cuando el usuario solicita que el sistema operativo ejecute un programa se dan los siguientes pasos: El sistema operativo busca el archivo con el programa en el disco. El sistema operativo copia (carga) el programa desde el disco a la memoria principal. En algunos casos puede cargar solamente un segmento del programa. ¿Y si el archivo es m´as grande que el espacio de memoria disponible? Archivos de swap.

El sistema operativo crea un proceso para ejecutar el programa. El sistema operativo ubica el inicio del programa (ej: funci´ on main), y carga esa direcci´ on el Program Counter. El programa de usuario est´a lista para utilizar la CPU, y ejecutar.

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

15 / 16

Algunos sistemas operativos Cada uno tiene sus propias instrucciones y caracter´ısticas. Un programa hecho para un sistema operativo no funcionar´a sobre otro (¿o s´ı?). Algunos sistemas operativos: Windows, y todas sus variedades. 1.0, 2.0, 3.1, 3.11, 95, 98, NT, Me, XP, Vista, etc...

Unix, y variantes. BSD, FreeBSD, Berkeley Irix (Silicon Graphics)

Linux, la variante m´a extendida de Unix RedHat, Fedora, Debian, Slackware, Ubuntu, CentOS, Gentoo

Solairs: Sun tambi´en tiene lo suyo. MacOS: la estrella de Apple.

Cristian Ruz R. (UDP)

2. Elementos de Arquitectura de Computadores

INF2100 - Sem. 2/2007

16 / 16

Get in touch

Social

© Copyright 2013 - 2024 MYDOKUMENT.COM - All rights reserved.