33
Fundamentos de Informática 2010-11 Tema 1: Arquitectura de ordenadores, hardware y software

Tema 1: Arquitectura de ordenadores, hardware y …webdiis.unizar.es/~rmcantin/fundinf/tema1a.pdf · ROM de bootstrap RAM Memoria secundaria (disco duro) S.O. Memoria principal

Embed Size (px)

Citation preview

Fundamentos de Informática 2010-11

Tema 1: Arquitectura de ordenadores,

hardware y software

Índice

1.  Informática

2.  Modelo de von Neumann

3.  Sistemas operativos

2

1. Informática

�  INFORMación automÁTICA

�  Procesamiento automático de la información �  Entrada de información (datos)

�  Procesado de la información (lógico o aritmético) �  Salida de información (resultado)

�  Sin supervisión humana. Ejecución de un programa de instrucciones.

3

Ejemplo de sistemas informáticos

�  PCs

�  Superordenadores

�  Smartphones

�  Electrodomésticos

�  Terminales

�  Consolas

�  Robots

�  …

4

5

2. Modelo von Neumann

2.1 Historia

2.2 El modelo de Von Neumann

2.3 Sistema binario

2.4 Memoria principal

2.5 Procesador

2.6 Buses de comunicación

2.7 Dispositivos de entrada/salida

6

2.1 Historia: El ENIAC, Los Álamos y la bomba H

7

Calculos balísticos, von Neumann y el EDVAC

8

Buses de datos

2.2 El modelo de von Neumann

9

CPU (Procesador) Memoria principal

Datos

Programa

Controladoras Entrada/Salida

Modelo de von Neumann en un PC

10

2.3 Sistema binario � Unidades de información

�  1b = 1 bit unidad de información {0,1} �  1B = 1 byte conjunto de 8 bits

�  Almacenamiento

11

Nombre Sist. Internacional Sist. Clásico Ejemplos

Kilobyte (KB) 1000 bytes 1024 = 210 bytes 1 página de texto 1 icono

Megabyte(MB) 10002 bytes 220 bytes 4 libros 1 fotografía pequeña

Gigabyte(GB) 10003 bytes 230 bytes 4.000 libros 300 fotografías 250 canciones en mp3

Terabyte (TB) 10004 bytes 240 bytes 4 millones de libros 1.613 CDs, 233 DVDs 40 Blu-ray discs Datos en Google cada 5s

2.4 La memoria principal �  Almacenamiento de la

información en circuitos integrados, fuera de la CPU.

�  Gran velocidad de acceso y escritura, pero coste elevado.

�  Almacena el programa y los datos en uso.

�  RAM: No permite la grabación permanente de datos. Es volátil, es decir, si se corta la corriente, se pierden los datos.

�  ROM: Permanente, viene grabada de fábrica. No se puede reescribir.

12

2.5 El procesador (CPU) �  Es el componente que

procesa los datos de entrada siguiendo las instrucciones de un programa.

�  Se compone de: �  una unidad de control que

busca y descifra cada instrucción,

�  una unidad aritmético-lógica que ejecuta las operaciones sobre los datos

�  unos registros que almacenan datos internos.

13

2.6 Buses de comunicación �  Un bus es un sistema de transmisión de datos entre 2 o más

sistemas o unidades.

�  Tradicionalmente, se refería únicamente a conjuntos de cables o pistas de un circuito impreso que transmitían en paralelo, pero ahora se ha generalizado a cualquier sistema digital de transmisión de datos.

�  En un PC, la CPU se comunica con la memoria principal y otras componentes mediantes buses integrados en la placa madre.

�  Otros buses comunes: �  USB

�  PCI

�  AGP (especifico para gráficos)

�  ATA-n (especifico para discos)

14

