The diagram is zoomable and pannable with mouse. Some nodes are links to documentation. Generated by Graphviz from source.

matrix SCI System calls system system system->system_ processing processing sysfs proc & sysfs file systems SCI->sysfs DM Device Model sysfs->DM log_sys system run, modules, generic HW access DM->log_sys bus_drv bus drivers log_sys->bus_drv buses buses: PCI, USB ... bus_drv->buses sock Sockets networking networking networking->networking_ prot_fam protocol families sock->prot_fam log_prot protocols: TCP, UDP, IP prot_fam->log_prot netif network interfaces and drivers log_prot->netif net_hw network: Ethernet, WiFi ... netif->net_hw NFS NFS NFS->log_prot FS files and directories storage storage storage->storage_ VFS Virtual File System FS->VFS VFS->NFS logFS logical filesystems: ext3, xfs ... VFS->logFS PC page cache VFS->PC mmap memory mapping VFS->mmap block Block devices and drivers logFS->block PA Page Allocator PC->PA RAM MMU, RAM PA->RAM log_mem logical memory mmap->log_mem SW Swap mmap->SW SD storage devices: SCSI, NVMe ... block->SD proc Processes processing->processing_ memory memory Tasks Tasks proc->Tasks sync synchronization Tasks->sync sched Scheduler sync->sched IRQ interrupts core, CPU arch sched->IRQ CPU CPU IRQ->CPU bottom © 2007-2021 Constantine Shulyupin http://www.MakeLinux.net/kernel/diagram char char devices HI human interface HI->HI_ input input subsystem char->input F7 HI class drivers input->F7 HID HI peripherals drivers F7->HID display keyboard, mouse, display, audio HID->display memory->memory_ functions functions functions->functions_ layers layers usr user space interfaces usr->usr_ virt virtual subsystems usr->virt MA memory access VM Virtual memory MA->VM virt->D0 bridges bridges virt->bridges VM->mmap bridges->E0 logical logical bridges->logical logical->F0 HWI hardware interfaces logical->HWI log_mem->PA HWI->G0 HW electronics, hardware HWI->HW HW->H0 SW->block layers->usr LKD Linux kernel diagram

<?xml version=”1.0” encoding=”UTF-8” standalone=”no”?>