Why do process names start with the letter k in Linux?
When using the top command on a linux server, I can see multiple root processes starting with the letter k, like for example kthreadd, kblockd, khelper, kacpi_notify, ksmd, kswapd0, khugepaged, ksmd and much more.
I assume it's not a coincidence; what does the k stand for here?
linux process
add a comment |
When using the top command on a linux server, I can see multiple root processes starting with the letter k, like for example kthreadd, kblockd, khelper, kacpi_notify, ksmd, kswapd0, khugepaged, ksmd and much more.
I assume it's not a coincidence; what does the k stand for here?
linux process
1
A bit googling tells you "kernel"
– deviantfan
Jun 10 '16 at 15:34
@deviantfan I guessed "k" for "kernel" without googling :)
– DavidPostill♦
Jun 10 '16 at 15:35
1
@DavidPostill That was meant as a hint to OP that writing questions for this is not necessary, not that we all need Google for this.
– deviantfan
Jun 10 '16 at 15:37
add a comment |
When using the top command on a linux server, I can see multiple root processes starting with the letter k, like for example kthreadd, kblockd, khelper, kacpi_notify, ksmd, kswapd0, khugepaged, ksmd and much more.
I assume it's not a coincidence; what does the k stand for here?
linux process
When using the top command on a linux server, I can see multiple root processes starting with the letter k, like for example kthreadd, kblockd, khelper, kacpi_notify, ksmd, kswapd0, khugepaged, ksmd and much more.
I assume it's not a coincidence; what does the k stand for here?
linux process
linux process
edited Jan 22 at 4:24
Blackwood
2,89671728
2,89671728
asked Jun 10 '16 at 15:31
Nicolas CNicolas C
17318
17318
1
A bit googling tells you "kernel"
– deviantfan
Jun 10 '16 at 15:34
@deviantfan I guessed "k" for "kernel" without googling :)
– DavidPostill♦
Jun 10 '16 at 15:35
1
@DavidPostill That was meant as a hint to OP that writing questions for this is not necessary, not that we all need Google for this.
– deviantfan
Jun 10 '16 at 15:37
add a comment |
1
A bit googling tells you "kernel"
– deviantfan
Jun 10 '16 at 15:34
@deviantfan I guessed "k" for "kernel" without googling :)
– DavidPostill♦
Jun 10 '16 at 15:35
1
@DavidPostill That was meant as a hint to OP that writing questions for this is not necessary, not that we all need Google for this.
– deviantfan
Jun 10 '16 at 15:37
1
1
A bit googling tells you "kernel"
– deviantfan
Jun 10 '16 at 15:34
A bit googling tells you "kernel"
– deviantfan
Jun 10 '16 at 15:34
@deviantfan I guessed "k" for "kernel" without googling :)
– DavidPostill♦
Jun 10 '16 at 15:35
@deviantfan I guessed "k" for "kernel" without googling :)
– DavidPostill♦
Jun 10 '16 at 15:35
1
1
@DavidPostill That was meant as a hint to OP that writing questions for this is not necessary, not that we all need Google for this.
– deviantfan
Jun 10 '16 at 15:37
@DavidPostill That was meant as a hint to OP that writing questions for this is not necessary, not that we all need Google for this.
– deviantfan
Jun 10 '16 at 15:37
add a comment |
1 Answer
1
active
oldest
votes
Those aren’t processes but kernel threads:
Threads are "light weight processes" (LWPs). [...]
[...]
Kernel-space threads often are implemented in the kernel using several tables (each task gets a table of threads). In this case, the kernel schedules each thread within the timeslice of each process. There is a little more overhead with mode switching from user->kernel-> user and loading of larger contexts, but initial performance measures indicate a negligible increase in time.
Advantages. Since the clocktick will determine the switching times, a task is less likely to hog the timeslice from the other threads within the task. Also I/O blocking is not a problem. Lastly, if properly coded, the process automatically can take advantage of SMPs and will run incrementally faster with each added CPU.
Related reading
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "3"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1087714%2fwhy-do-process-names-start-with-the-letter-k-in-linux%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
Those aren’t processes but kernel threads:
Threads are "light weight processes" (LWPs). [...]
[...]
Kernel-space threads often are implemented in the kernel using several tables (each task gets a table of threads). In this case, the kernel schedules each thread within the timeslice of each process. There is a little more overhead with mode switching from user->kernel-> user and loading of larger contexts, but initial performance measures indicate a negligible increase in time.
Advantages. Since the clocktick will determine the switching times, a task is less likely to hog the timeslice from the other threads within the task. Also I/O blocking is not a problem. Lastly, if properly coded, the process automatically can take advantage of SMPs and will run incrementally faster with each added CPU.
Related reading
add a comment |
Those aren’t processes but kernel threads:
Threads are "light weight processes" (LWPs). [...]
[...]
Kernel-space threads often are implemented in the kernel using several tables (each task gets a table of threads). In this case, the kernel schedules each thread within the timeslice of each process. There is a little more overhead with mode switching from user->kernel-> user and loading of larger contexts, but initial performance measures indicate a negligible increase in time.
Advantages. Since the clocktick will determine the switching times, a task is less likely to hog the timeslice from the other threads within the task. Also I/O blocking is not a problem. Lastly, if properly coded, the process automatically can take advantage of SMPs and will run incrementally faster with each added CPU.
Related reading
add a comment |
Those aren’t processes but kernel threads:
Threads are "light weight processes" (LWPs). [...]
[...]
Kernel-space threads often are implemented in the kernel using several tables (each task gets a table of threads). In this case, the kernel schedules each thread within the timeslice of each process. There is a little more overhead with mode switching from user->kernel-> user and loading of larger contexts, but initial performance measures indicate a negligible increase in time.
Advantages. Since the clocktick will determine the switching times, a task is less likely to hog the timeslice from the other threads within the task. Also I/O blocking is not a problem. Lastly, if properly coded, the process automatically can take advantage of SMPs and will run incrementally faster with each added CPU.
Related reading
Those aren’t processes but kernel threads:
Threads are "light weight processes" (LWPs). [...]
[...]
Kernel-space threads often are implemented in the kernel using several tables (each task gets a table of threads). In this case, the kernel schedules each thread within the timeslice of each process. There is a little more overhead with mode switching from user->kernel-> user and loading of larger contexts, but initial performance measures indicate a negligible increase in time.
Advantages. Since the clocktick will determine the switching times, a task is less likely to hog the timeslice from the other threads within the task. Also I/O blocking is not a problem. Lastly, if properly coded, the process automatically can take advantage of SMPs and will run incrementally faster with each added CPU.
Related reading
edited Mar 20 '17 at 10:17
Community♦
1
1
answered Jun 10 '16 at 15:34
Daniel BDaniel B
34.3k76587
34.3k76587
add a comment |
add a comment |
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1087714%2fwhy-do-process-names-start-with-the-letter-k-in-linux%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
A bit googling tells you "kernel"
– deviantfan
Jun 10 '16 at 15:34
@deviantfan I guessed "k" for "kernel" without googling :)
– DavidPostill♦
Jun 10 '16 at 15:35
1
@DavidPostill That was meant as a hint to OP that writing questions for this is not necessary, not that we all need Google for this.
– deviantfan
Jun 10 '16 at 15:37