To: mingo, peterz, juri.lelli, vincent.guittot, mcgrof, keescook 11:51 ` Peter Zijlstra 0 siblings, 1 reply 3 messages in thread * * The type inconsistency of the wait_event_*() _ret variable is also * on purpose we use long where we can return timeout values and int * otherwise.Sched: move rr_timeslice sysctls to rt.c LKML Archive on help / color / mirror / Atom feed * sched: move rr_timeslice sysctls to rt.c 6:08 Zhen Ni * * This is so that both can use the _wait_cond_timeout() construct * to wrap the condition. Static _always_inline struct rq * context_switch ( struct rq * rq, struct task_struct * prev, struct task_struct * next, struct rq_flags * rf ) while (0) #define _wait_event(wq_head, condition) \ (void)_wait_event(wq_head, condition, TASK_UNINTERRUPTIBLE, 0, 0, \ schedule()) /* * The below macro _wait_event() has an explicit shadow of the _ret * variable when used from the wait_event_*() macros. Point to that new namespace instead of the default one. Is created a new net namespace is created and then new processes can System initializes with a default namespace ( init_net) and byĭefault all processes will share this namespace. Networking interfaces, the list is part of a struct net. For example, instead of having a global list for ItĬurrently supports IPC, networking, cgroup, mount, networking, PID, Is used to group types of resources that we want to partition. To achieve this partitioning, the struct nsproxy structure With containers, processes in oneĬontainer will not be visible (in /proc or be killable) to other They allow isolation of different resources that would Lightweight "VM" and docker - a specialized container for running aĬontainers are built on top of a few kernel features, one of which is Hypervisor runs multiple VMs, each with its one kernelĮxamples of container technologies are LXC - that allows running Same kernel instance, as opposed to normal virtualization where a "Containers" are a form of lightweight virtual machines that share the They will point to different resource structure instances. If two threads are in different processes Thus, if two threads are the same process will point to the same Task structure it has pointers to these resources. The basic unit isĬalled a task (hence the struct task_struct) and it is usedįor both tasks and processes. Linux uses a different implementation for threads. For example, the Windows kernel uses such an Implemented as a separate data structure which is then linked to the The typical thread implementation is one where the threads is fibers, coroutines, etc.) are not visible at the kernel level The kernel schedules threads not processes and user-level threads.A thread runs in the context of a process and all threads in the.Values it determines the thread execution state Each thread has its own stack and together with the register.Root - Ī thread is the basic unit that the kernel process scheduler uses toĪllow applications to run the CPU. Using gdb scripts for kernel inspection.Quiz: previous implementation for current (x86).Quiz: Inspect a task to determine opened files.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |