Anàlisi tècnica aprofundida: com funciona un SO per dins, per què el kernel monolític modular de Linux supera el kernel híbrid de Windows en maquinari antic, i quins sistemes de fitxers marquen la diferència.
Un SO és l'intermediari entre el maquinari i les aplicacions. La seva arquitectura en capes garanteix seguretat, estabilitat i eficiència.
On s'executen les aplicacions: navegadors, editors, serveis. Cada procés té el seu propi espai d'adreces virtual, aïllat dels altres. En Linux: /usr/bin, glibc, systemd. En Windows: Win32 API, UWP, subsistema POSIX. Cap aplicació pot accedir directament al maquinari — ha de passar per les crides al sistema.
La porta controlada entre user space i kernel space. Linux ofereix ~350 syscalls (read(), write(), fork(), mmap()…). Windows utilitza ntdll.dll com a capa d'abstracció sobre les syscalls natives del NT Executive. El rendiment aquí és crític: cada context switch té un cost mesurable en cicles de CPU.
Accés directe al maquinari. Conté el planificador de CPU, el gestor de memòria virtual (VMM), els controladors de dispositiu, la pila de xarxa i els sistemes de fitxers. En Linux, tot viu en un únic espai d'adreces (monolític), però es pot carregar/descarregar dinàmicament (insmod / rmmod). En Windows, el NT Executive i el HAL conformen el kernel híbrid.
CPU (registres, caches L1/L2/L3, MMU), memòria RAM, dispositius d'emmagatzematge, perifèrics. El kernel es comunica via HAL (Hardware Abstraction Layer) en Windows, o directament a través dels controladors en Linux. Les interrupcions hardware (IRQ) i les excepcions CPU son el mecanisme base de comunicació HW→SW.
La separació en anells de privilegi (Ring 0 a Ring 3) és una característica del processador x86 que el SO aprofita per garantir que cap aplicació pugui corrompre el kernel. Si un procés en Ring 3 intenta accedir a memòria del Ring 0, la CPU genera una excepció de protecció general (#GP) i el kernel pot matar el procés de forma controlada.
La decisió arquitectònica més important d'un SO és com organitza el seu nucli. Linux i Windows han pres camins radicalment diferents — amb conseqüències reals de rendiment.
*.ko files s'insereixen/retiren en calent sense reiniciar (modprobe). Principi de pagament per ús.# Llistar mòduls carregats al kernel $ lsmod | head -15 Module Size Used by nvidia_drm 77824 4 nvidia_modeset 1245184 6 nvidia_drm nvidia 35454976 302 nvidia_modeset btrfs 1572864 1 blake2b_generic 20480 1 btrfs xor 24576 2 btrfs # Informació detallada d'un mòdul $ modinfo btrfs | grep -E "description|version|license" description: Btrfs filesystem version: 6.8.0-45-generic license: GPL # Versió exacta del kernel en execució $ uname -r && cat /proc/version 6.8.0-45-generic Linux version 6.8.0-45-generic (gcc version 13.2.0)
La gestió de memòria és on Linux mostra avantatges mesurables sobre Windows en maquinari amb poca RAM. Les polítiques per defecte marquen la diferència.
/proc/PID/oom_score) en lloc de col·lapsar.Dades mesures amb free -h (Linux) i Task Manager / RAMMap (Windows) en repòs, 5 minuts post-boot, sense aplicacions obertes. Hardware: Lenovo ThinkPad T430, 4GB DDR3, SSD SATA.
# Estat de la memòria (Linux) $ free -h total used free shared buff/cache available Mem: 3.7Gi 756Mi 2.1Gi 48Mi 851Mi 2.8Gi Swap: 2.0Gi 0B 2.0Gi # Paràmetre swappiness (0=màx RAM, 100=màx swap) $ cat /proc/sys/vm/swappiness 10 ← valor recomanat per HW antic # Activar zRAM (compressió en memòria) $ sudo modprobe zram && echo lz4 > /sys/block/zram0/comp_algorithm $ sudo zramctl --find --size 2G --algorithm lz4 /dev/zram0 lz4 2G 0B 0B 0B 4:1 # Informació detallada pàgines de memòria $ cat /proc/meminfo | grep -E "MemTotal|MemFree|Cached|SwapTotal" MemTotal: 3891200 kB MemFree: 2201344 kB Cached: 871424 kB SwapTotal: 2097148 kB
El planificador decideix quin procés s'executa en quin moment. És el cor del rendiment percebut per l'usuari.
| USER | PID | %CPU | %MEM | STAT | TIME | COMMAND |
|---|---|---|---|---|---|---|
| root | 1 | 0.0 | 0.1 | Ss | 0:03 | /sbin/init splash |
| root | 2 | 0.0 | 0.0 | S | 0:00 | [kthreadd] |
| root | 9 | 0.0 | 0.0 | S | 0:02 | [rcu_sched] |
| user | 1842 | 0.4 | 1.2 | R+ | 0:12 | firefox-esr |
| user | 2104 | 0.0 | 0.5 | Sl | 0:00 | code --type=renderer |
| user | 3391 | 0.0 | 0.0 | Z | 0:00 | [defunct] ← zombie |
El planificador CFS (Completely Fair Scheduler) de Linux, introduït al kernel 2.6.23 (2007), utilitza un arbre vermell-negre indexat per vruntime (temps virtual d'execució) per garantir equitat entre processos. La complexitat de selecció és O(log N), on N és el nombre de processos llestos. El procés amb menor vruntime sempre s'executa primer, assegurant que cap procés pateixi starvation.
El sistema de fitxers no és un detall menor: determina la integritat de les dades, el rendiment d'escriptura, la capacitat de recuperació i les funcionalitats avançades disponibles.
btrfs subvolume snapshot) sense cost d'espai inicialntfs3 des de 5.15)# Crear subvolum i snapshot instantani (sense cost d'espai) $ btrfs subvolume create /mnt/data/home_vol Create subvolume '/mnt/data/home_vol' $ btrfs subvolume snapshot /mnt/data/home_vol /mnt/snapshots/home_$(date +%Y%m%d) Create a snapshot of '/mnt/data/home_vol' in '/mnt/snapshots/home_20241115' # Activar compressió zstd en directori existent $ btrfs property set /mnt/data/home_vol compression zstd $ compsize /mnt/data/home_vol Processed 14823 files, 8401 regular extents (8401 refs), 0 inline. Type Perc Disk Usage Uncompressed Referenced TOTAL 61% 3.2GiB 5.3GiB 5.3GiB zstd 61% 3.2GiB 5.3GiB 5.3GiB # Verificar integritat del filesystem (scrub) $ sudo btrfs scrub start /mnt/data && sudo btrfs scrub status /mnt/data scrub status for 7a3f... scrub started at Mon Nov 15 09:12:03 2024 status: finished duration: 00:02:47 data_extents_scrubbed: 89234 tree_extents_scrubbed: 4821 no errors found
La detecció de corrupció silenciosa (bit rot) és un dels arguments més sòlids per a Btrfs i ZFS davant NTFS. Un estudi de Google (2010) sobre milions de discs va trobar que la corrupció silenciosa de dades és més freqüent del que s'assumia, especialment en HDD de consum. Sense checksums per bloc — com té NTFS — un fitxer pot estar corrupte sense que cap eina de diagnòstic ho detecti. Amb Btrfs/ZFS, cada lectura verifica el checksum i pot autocorregir usant una rèplica.
Maquinari de prova: Intel Core i5-3320M (2012), 4GB DDR3 1600, SSD SATA 240GB. Comparativa en condicions iguals de repòs i càrrega.
| Mètrica | Ubuntu 24.04 LTS | Debian 12 (XFCE) | Windows 10 22H2 | Windows 11 23H2 | Guanyador |
|---|---|---|---|---|---|
| RAM repòs | 🐧 Linux | ||||
| Temps boot (SSD) | 🐧 Linux | ||||
| CPU repòs | 🐧 Linux | ||||
| Compile kernel (make -j4) | 🐧 Linux | ||||
| Bateria (idle, portàtil) | 🐧 Linux | ||||
| Llicència | GPL — Gratuït | GPL — Gratuït | ~139 € | ~145 € | 🐧 Linux |
Mesures pròpies + referència Phoronix Test Suite · Kernel 6.8 · Windows 10/11 actualitzats novembre 2024. Valors orientatius.
Síntesi tècnica i recomanació argumentada.
El disseny monolític modular de Linux elimina l'overhead d'IPC intern del kernel híbrid de Windows. Cada mòdul no carregat és memòria i CPU estalviada. En HW amb 2-4GB RAM, aquesta diferència és determinant.
Linux arranca amb menys de 1GB en qualsevol entorn d'escriptori lleuger. Windows 11 consumeix 2.5GB en repòs. En una màquina amb 4GB, la diferència és el marge entre un sistema fluid i un sistema inutilitzable.
Btrfs i ZFS ofereixen funcionalitats que NTFS i ReFS no podran igualar en les versions de Windows disponibles per a usuaris finals: snapshots, checksums per bloc i compressió transparent.
El cost zero de Linux no és un factor menor quan es parla de revitalitzar parc de maquinari antic. Per a una empresa amb 50 màquines, eliminar llicències Windows representa un estalvi de 5.000–7.000€ en software sol.
La superioritat tècnica de Linux en maquinari antic no és una preferència ideològica: és una conseqüència directa de decisions d'arquitectura. El kernel monolític modular redueix l'overhead, les polítiques de memòria conserven RAM per a l'usuari, els sistemes de fitxers avançats (Btrfs, ZFS) ofereixen funcionalitats que NTFS no assoleix, i tot això a cost zero de llicència.
La recomanació tècnica és clara: per a maquinari anterior a 2016 amb menys de 8GB RAM, Linux amb Debian/Ubuntu LTS i sistema de fitxers ext4 o Btrfs representa la millor relació rendiment/cost/fiabilitat disponible al mercat avui. Windows 11 és tècnicament incompatible amb la majoria d'aquest maquinari i Windows 10 arriba al final del seu cicle de suport l'octubre de 2025.