Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Repaso de Componentes de Hardware

No description
by

ronald renteria ayquipa

on 2 December 2013

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Repaso de Componentes de Hardware

Repaso de Componentes de Hardware
Memoria
Dispositivos de E/S
Sistemas Operativos
Ronald Renteria Ayquipa
Algunos de los componentes de una computadora personal sencilla.

Un sistema operativo está íntimamente relacionado con el hardware del ordenador

Introducción
PROCESADORES
Es el cerebro de la computadora (CPU)
Funciones: Tomar instrucciones de la memoria y ejecutarlas.
Ciclo básico de toda CPU:
Tomar la primera instrucción de la memoria.
Decodificarla para determinar su tipo y operandos.
Ejecutarla
Tomar, decodificar y ejecutar la instrucción subsiguiente.
Cada CPU ejecuta un conjunto de instrucciones específico
PROCESADORES
Contienen registros para guardar variables importantes
Entre el conjunto de instrucciones están: acceso a registros y memoria.
Además, contiene registros especiales:
contador de programa
: contiene la dirección de memoria de la siguiente instrucción a extraer.
puntero de pila
: apunta a la parte superior de la pila en memoria. Esta pila contiene una trama por cada procedimiento al que se ha llamado pero del cual no se ha retornado todavía.
palabra de estado del programa
: (PSW; Program status word) contiene los bits de código de condición, que se ajustan cuando se ejecutan instrucciones de comparación. Desempeña un papel importante en las llamadas al sistema y la E/S.

PROCESADORES

Pipeline de tres etapas

Muchos de los CPUs modernos ejecutan más de una instrucción al mismo tiempo
Segmentación (pipeline): una CPU podría tener unidades individuales para tomar, decodificar y ejecutar, de tal manera que mientras ejecuta la instrucción n, puede estar decodificando la n + 1 y extrayendo la instrucción n+2.
PROCESADORES
CPU escalar:
Cuenta con varias unidades de ejecución, ejemp: aritmética de punteros, aritmética de punto flotante y operaciones booleanas.
Utiliza un búfer de retención.
PROCESADORES
La mayoría de CPUs tiene dos modos: de kernel y de usuario. Por lo regular, un bit de la PSW controla el modo.
En modo kernel se puede ejecutar todas las instrucciones y realizar todas las funciones de hardware. El s.o se ejecuta en modo kernel.
En modo usuario solo permite ejecutar un subconjunto de instrucciones. Los programas de usuario se ejecutan en este modo.
Para que un programa usuario obtenga servicios del s.o. deberá emitir una llamada al sistema.
Esta se transfiere por una interrupción del sistema (trap) al kernel e invoca al S.O. La instrucción TRAP cambia de modo usuario a modo kernel.
Una vez que el S.O ha efectuado el trabajo se devuelve el control al programa de usuario en la próxima instrucción después de la llamada.
PROCESADORES
El segundo componente más importante.
Ideal: rápida, grande y barata.
Ninguna tecnología actual satisface estos objetivos.
MEMORIA
Registros:
Internos de la CPU.
Del mismo material que la CPU, por esto son tan rápidos como ella. No hay retardo al accederlos.
Memoria Caché:
Elevado coste.
Bajo el control del hardware.
Cuando el programa necesita leer la memoria, se busca en la caché. Si está (acierto de caché), se atiende desde la caché y no se envía la petición a la memoria.

MEMORIA

Memoria Principal:
Se conoce como RAM (Random Access Memory)
Las peticiones de la CPU que no pueden atenderse desde la caché se dirigen a la memoria principal.
Disco Magnético:
Conocido como Disco Duro.
Más barato y más grande que la RAM, el problema es que es más lento debido a que es un dispositivo mecánico.

MEMORIA

Estructura de una unidad de disco

Cinta Magnética:
Para backup o copias de seguridad del disco duro, luego estas cintas pueden guardarse en otro lugar.
Guarda conjunto de datos muy grandes. Es barata, removible pero extremadamente lenta.
MEMORIA

Otros tipos de memoria:
ROM (Read Only Memory): Se programa en fábrica y no puede modificarse, rápida y económica, guarda el programa de arranque del computador.
EEPROM (Electrically Erasable Programable ROM): ROM borrable y programable eléctricamente.
CMOS: Volátil, guarda la fecha y hora actuales. La CMOS y el reloj se alimentan de una batería. Guarda algunos parámetros de configuración como la unidad de disco desde la cual arrancar.

MEMORIA
Problemas cuando hay dos o más programas a la vez en memoria:
Cómo proteger los programas entre sí, y cómo proteger el kernel de todos ellos.
Cómo manejar la reubicación de los programas.
Posibles soluciones:
Equipar la CPU con hardware especial
Reubicación del programa en el momento de la carga.
Reubicación del programa sobre la marcha en el momento de ejecución.

Memoria Principal

Problema de la reubicación de los programas.
Cuando se compila y enlaza un programa, el compilador y el enlazador no saben en qué parte de la memoria física se cargará cuando se ejecute. Por esta razón, usualmente suponen en principio que el programa comenzará en la dirección 0 y colocan allí su primera instrucción. Supongamos que la primera instrucción toma de la memoria la palabra que está en la dirección 10.000. Supongamos ahora que el programa entero y los datos se cargan a partir de la dirección 50.000. Cuando se ejecute la primera instrucción, funcionará mal porque hará referencia a la palabra que está en la dirección 10.000 en vez de a la que está en la 60.000.

