Linux Architecture — From User Space to Hardware

Linux Architecture — From User Space to Hardware An architecture diagram generated by Archify. Applications · Regular applications · User Space Applications Regular applications Shell · Bash, Zsh · User Space Shell Bash, Zsh System Libraries · User Space System Libraries System Call Interface · Kernel service entry point · Kernel Space System Call Interface Kernel service entry point Process Management · Create · schedule · exit · Kernel Space › Kernel Subsystems Process Management Create · schedule · exit Memory Management · Virtual · physical memory · Kernel Space › Kernel Subsystems Memory Management Virtual · physical memory File System · Mounts · hierarchy · Kernel Space › Kernel Subsystems File System Mounts · hierarchy Networking · Network stack · Kernel Space › Kernel Subsystems Networking Network stack Security · Permissions · contexts · Kernel Space › Kernel Subsystems Security Permissions · contexts Device Drivers · Talk to hardware devices · Kernel Space Device Drivers Talk to hardware devices Hardware · CPU · Memory · Storage · NIC · Architecture component Hardware CPU · Memory · Storage · NIC system call User Space Kernel Space Kernel Subsystems Legend User-space programs Kernel components Security subsystem System Call Interface Hardware

User Space

  • • Memory region where regular applications run
  • • Accesses kernel services through system calls

Role of the Kernel

  • • Intermediary between hardware and software
  • • Process · memory · device management
  • • Provides the system call interface

Hardware

  • • CPU · Memory · Storage · Network card
  • • Device drivers handle communication with hardware devices