Everything about UNIX kernels: development, configuration, compilation, design, etc.

learn more… | top users | synonyms

266
votes
7answers
23k views

Understanding the Linux kernel source

I am trying to understand how a function, say mkdir, works by looking at the kernel source. This is an attempt to understand the kernel internals and navigate between various functions. I know mkdir ...
101
votes
3answers
7k views

What does the Windows flag in the Linux logo of kernel 3.11 mean?

I've just installed kernel-3.11.0-1.fc20 for my Fedora 19 installation. During the rebooting progress, I saw the Linux logo with a Windows flag in it, what does it mean? The Fedora 19 is installed ...
63
votes
12answers
7k views

What is the benefit of compiling your own linux kernel?

What benefit could I see by compiling a Linux kernel myself? Is there some efficiency you could create by customizing it to your hardware?
52
votes
3answers
27k views

How do I read from /proc/$pid/mem under Linux?

The Linux proc(5) man page tells me that /proc/$pid/mem “can be used to access the pages of a process's memory”. But a straightforward attempt to use it only gives me $ cat /proc/$$/mem ...
49
votes
5answers
20k views

What are high memory and low memory on Linux?

I'm interested in the difference between Highmem and Lowmem: Why is there such a differentiation? What do we gain by doing so? What features does each have?
47
votes
3answers
2k views

What happens when I run the command cat /proc/cpuinfo?

What happens when I write cat /proc/cpuinfo. Is that a named pipe (or something else) to the OS which reads the CPU info on the fly and generate that text each time I call it?
36
votes
5answers
2k views

How to compile the C compiler from scratch, then compile Unix/Linux from scratch

Let's say I work for a large services organisation outside the US/UK. We use UNIX and Linux servers extensively. Reading through this article it mentions that it would be easy to insert a backdoor ...
30
votes
4answers
19k views

What is the difference between reboot , init 6 and shutdown -r now?

I just want to know difference between in reboot init 6 shutdown -r now and which is the safest and the best?
27
votes
2answers
930 views

What's the difference between a kernel oops and a kernel panic?

I know what a kernel panic is, but I've also seen the term "kernel oops". I'd always thought they were the same, but maybe not. So: What is a kernel oops, and how is it different from a kernel panic? ...
25
votes
12answers
2k views

How can I tweak my Linux desktop to be more responsive?

I have the experience that Linux works fine until the physical memory is exhausted. As soon as swap space is used the performance is severely degraded and the GUI becomes unresponsive. This problem ...
24
votes
4answers
31k views

How to reload udev rules without reboot?

How should one reload udev rules, so that newly created one can function? I'm running Arch Linux, and I don't have a udevstart command here. Also checked /etc/rc.d, no udev service there.
23
votes
7answers
13k views

Linux Kernel: Good beginners' tutorial

I'm interested in modifying the kernel internals, applying patches, handling device drivers and modules, for my own personal fun. Is there a comprehensive resource for kernel hacking, intended for ...
23
votes
1answer
2k views

High CPU usage with CFS?

I asked a previous question to try and isolate the source of an increase in CPU usage when moving an application from RHEL 5 to RHEL 6. The analysis that I did for that seems to indicate that it is ...
21
votes
3answers
932 views

If computers start counting at 0, why does the init process have a pid of 1?

Not much to put here in the body, the question is self explanatory.
21
votes
4answers
6k views

Who's consuming my inotify resources?

After a recent upgrade to Fedora 15, I'm finding that a number of tools are failing with errors along the lines of: tail: inotify resources exhausted tail: inotify cannot be used, reverting to ...
19
votes
5answers
5k views

What is the difference between kernel drivers and kernel modules?

When I do a lspci -k on my Kubuntu with a 3.2.0-29-generic kernel I can see something like this: 01:00.0 VGA compatible controller: NVIDIA Corporation G86 [Quadro NVS 290] (rev a1) Subsystem: ...
18
votes
4answers
2k views

Kernel Hacking Environment

