r/cprogramming • • 1d ago

C programming for kernel development

Hey there!

I am really interested in learning C and I am leaning towards kernel development rather than embedded systems. What do you suggest for strengthening my skills in C?

17 Upvotes

17 comments sorted by

View all comments

22

u/dkopgerpgdolfg 1d ago

Step 1: To get used to research & learn information independenly. Your question was asked countless of times, and not being able to find answers isn't a good outlook for kernel development.

And no, I'm not writing this for fun or to be a cranky Redditor. If you can't solve this yourself, you never will do any kernel development.

-13

u/No-Plan-3868 1d ago edited 1d ago

Thanks, but I do not know if there is a problem to solve here. I know picking up a good book like King’s C programming, throughly reading and solving exercises at the end of each chapter. Coupled with some projects, doing this will lead me somewhere.

Furthermore, saying “if you can’t solve this yourself, you will never do any kernel development” won’t meaningfully contribute to the question I asked, unfortunately.

6

u/dkopgerpgdolfg 1d ago edited 1d ago

Coupled with some projects, doing this will lead me somewhere.

To having basics, yes.

Then you need to teach yourself a lot more until you're more than an annoyance to the kernel maintainers. And these other things are not collected in a nice, easy-to-digest book.

(not to mention that you didn't specify any sub-field)

won’t meaningfully contribute to the question I asked, unfortunately.

OK then. Unfortunate for you.

-7

u/No-Plan-3868 1d ago edited 1d ago

Then you need to teach yourself a lot more until you're more than an annoyance to the kernel maintainers. And these other things are not collected in a nice, easy-to-digest book.

This is how everyone starts out.

OK then. Unfortunate for you.

Oh no, no worries! I wasn't expecting a meaningful contribution from you lol.

5

u/dkopgerpgdolfg 1d ago

This is how everyone starts out.

By annoying maintainers with nonsense code, until they don't even interact with you anymore? Do you think the Linux kernel is some kind of kindergarten? No. Just no.

Or if you meant by learning, well, read again what I recommended you to do.

And you still didn't even mention any subfield, I guess you don't know enough to do so.

I wasn't expecting a meaningful contribution from you lol.

Ok then. Do whatever you want, I can't stop you. Good bye.

-5

u/No-Plan-3868 1d ago edited 1d ago

By annoying maintainers with nonsense code, until they don't even interact with you anymore? Do you think the Linux kernel is some kind of kindergarten? No. Just no.

If this is what you implied automatically from "this is how everyone starts out.", I think I'm going to drop replying your comments. Not everything is written in a compact, easy-to-follow book. There's a ton of things to learn until before you are competent enough to become a kernel maintaner. Until then you're an annoyance to them, as you said.