Abstracciones y Tecnologías de los Computadores
par Paúl Arévalo
1. 1. Relevancia
1.1. Se hace posible lo que antes eran computadoras sumamente caras.
1.1.1. Computadores en automoviles
1.1.2. Teléfonos móviles
1.1.3. Genoma Humano
1.1.4. World Wide Web
1.1.5. Motores de búsqueda
1.2. Nuevas Aplicaciones resuelven aún más problemas afectando directamente a la sociedad.
2. 4. Rendimiento de un programa
2.1. depende de:
2.1.1. 1. Efectividad del algoritmo y lenguaje de programación
2.1.2. 2. Software del sistema (SO. Sistema de E/S)
2.1.3. 3. Efectividad de la máquina (Procesador, Dispositivos de E/S)
3. 5. Más allá de un programa
3.1. Las aplicaciones complejas son una colección de programas que mediante una capa de software se traducen en instrucciones de máquina sencillas.
4. 7. De lenguaje de alto nivel a lenguaje de máquina
4.1. En hardware solo hay 2 estados, encendido y apagado, 1 o 0
4.2. Las instrucciones son una serie de bits que pueden ser interpretados con números
4.3. Ensamblador traduce de una notación simbólica a instrucciones de máquina
5. 9. Componentes clásicos de un ordenador
5.1. Funciones básicas del hardware
5.1.1. Entrada, salida, procesamiento y almacenamiento de datos
5.2. Cualquier componente nuevo o antiguo se puede clasificar en:
5.2.1. Entrada, salida, ruta de datos y de control, procesador y memoria
6. 11. Almacenamiento de la información
6.1. Memoria principal, volátil y DRAM
6.2. Memoria Secundaria
6.2.1. Discos magnéticos, discos duros
6.2.2. Discos ópticos
6.2.3. Memoria FLASH
7. 2. Clases de Computadoras según su finalidad
7.1. Computadores de Escritorio
7.2. Servidores
7.3. Supercomputadores
7.4. Datacenters
7.5. Empotrados
8. 3. Objetivos del Capítulo
8.1. Entender cómo se traduce de un lenguaje de alto nivel a lenguaje de máquina
8.2. Comprender cómo funciona la interfaz entre hardware y software
8.3. Aprender a mejorar el rendimiento de ciertas aplicaciones
9. 6. Software del sistema
9.1. Sistema Operativos
9.1.1. Gestión de dispositivos de E/S, asignación de memoria y repartición de recursos
9.2. Compiladores
9.2.1. Traducen instrucciones de alto nivel en instrucciones que el hardware puede ejecutar
10. 8. Beneficios de los lenguajes de Alto Nivel
10.1. Se acercan a un lenguaje más natural que es más comprensible para el programador
10.2. La productividad del programador es alta
10.3. Los programas son independientes de la máquina en donde fueron creados
11. 10. Contenido del computador
11.1. Placa base
11.2. Memoria
11.3. Procesador
11.3.1. Ruta de datos
11.3.2. Ruta de control