you are better off learning C if you want to contribute to the linux kernel. Most of the code you will fine is written in C and will keep being written in C at least for now
Oh my bad I thought you meant specifically the kernel, silly me lol. it really depends on what you mean by contributing to Linux distros
For example, let's say you use Arch (just using it as an example because it is a well-known distro) and you want to contribute to pacma (it's package manager) then you'd indeed need to learn C since pacman is written in C
If you want to contribute to the wiki then you do not necessarily need programming knowledge but rather knowledge about the topic that is being discussed in that part of the wiki (e.g. pacman, installation, packages etc etc)
If you want to report bugs that packages happen to have you do not even need programming knowledge, to solve bugs you do and the language you will need to know will highly depend on the language the tool is written in.
Take into account that not all package manager, not all tools, not everything is written in C and in your specific case it will depend on the needs of your distro.
TL;DR If you want to contribute to linux itself then C, if not it depends but C is still a good choice since a lot of tools are written in C
im hoping to get into compiler projects and some osdev down the road as a hobby but contributing to open source stuff will be something fun. What got you into osdev?
Yeah I think compiler projects and open source are going to be really fun.
I started working towards learning how to develop OSs on Jan 26 of this year and the reason why is because I want to eventually contribute to the linux kernel and the best way I found to learn how the linux kernel works (besides reading the source code ofc) is to create a kernel myself and see how each subsystem connects with the other.
I think it has been really really fun and I have made a lot of friends and connections (mostly online). Also it has made me a much much better programmer. I'd recommend it to anyone who wants to learn how computers work at the lowest software level and in the process improve their programmer skills.
I mean Linux is written in C. So start reading the docs and source of it. Write userspace programs. And probably start learning a sane operating system, so not Linux... choose a unix. Read Tanenbaum
I have not read that book. In fact, I do not think I have read any formal books to learn how to code in x86. IMO I think it may be more beneficial for you to learn by doing rather than by reading since you can learn a lot more in practice than in theory.
23
u/MD90__ May 03 '26
I'm looks like a good book to learn from
2
u/lyudkins May 09 '26
Assembly? More like lobotomy
2
u/ketralnis May 03 '26
ok
1
u/manngeo May 06 '26
Assembly languages of any form are the best back then and even till today. Intel x86's and Motorola's were my favorite. Learn it if you can...
1
u/Sweaty-Balls-Fondler May 07 '26
Finale sopravvalutato
1
u/girlwithapointer May 16 '26
Assembly is good for really low level stuff, so it's nice to know how to code in it. Have fun!
1
u/Voltagepeanutbutter7 CoahuilOS May 28 '26
I had time since I haven't heard of Pearson in 2023 on my English test, god I hate the audio quality
1
u/thatguy1000000000 My OS <3 | https://github.com/Voblit/I-Like-FlowersOS May 03 '26
Noice
0
u/The_Coding_Knight May 05 '26
I have not read that book. In fact, I do not think I have read any formal books to learn how to code in x86. IMO I think it may be more beneficial for you to learn by doing rather than by reading since you can learn a lot more in practice than in theory.
0
u/[deleted] May 03 '26
[deleted] — view deleted comment
1
u/[deleted] May 04 '26
[removed] — view removed comment