Questions tagged [linux-kernel]

23 questions
39
votes
2 answers

How to become a Kernel/Systems/Device driver programmer?

I currently work in a professional capacity as a software engineer working with the Android OS. We work at integrating our platform as a native daemon among other facets of the project. I primarily work in Java developing the SDK and Android…
accordionfolder
  • 509
  • 1
  • 5
  • 6
8
votes
3 answers

reading and understanding c code

I want to understand the linux kernel code, and I have been going through it but I am not able to get the full feel of what is happening(I am concentrating on network part of the linux kernel), so can anyone of you suggest good practices of reading…
hue
4
votes
1 answer

Why do some embedded projects shun cross-compiling?

As I've been getting into embedded systems I've noticed that some projects (Arch Arm and OpenBSD for example) frown upon cross compiling. What is the reasoning for this? Is a cross-compiled binary somehow different from a natively compiled one?…
4
votes
3 answers

What is a good way to learn about multicore programming at the kernel level in Linux?

I am interested in multicore programming at the kernel level. I expect this affects many areas and is probably different for each architecture. What are some must read sections of the kernel? If I wanted to compare and contrast code for an Intel…
DeveloperDon
  • 4,958
  • 1
  • 26
  • 53
3
votes
1 answer

What security practices do I employ when building a library that requires low level root access to certain devices and files?

Backstory I am writing a library that accesses the kernel module, uinput which allows you to create or take control of devices in /dev/input/event#, and insert events into them. A simple usecase would allow someone to write a script that would move…
2
votes
0 answers

Better alternative for cherry picking across heavily diverged branches

I'm currently trying to update the linux kernel used in a xilinx SoC, my company has an internal repo/fork of xilinx open source linux with a bunch of kernel drivers for our custom hardware & kernel config stuff. Our current fork is based on…
Skye
  • 29
  • 2
2
votes
2 answers

Can the operating system "break up" a memory allocation (Linux)?

Let's say a process (P1) is asking for 100 MB of memory, and the RAM looks like this: [[50 MB free] [USED] [60 MB free] [USED]] Since there are technically enough memory that are available (110MB free), what would happen? According to some sources…
qwerty_99
  • 163
  • 3
2
votes
3 answers

Is it cleaner to decrement a sleeping process counter in the waking process or the woken process?

Say I have a reader and a producer that share a buffer. I have a wait queue for the reader to put itself in if there is no contents in the buffer when it reads. I also have an atomic variable for keeping track of the number of readers. The producer…
2
votes
2 answers

Estimation Techniques for Linux Kernel Development

I am working in Linux Kernel area and my work includes: code study / Understanding Porting (say from one kernel version to another kernel version) Implementation of new kernel module / Device driver How to do estimation in such Linux Kernel…
Adil
  • 123
  • 4
1
vote
2 answers

What does the inode point to in case of a device file other than the disk?

I know that the inode points to the actual disk blocks in the case of the normal file system. But what does it point to in the case of .... say .... the terminal device file. Does it point to the terminal device driver?
1
vote
1 answer

Managing Linux Kernel Config Files in Revision control

I am working on some Linux kernel drivers for a specific embedded system (NVIDIA Tegra X1). I am using the kernel source provided by NVIDIA (L4T), which has its own default kernel config files. My goal is to make some modifications to NVIDIA's…
1
vote
1 answer

What does using pointer in Linux kernel imply?

So far I was under the perspective that while working in the kernel code, working with memory implies working with long integers and not pointers because dereferencing pointers shouldn't be done in the kernel code: A quote on the topic from…
TheMeaningfulEngineer
  • 951
  • 2
  • 10
  • 17
0
votes
0 answers

Assigning weights dynamically to ensure equal distribution

Scenario:- The load balancer distributes traffic to backends with a simple round-robin mechanism. With default config, each backend is assigned weight "1" so all backends are given equal chance of receiving requests. If some backend is given…
0
votes
1 answer

Design improvement - C

Below is the design, that is implemented similar to design used in Linux/net/socket.c. Below design provide List abstraction, where, list.h provides List interface, show here Background: Reason to implement List abstraction in this approach is…
overexchange
  • 2,245
  • 2
  • 17
  • 47
0
votes
3 answers

Can the Linux kernel be described as a Server?

I am developping an Android application that is using NDK in order to access to data from the Linux kernel. As you may know, this is done using IPC (Inter Process Communication) through Android's bound services. While writing the documentation…
Radhwen
  • 119
  • 2
1
2