I have been working in embedded OS like uCOS, ThreadX. While I have coded apps in Linux, now I’m planning to start learning Linux Kernel. I have few questions regarding the environment. Which is ...
17
votes
3answers
2k views

How much RAM does the kernel use?

This question is motivated by my shock when I discovered that Mac OS X kernel uses 750MB of RAM. I have been using Linux for 20 years, and I always "knew" that the kernel RAM usage is dwarfed by X ...
17
votes
1answer
8k views

Kernel inotify watch limit reached

I'm currently facing a problem on a linux box where as root I have commands returning error because inotify watch limit has been reached. # tail -f /var/log/messages [...] tail: cannot watch ...
17
votes
1answer
8k views

How to assign USB driver to device

This question is two-fold: First, how do you manually detach a driver from a USB device and attach a different one? For example, I have a device that when connected automatically uses the ...
16
votes
1answer
543 views

Configuring, compiling and installing a linux kernel

I'd like to try using a kernel other than the one provided by my distro -- either from somewhere else, or as customized by me. Is this difficult or dangerous? Where do I start?
16
votes
1answer
18k views

How is a message queue implemented in the Linux kernel?

I would like to know how Message Queues are implemented in the Linux Kernel.
16
votes
1answer
1k views

Why isn't a straightforward 1/5/15 minute moving average used in Linux load calculation?

Until recently i thought the load average (as shown for example in top) was a moving average on the n last values of the number of process in state "runnable" or "running". And n would have been ...
16
votes
2answers
630 views

Linux kernel for Nintendo Wii

I'm trying to compile a Linux kernel for the Nintendo Wii newer than the version 2.6.32 with mike p5 patches, which I have been using since now without problems. Since version 2.6.33 Wii support is ...
15
votes
4answers
601 views

What is new in Kernel 3.0?

I understand this is somewhat less Ubuntu related, but it affects it. So,what is so new about it that Linus decided to name it 3.0? I'm not trying to get information about the drivers that got into ...
15
votes
1answer
487 views

How is new hardware support added to the linux kernel?

Imagine there's a company A that releases a new graphics adapter. Who manages the process that results in this new graphics adapter being supported by the Linux kernel in the future? How does that ...
15
votes
5answers
13k views

How is an Interrupt handled in Linux?

I just know that Interrupt is a hardware signal assertion caused in a processor pin. But I would like to know how Linux OS handles it. What all are the things that happen when an interrupt occurs?
15
votes
2answers
9k views

how to check rx ring, max_backlog, and max_syn_backlog size

Quite often in the course of troubleshooting and tuning things I find myself thinking about the following Linux kernel settings: net.core.netdev_max_backlog net.ipv4.tcp_max_syn_backlog ...
14
votes
3answers
6k views

How can I reserve a block of memory from the Linux kernel?

I have a device that needs a block of memory that is reserved solely for it, without the OS intervening. Is there any way to tell BIOS or the OS that a block of memory is reserved, and it must not ...
14
votes
2answers
388 views

Can I list the filesystems a running kernel can support?

I'm trying to detect what filesystems a kernel can support. Ideally in a little list of their names but I'll take anything you've got. Note that I don't mean the current filesystems in use, just ones ...
13
votes
5answers
2k views

Any way to restart a Linux machine via SSH if the root filesystem is not working?

Just as a curiosity; something went wrong with a Linux machine, making the root file system show up as "64Z". A few commands work, like top, df, and kill, but others like reboot come up with "command ...
13
votes
3answers
2k views

Why don't you need to update drivers? (Or do you?)

In my life I've not once updated drivers on any of my Linux systems, though they have all been desktops. A friend was asking me why one does not need to update Linux drivers and I found myself unable ...
13
votes
4answers
429 views

How do I learn what I can do with /proc and /sys

I'd like to know more about the advanced uses of the /proc and /sys virtual filesystems, but I don't know where to begin. Can anyone suggest any good sources to learn from? Also, since I think sys has ...
13
votes
6answers
4k views

