Processes and threads are fundamental abstractions in the operating system. To support processes and threads, the OS uses two key data structures:
thread_info; as well as a host of auxiliary functions for managing processes and threads in the system.
arch/arm/include/asm/thread_info.h - Definition of the
include/linux/sched.h - Definition of the
task_struct structure, plus many process management functions.
arch/arm/include/asm/switch_to.h - Definition of the process switch routine
arch/arm/kernel/entry-armv.S - Implementation of the
assembly level process switch routine (