2010-08-06 12:16:43

by dingshaoheng

[permalink] [raw]
Subject: Hello, newbie wants help.

Hello, all.

I have used linux(ubuntu) for more than one year.
For long time, I wish I can hack in the kernel.
But I still can't fix a bug or write a driver, except compile the kernel.
I really need some suggestion.
Now, I'm reading some book--
Linux kernel development, second edition, by Robert Love.
Linux device driver, third edition, by Jonatban Corbet etc.

But I find these books is so difficult to understand.
The author always gave out new things that he has never explained.
I wish if there is some way to learn the kernel step by step, or less hard.
Could anyone give me some advice?

PS: I have tried to read the source code, but they are even more difficult.
I wish this email has been posted to the right place(not disturb you).
I know you are busy coding. If this email is not appropriately, please do't
be angry, just ignore it.

Thanks.


2010-08-06 15:01:20

by Victor Rodriguez

[permalink] [raw]
Subject: Re: Hello, newbie wants help.

2010/8/6 dingshaoheng <[email protected]>:
> Hello, all.
>
> I have used linux(ubuntu) for more than one year.
> For long time, I wish I can hack in the kernel.
> But I still can't fix a bug or write a driver, except compile the kernel.
> I really need some suggestion.
> Now, I'm reading some book--
> ? ? ? ?Linux kernel development, second edition, by Robert Love.
> ? ? ? ?Linux device driver, third edition, by Jonatban Corbet etc.
>
> But I find these books is so difficult to understand.
> The author always gave out new things that he has never explained.
> I wish if there is some way to learn the kernel step by step, or less hard.
> Could anyone give me some advice?
>
> PS: I have tried to read the source code, but they are even more difficult.
> I wish this email has been posted to the right place(not disturb you).
> I know you are busy coding. If this email is not appropriately, please do't
> be angry, just ignore it.
>
> Thanks.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at ?http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at ?http://www.tux.org/lkml/
>

Do not worry I think that everyone should had been new in linux ones.
If i understand you want to learn how fix a bug and wtitea driver, ok
look these are some links that i found interesting last mount when i
started to learn linux.

For the newwbies just likeus there is a web page

http://kernelnewbies.org

there you could check the all that you need

Take a look to

The Linux Kernel Module Programming Guide

http://www.tldp.org/LDP/lkmpg/2.6/html/index.html

and try to make your own hello word in Kernel Module
try to make a char driver and to make a procfs program
than and your procfs module to your OS and used it latter

this is a really good web page in order to see how to use you char
driver to turn on a led in your parallel port for example ( this is a
really good device driver example ) : )

http://www.freesoftwaremagazine.com/articles/drivers_linux?page=0%2C0

Then if you want to test your sistem make the TODO from kernel
janitors it is a really good beginning

it will take you a long time to do all the steps , but it will help
you to test your kernel with the Linux Test Project for example or
running a random config when you compile your kernel .


http://code.google.com/p/kernel-janitors/wiki/TODO


To understand linux check this

http://www.linuxfromscratch.org/

and learn the more that you can about C you will need it

a really good book is

C Programming Language (2nd Edition) from Kernigan and Ritchie

I hope it helps you It helps me

Sincerely yours

Victor Rodriguez