How does Linux kernel compare to microkernel architectures?

I read once that one advantage of a microkernel architecture is that you can stop/start essential services like networking and filesystems, without needing to restart the whole system. But considering ...
13
votes
1answer
3k views

What is difference between User space and Kernel space?

Is Kernel space used when Kernel is executing on the behalf of the user program i.e. System Call? Or is it the address space for all the Kernel threads (for example scheduler)? If it is the first ...
13
votes
3answers
3k views

What does the vm.swappiness parameter really contol?

Per the kernel documentation: This control is used to define how aggressive the kernel will swap memory pages. Higher values will increase agressiveness, lower values decrease the amount of swap. ...
13
votes
2answers
3k views

Why is swappiness set to 60 by default?

I just read some stuff about swappiness on Linux. I don't understand why the default is set to 60. According to me this parameter should be set to 10 in order to reduce swap. Swap is on my hard ...
13
votes
3answers
257 views

What are the responsibilities of each Pseudo-Terminal (PTY) component (software, master side, slave side)?

I am trying to figure out how a tty works1 (the work-flow and responsibilities of each elements). I have read several interesting articles about it, but there are still some blurry areas. This is ...
13
votes
2answers
4k views

Why does high disk I/O reduce system responsiveness/performance?

I never quite understood why high disk I/O slowed the system so much. It's strange to me because I would expect the slow-down to affect only those processes dependent on the hard/optical drive data, ...
12
votes
3answers
2k views

Why there are many BSD systems but only one Linux kernel?

Why there are many BSD systems but only one Linux kernel? I wonder why BSD was forked many times, but no such thing with Linux.
12
votes
2answers
2k views

How to blacklist a correct bad RAM sector according to MemTest86+ error indication?

MemTest86+ (the version included with Ubuntu 13.04) says Failing address: 002f796c48 - 759.5 MB What should I specify in the memmap kernel parameter to bypass this area? I've tried running ...
12
votes
1answer
859 views

Rebooting without shutting off?

I have been using Linux Mint Debian with Debian unstable and noticed that when I press restart, instead of going all the way back to the BIOS, then grub, then booting up, I seem to be shutting down ...
12
votes
4answers
2k views

Read the stack of another process?

I'm trying to read a child process's stack but with no luck. I know it is possible using ptrace, but ptrace's interface allows you to read only one word at a time, and I'm trying to scan a larger ...
12
votes
3answers
2k views

Increasing kernel memory size

I have an embedded board with 512MB of RAM running Linux 2.6.29 and UBoot bootloader. But the kernel is able to utilize only 128MB of RAM. I tried changing the value of XCODE_MEMSIZE, which I think ...
11
votes
2answers
520 views

Contents of /proc

Is there a site someplace that lists the contents of /proc and what each entry means?
11
votes
1answer
282 views

Can entropy consumption at program start be prevented?

I use Knoppix (or other Live CDs/DVDs) as a secure environment for creating valuable crypto keys. Unfortunately entropy is a limited resource in such environments. I just noticed that each program ...
11
votes
1answer
9k views

How to use Linux kernel driver bind/unbind interface for USB-HID devices?

First background. I am developing a driver for Logitech game-panel devices. It's a keyboard with a screen on it. The driver is working nicely but by default the device is handled by HID. In order to ...
11
votes
3answers
278 views

Where to find explanation of kernel processes?

I want to know about kernel processes, like [migration], [kswapd], etc. Where are kernel processes like these documented?
10
votes
6answers
1k views

Can Linux “run out of RAM”?

I saw several posts around the web of people apparently complaining about a hosted VPS unexpectedly killing processes because they used too much RAM. How is this possible? I thought all modern OS' ...
10
votes
5answers
5k views

Compiling GNU/Linux with -O3 optimization

It's said that compiling GNU tools and Linux kernel with -O3 gcc optimization option will produce weird and funky bugs. Is it true? Has anyone tried it or is it just a hoax?