Fundamentos de computación
Sistemas operativos
Procesos, threads, memoria, sistemas de archivos y lo básico de Linux. Es lo que está debajo de cada programa que escribís y de cada servidor donde lo desplegás.
Temas
Conceptos básicos
Procesos, Tabla de procesos, Threads, Espacios de direcciones, Archivos, E/S, Protección, Shell, Kernel, Arranque (booting), Terminal vs consola vs shell, Llamadas al sistema
Máquinas virtuales
Hypervisor, JVM
Procesos y threads
Creación de procesos, Terminación de procesos, Jerarquía de procesos, Estados de un proceso, Espacio de usuario, Espacio de kernel, IPC, Scheduling
Gestión de memoria
Espacios de direcciones, Memoria virtual, Paginación, Tabla de páginas, Segmentación
Sistemas de archivos
Estructura de archivos, Registros, Tipos de archivo, Nombres de archivo, Acceso a archivos, Atributos de archivo, Operaciones con archivos, Jerarquía de directorios, Operaciones con directorios, Rutas absolutas, Rutas relativas, Estructura del sistema de archivos, MBR, Particiones, Inodos
Entrada/salida
Dispositivos de bloque vs de caracteres, Controladores de dispositivos, Puertos de E/S, E/S mapeada en memoria, DMA, Independencia del dispositivo, Montaje, Buffering, Drivers
Terminal vs consola vs shell
Fundamentos de Linux
Kernel, Gestión de procesos, Gestión de memoria, Gestión de dispositivos, Llamadas al sistema, Uso de la shell, stdin, stdout, stderr, Variables de entorno, PATH, Modos y permisos de archivos, Jerarquía de directorios de Linux (directorios raíz y para qué se usa cada uno), Archivos de dispositivo (/dev/null)
Comandos básicos de Linux
ls, cp, mv, cat, touch, rm, echo, cd, mkdir, rmdir, Globbing de la shell, grep, less, pwd, diff, file, find, locate, head, tail, sort, Redirección de entrada y salida en la shell, ps, kill, Procesos en background (&), chmod, chown, Links simbólicos, Archivado y compresión (gzip, tar), sudo, sudoers
Cron en Linux
Crontab
Fundamentos de scripting en Bash
Comentarios, Comillas y literales, Variables especiales, Códigos de salida, Condicionales, Ciclos, Sustitución de comandos, Archivos temporales, Subshells
Entorno de usuario en Linux
Archivos de inicio de la shell, Alias, Prompt
Recursos
- Modern Operating Systems
Libro · Andrew S. Tanenbaum, Herbert Bos, Pearson, 2014 · Capítulos: 1.3, 1.5, 1.6, 1.7, 2.1, 2.2, 2.3.1, 2.3.2, 2.4.1, 3.1, 3.2, 3.3.1, 3.3.2, 3.7.0, 4.1, 4.2, 4.3.1, 4.3.2, 5.1, 5.2.1, 5.3 · 170 págs.
- How Linux works - what every superuser should know, 2ed
Libro · Brian Ward, No Starch Press, 2015 · Capítulos: 1, 2, 3.1, 4.5, 7.6, 11, 13 · 86 págs.
Video · 10 min
Video · 11 min
- What's the difference between a console, a terminal, and a shell?
Artículo · 4 págs.
- The Linux Command Line - A Complete Introduction
Libro · William Shotts, No Starch Press, 2019
- UNIX and Linux System Administration Handbook
Libro · Evi Nemeth et al., Addison-Wesley, 2017
Video