Memoria Principal

Límite

Base

0

0xFFFFFFFF

Solución sencilla al problema de la reubicación
Equipar al ordenador con dos registros: base y límite.
Inicialmente el registro base apuntará al inicio del programa, mientras que el límite indica el tamaño.
Cuando hay que extraer una instrucción, el hardware comprueba si el contador de programa tiene un valor menor que el registro de límite y, de ser así, suma el valor del contador de programa al del registro base y envía la suma a la memoria.
Cuando el programa quiere tomar una palabra de datos (digamos, de la dirección 10.000), el hardware suma de manera automática el contenido del registro de base (en nuestro caso 50.000) a esa dirección y envía la suma (60.000) a la memoria.

Memoria Principal
¿Qué es una dirección virtual?
¿Qué es una dirección física?
¿Qué es la MMU?
Constan generalmente de dos partes: una controladora y el dispositivo en sí.
La controladora
Es un chip montado en una tarjeta insertable (tarjeta controladora) que controla físicamente el dispositivo
La controladora acepta comandos del s.o. y los ejecuta.
La controladora presenta un interfaz sencilla al s.o, ocultando lo complicado del control real del dispositivo.
DISPOSITIVOS DE E/S

El dispositivo en sí
Tienen interfaces simples, debido a que no hacen cosas complicadas y para poder estandarizarse.
Ya que cada controladora es distinta, se requiere diferente software para manejar cada una.
El software que se comunica con la controladora dándole comandos y acepando respuestas se denomina
controlador de dispositivo
(c.d.).
Los fabricantes de controladoras de dispositivo deben proporcionar los controladores del dispositivo.
Para usar un dispositivo, debe incluirse el c.d. en el s.o para que pueda ejecutarse en modo kernel.
DISPOSITIVOS DE E/S

¿Cuáles son las formas de colocar el software controlador del dispositivo dentro del sistema operativo?
Las operaciones de entrada y salida pueden ejecutarse de 3 maneras distintas:
Espera activa:
Un programa de usuario emite una llamada al sistema, que el kernel traduce en una llamada de procedimiento al c.d. apropiado.
El c.d. inicia la E/S y entra en un ciclo corto de pregunta continuamente al dispositivo para ver si ya terminó.
Una vez terminada la E/S, el c.d. coloca los datos donde se necesita y regresa.
El sistema operativo devuelve el control al invocador.
Desventaja: Mantiene ocupada la CPU revisando el dispositivo hasta que éste termina.
DISPOSITIVOS DE E/S

Interrupción:
El c.d. pone en marcha el dispositivo y le pide generar una interrupción cuando haya terminado.
En este momento el c.d devuelve el control al s.o
El s.o. bloquea entonces al programa invocador si es necesario y busca otras cosas que hacer.
Cuando la controladora detecta que la transferencia ya terminó, genera una interrupción para avisar su terminación.
DISPOSITIVOS DE E/S

Acceso directo a memoria (DMA):
Utiliza un chip especial de DMA. que puede controlar el flujo de bits entre la memoria y alguna controladora sin que la CPU tenga que intervenir en forma continua.
La CPU prepara el chip DMA, indicándole cuántos bytes hay que transferir, el dispositivo las direcciones de memoria en cuestión y el sentido, para desentenderse de él.
Cuando el chip DMA termina la E/S, causa una interrupción.
DISPOSITIVOS DE E/S

Buses
Estructura de un sistema Pentium Grande

BUSES

Con la evolución de las computadoras se añadieron buses para dispositivos de E/S rápidos y el tráfico entre CPU y memoria.
Así para el sistema de la figura anterior se tienen (caché, local, memoria, PCI, SCSI, USB, IDE e ISA).
ISA (Arquitectura Estándar de la industria). Opera a 8.33 MHz y puede transferir 2 bytes a la vez, para dar una velocidad máxima de 16.67 MB/s. para tarjetas E/S antiguas y lentas.
BUSES

PCI (Interfaz de Componentes Periféricos). Intel, sucesor del ISA. Puede operar a 66 MHz y transfiere 8 bytes a la vez, para una taza de datos de 528 MB/s
IDE. Sirve para conectar dispositivos periféricos, como discos y unidades de CD-ROM al sistema.
USB (Bus Serial Universal). Conecta dispositivos E/S lentos. Es un bus centralizado que consulta todos los dispositivos cada milisegundo para ver si tienen tráfico. Puede manejar una carga agregada de 1.5 MB/s. Todos los dispositivos USB comparten un único controlador, posibilitando añadir dispositivos USB sin reiniciar la computadora.
BUSES
SCSI (Interfaz Estándar de Equipos pequeños). Bus de alto rendimiento para dispositivos que necesitan gran ancho de banda. Puede operar hasta 160 MB/s.
Plug and Play: hace posible que se pueda recoger automáticamente información sobre los dispositivos de E/S, asignar niveles de interrupción y direcciones de E/S, para luego comunicar a cada tarjeta los valores que le corresponden. Evitando así conflictos.
BUSES
Full transcript