tema 1: arquitectura de ordenadores, hardware y...
TRANSCRIPT
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
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
Buses de datos
2.2 El modelo de von Neumann
9
CPU (Procesador) Memoria principal
Datos
Programa
Controladoras Entrada/Salida
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