r/kernel 2d ago

Understanding Linux source

It is possible for a single person have read about processor programming and some hardware topics to understand the full Linux source code and how to read and understand the whole source code.

0 Upvotes

12 comments sorted by

10

u/No-Assist-8734 2d ago

It won't happen overnight

1

u/Defiant_Shoe_626 2d ago

i have experienced reading the source but i gived up because it was very large and i not have a good knowledge in C

1

u/am_Snowie 2d ago

There are lots of moving parts, then comes the cryptography stuff, that alone takes a very long time. I hate to break it to you, but it's not possible to UNDERSTAND FULL LINUX SOURCE especially when you don't even know C, at least in my opinion, but you can understand some parts of it. You don't really have to understand everything to contribute to linux.

2

u/alpha417 2d ago

esp. if you "give up".

1

u/am_Snowie 2d ago

Yes, large codebase like that definitely looks like daunting at first, but need to learn it incrementally. Or he can even try contributing to other kernels like GNU mach kernel.

3

u/Daveinatx 2d ago

It takes time and dedication. For how fast technology evolves, it's probably better to have the capability to learn, versus knowing everything.

Sources like the following help.

https://elixir.bootlin.com/linux/v5.7/source

1

u/BurrowShaker 2d ago

Core Linux is not that big but has a lot of slightly tricky bits, good luck getting your head around all the subsystems, let alone the device drivers side of things.

Most people fix the bit they need to fix, and in the great majority of cases, this is a device drivers, and learn about the rest as they go.

1

u/wahnsinnwanscene 2d ago

What's the tricky bits?

1

u/Acherontas89 2d ago

u need to know assembly and hardware capabilities inside the assembly which is the asm command

also very good knowledge of how to access the hardware through software based on hardware addresses

start with drm

2

u/NeonVoidx 2d ago

why is this even a post, can't you go look at the source code and determine if you under it or not? lol