mywiki:linux:linux_kernel_notes
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| mywiki:linux:linux_kernel_notes [2015/10/14 15:06] – super | mywiki:linux:linux_kernel_notes [2019/09/15 18:55] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| | [[http:// | | [[http:// | ||
| + | ===== Kernel Context knowledge ===== | ||
| + | | process context | includes user context, kernel thread, work queue | | ||
| + | | User Context | The kernel executing on behalf of a particular process (ie. a system call or trap, ioctl, module_init, | ||
| + | | Userspace (not kernel) | A process executing its own code outside the kernel | | ||
| + | | Interrupt context | includes hard irq, kernel timer, softirq, tasklet | if in_interrupt() true | | ||
| + | | Hardware IRQ | Hardware interrupt request | if in_irq() true | | ||
| + | | Softirq | Software interrupt handler. in_irq() returns false; in_softirq() returns true. Tasklets and softirqs both fall into the category of ' | ||
| + | | Tasklet | A dynamically-registered software interrupt, which is guaranteed to only run on one CPU at a time | | ||
| + | | Timer | which is running at (or close to) a given time. When running, it is just like a tasklet (in fact, they are called from the TIMER_SOFTIRQ). | | ||
| + | |||
mywiki/linux/linux_kernel_notes.1444806377.txt.gz · Last modified: (external edit)
