jinutminx wrote:guys, thank u all for ur suggestions. I am currently reading these 2 books: Assembly Language: Step-by-Step by Jeff Duntemann and Programming from the Ground Up by Jonathan Bartlett. Please tell me if these books would help me in my quest?
Tell us what programming languages you know already, your experience etc. And also, tell us what you want to do. You'll need to know C, in my opinion. But knowledge of programming languages alone won't be enough, you'll have to learn linux itself and how operating systems work.
Good news - linux is free and open source. You are free to view the source code and believe me, just reading the source code and playing with the kernel will teach you more, than any book in the world would. I'm not saying that books are useless, but books can't teach you everything. So, learn C, linux and its code. There are other free/open source kernels/OS-es as well: GNU Hurd and Minix for example.
xenopeek gave you a good link. Here's another link: https://kernel.org/