2.7 Dispositivos de E/S �  Los  disposi(vos  de  entrada/salida  (periféricos),  permiten  una  interacción  entre  la  máquina  y  otros  sistemas  (incluido  el  usuario)  mediante  la  entrada  o  salida  de  datos.  

�  Cada  periférico  está  compuesto  por  tres  componentes:  1.  El  propio  disposi&vo.  2.  Un  circuito  electrónico  que  traduce  la  información  del  bus  

al  disposi(vo,  denominado  controladora.  3.  Un  programa  que  permite  interactuar  con  el  periférico,  

llamado  driver.  

15

2.7 Dispositivos de E/S La memoria secundaria

�  Es más barata que la memoria principal y permite almacenar los datos de manera permanente, pero con acceso más lento. �  Disco duro, CD-ROM, Flash, Blu-Ray...

16

�  Jerarquía de memoria: �  Almacenar los datos en la

memoria más rápida disponible basandose en la frecuencia de uso. �  Más usada à Acceso más rápido

CONTROLADORA CONTROLADORA

CONTROLADORA CONTROLADORA

2.7 Dispositivos de E/S Interacción entre procesador,

memorias y dispositivos de E/S

17

PROCESADOR

MEMORIA PRINCIPAL

BUS

LECTOR CD-ROM

DISCO DURO

TECLADO

PANTALLA UC ALU

REGISTROS

3. Software y Sistema Operativo

3.1 Introducción al software

3.2 Clasificación del software

3.3 Sistema operativo 3.3.1 Arranque 3.3.2 Gestión de procesos 3.3.3 Interfaz de usuario 3.3.4 Sistema de ficheros

3.4 Software de aplicación

18

3.1 Introducción al software �  La propiedad más importante de un ordenador es

la de ser programable.

�  Una programación directa del hardware por parte de los usuarios crearía grandes dificultades.

�  Por lo tanto es necesario proveer al usuario de un mecanismo para: �  abstraer la organización física de la máquina �  usar de manera similar máquinas con hardware diferente �  tener un lenguaje simple de interacción con la máquina �  tener un lenguaje simple de alto nivel para programar la

máquina �  tener un conjunto de programas para ejecutar diferentes

tareas

19

3.2 El software: clasificación

�  Software de sistema: permite usar los recursos hardware del ordenador, ejecutar operaciones básicas e interactuar con el software de aplicación. �  Ejemplos: driver, interfaz gráfico, formateador de

discos…

�  Software de aplicación: programas para la ejecución de tareas específicas. �  Ejemplos: procesador de textos, cliente de correo

electrónico, videojuegos…

20

Tipos de software de sistema �  Sistema operativo (S.O.)

�  Ejemplos: Windows, Unix, Linux, Mac OS…

�  Drivers

� Herramientas del sistema �  Incrementan las funcionalidades del S.O. �  Ejemplos: formateo discos, copia ficheros de

discos a CD, limpieza discos, programas de compresión de ficheros...

21

22

usuario

Software de aplicación (navegadores, reproductores de vídeo, editores de fotografías…)

Driver Sistema

Operativo Herramientas del sistema

Hardware (orderador y periféricos)

Software de sistema

3.3 Sistema operativo �  Conjunto de programas que interactúan

para: �  Administrar eficientemente los recursos de la máquina,

intentando explotar al máximo todos los componentes del hardware.

�  Crear un ambiente virtual (ejemplo: un interfaz gráfico) para facilitar la interacción persona-máquina.

�  Tareas del sistema operativo: �  Arranque del ordenador y creación del ambiente virtual. �  Administración del procesador y los procesos en

ejecución. �  Administración de la memoria principal y secundaria. �  Administración de los recursos de E/S. �  Proporcionar una serie de órdenes para la interacción

con el usuario. 23

3.3.1 Arranque del ordenador

�  El sistema operativo (S.O.) se ejecuta en el momento de encender el ordenador.

�  La puesta en marcha del S.O. se efectúa a través de un programa llamado bootstrap que la máquina ejecuta cuando se enciende.

�  En esta fase, una parte del S.O. (un conjunto de programas y un conjunto de datos) se carga en la memoria principal, es decir, se copia de la memoria secundaria (disco duro) a la memoria principal (RAM).

24

Bootstrap: paso 1

25

Programa de bootstrap ROM

RAM

Memoria secundaria (disco duro)

S.O.

Memoria principal

Bootstrap: paso 2

26

Sistema Operativo

Programa de bootstrap ROM

RAM

Memoria secundaria (disco duro)

S.O.

Memoria principal

3.3.2 Gestión de procesos �  Normalmente, la CPU es el componente más usado

en un ordenador.

�  Cuando la CPU está ocupada con un programa, el resto de programas tienen que esperar [1].

�  Cada programa en ejecución se llama proceso o tarea.

�  Es tarea del S.O. administrar la CPU correctamente y en manera eficiente entre todos los procesos.

[1] Nota: Las CPUs modernas tienen varios “cores” o “núcleos”. Cada “core” es un procesador independiente y permite ejecutar varios programas a la vez.

27

Mono/Multi-tarea

�  S.O. monotarea (monotasking) �  En el sistema hay solo un proceso activo

�  Es posible ejecutar un solo programa a la vez

�  Ejecución secuencial de programas

�  S.O. multitarea (multitasking) �  Ejecución concurrente de varios programas

�  El S.O. debe decidir en qué momento se ejecuta cada proceso, cuanto tiempo tiene derecho a usar el procesador…

28

Mono/Multi-tarea �  En general, dado un proceso P

�  En algún momento estará activo, es decir, la CPU lo ejecutará

�  Habrá largos periodos en que P esté parado. Por ejemplo, en la espera de E/S o de adquirir un recurso que en ese momento no esté disponible.

�  Las operaciones de la CPU, de los periféricos y de los usuarios funcionan a escalas temporales muy diferentes (desde nanosegundos a segundos).

�  La ejecución secuencial de procesos provoca una escasa utilización de la CPU.

29

Ejemplo: ejecución secuencial de P1 y P2

30

•  La utilización del procesador es muy baja •  La mayoría del tiempo está inactivo

procesador P2 P1

ejecución espera

activo inactivo

procesos

Ejemplo: ejecución concurrente de P1 y P2

�  Cada vez que P1 esté bloqueado en la espera de E/S, se ejecutará P2

31

Reducción de tiempos de inactividad

procesador

ejecución espera

activo inactivo

P1

P2

Multi-usuario/multi-puesto

� S.O. multi-usuario � Capaz de distinguir entre distintos usuarios.

� Protege los datos/programas de un usuario de los accesos de otros usuarios.

� Puede limitar el uso de recursos en función del usuario.

� S.O. multi-puesto  � Permite trabajar con el ordenador desde

varios terminales conectados a él, es decir, varios usuarios trabajando con el mismo ordenador simultáneamente (ej: un servidor de internet).

32

3.3.3. Interfaz de usuario �  Facilita el manejo del sistema operativo por

parte del usuario �  Permite la comunicación con el sistema

operativo mediante órdenes sencillas, para tareas como por ejemplo, copiar un fichero, arrancar un programa, ver el contenido de un directorio, etc.

�  Puede ser de dos tipos: �  interfaz orientada a texto o basada en órdenes

�  interfaz gráfica de usuario (GUI)

33