M053 sem · 60 h12 lecciones

Sigla en azul →glosario(primera vez: expansión entre paréntesis).

M05 — Organización de computadoras

Por qué existe

Entender qué hace el hardware evita magia negra con rendimiento, memoria y sistemas operativos.

En resumen: entiendes qué pasa cuando corres node: CPU, RAM, disco. Dejas de tratar la máquina como magia.

Objetivos de aprendizaje

Al terminar debes poder:

  1. Explicar el modelo von Neumann y el flujo CPU–memoria–E/S a alto nivel.
  2. Describir jerarquía de memoria, caché y la diferencia RAM vs almacenamiento.
  3. Representar datos (binario, enteros, punto flotante) y reconocer overflow y pérdida de precisión.
  4. Relacionar el modelo con un programa real (node, syscalls, I/O) y medir comportamiento básico.

Cómo estudiar esta materia (lecciones)

M05 sigue el formato de lecciones cortas y completas (como M01): marcas una a una cuando cumples “Hecho cuando”.

  1. Abre las lecciones en orden (L01 → L12).
  2. Cada lección trae objetivo, pasos, lectura de libro y criterio “Hecho cuando”.
  3. Marca la lección en la UI (interfaz de usuario) solo si cumple ese criterio.
  4. Las prácticas / proyecto siguen exigiendo evidencia en projects/m05-como-corre/.
  5. Dibuja más de lo que subrayas. Cada concepto → “¿dónde lo veo cuando corro node cli.js?”.
  6. Método general: Cómo estudiar.

Semana tipo (20 h)

Bloque Horas Qué haces
Arquitectura / memoria 6–8 L01–L08, Stallings, diagramas
Representación + medición 6–8 L09–L11, código y benchmarks
Proyecto documental 4–6 projects/m05-como-corre/ (L12)
Retro 1 RAM vs disco en tus palabras

Si un día solo tienes 2 h: una lección práctica (pasos + evidencia). No saltes la fila de lectura de esa lección.

Lecciones

Semana 1 — Arquitectura y ciclo de instrucción (~20 h)

ID Lección ~h
L01 Modelo von Neumann e introducción 5
L02 CPU, registros y ciclo de instrucción 5
L03 Buses, E/S y periféricos 5
L04 Diagrama CPU–RAM–I/O (P1) 5

Semana 2 — Memoria jerárquica y almacenamiento (~20 h)

ID Lección ~h
L05 Memoria principal y direccionamiento 5
L06 Jerarquía de memoria y caché 5
L07 Disco vs RAM y persistencia 5
L08 Medición: free, df y observación del SO 5

Semana 3 — Representación de datos y proyecto (~20 h)

ID Lección ~h
L09 Binario, hex y conversiones 5
L10 Enteros, complemento a dos y overflow 5
L11 Punto flotante y precisión (P2–P3) 5
L12 Documental “cómo corre node” y cierre 5

Empieza por L01 hoy.

Lecturas (mapa rápido)

Canon: Organización y arquitectura de computadoras — William Stallings (ed. ES). Alternativa: Tanenbaum Estructura y organización… (mismos temas). Catálogo: bibliografía.

Semana Lecciones Capítulos / foco (Stallings, por título)
1 L01–L04 Intro + estructura/función del computador + ciclo de instrucción + buses/E/S
2 L05–L08 Memoria: jerarquía, caché, interna y externa/disco + medición en terminal
3 L09–L12 Representación de datos + aritmética / overflow + proyecto “cómo corre node”

Regla: un diagrama actualizado por semana en projects/m05-como-corre/.

Ejemplo — overflow de enteros (intuición)

// En JS los Number son flotantes; igual sirve para pensar límites
const casi = Number.MAX_SAFE_INTEGER;
console.log(casi + 1 === casi + 2); // true → perdiste precisión

Reflexión: la representación finita siempre tiene límites.

Prácticas

  1. P1: Diagrama + explicación de 1 página (L04).
  2. P2: Conversiones y overflow; ejemplos en código (L09–L11).
  3. P3: Benchmark ingenuo: loop vs I/O de archivo; escribe por qué difieren (L11).

Proyecto útil

Documento en projects/m05-como-corre/: desde que escribes node cli.js hasta que ves output — procesos, memoria, syscalls a nivel conceptual (L12).

Errores comunes

  • Decir “la nube es magia” sin ubicar CPU/RAM/disco.
  • Confundir almacenamiento (SSD) con memoria principal (RAM).
  • Medir rendimiento una sola vez sin repetir.
  • Marcar lecciones sin cumplir “Hecho cuando”.

Evidencia de hecho

Marca la práctica en la UI solo si existe esto (o equivalente claro):

  • P1 — Diagrama: 1 página CPU–RAM–I/O en Markdown/imagen.
  • P2 — Binario: Ejercicios de overflow/conversión en código + notas.
  • P3 — Benchmark: Loop vs I/O medido ≥3 veces; explicación.
  • Proyecto — Cómo corre: README desde node cli.js hasta el output.

Criterios de dominio

  • Explicas RAM vs disco a un principiante.
  • Sabes por qué “más hilos” no siempre = más rápido.
  • Ubicas representación finita detrás de bugs de precisión numérica.