Size: 11659
Comment: checking the links
|
Size: 11524
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
Line 5: | Line 4: |
== What is this list about? == This list a list for budding kernel hackers, so the idea is ask queries which are mostly related to Linux Kernel, directly and sometimes indirectly. |
|
Line 6: | Line 7: |
== What is this list about? == This list a list for budding kernel hackers, so the idea is ask queries which are mostly related to Linux Kernel, directly and sometimes indirectly. |
|
Line 13: | Line 9: |
Line 16: | Line 10: |
Line 19: | Line 12: |
1. Linux kernel subsystems. | |
Line 20: | Line 14: |
1. Linux kernel subsystems. | |
Line 22: | Line 15: |
Line 23: | Line 17: |
Line 24: | Line 19: |
Line 25: | Line 21: |
Line 26: | Line 23: |
Line 27: | Line 25: |
Line 32: | Line 28: |
Line 35: | Line 30: |
Not only are they annoying, but they waste a lot of time and precious computing power.}}} |
Not only are they annoying, but they waste a lot of time and precious computing power. |
Line 41: | Line 34: |
=== 2. Give relevant information about your question === a. Since you have already given description of your problem, now its time to assist others with the details of the problem at hand. |
|
Line 42: | Line 37: |
b. Since kernel is complex beast, you need to give reference to what you are really asking about. | |
Line 43: | Line 39: |
c. A code snippet is always the best thing to include. This shows that you have really dug into the code and you know what you are asking. | |
Line 44: | Line 41: |
=== 2. Give relevant information about your question === | d. Give details of what you have tried, and where you are really stuck, this makes life easy for everyone. |
Line 46: | Line 43: |
a. Since you have already given description of your problem, now its time to assist others with the details of the problem at hand. b. Since kernel is complex beast, you need to give reference to what you are really asking about. c. A code snippet is always the best thing to include. This shows that you have really dug into the code and you know what you are asking. d. Give details of what you have tried, and where you are really stuck, this makes life easy for everyone. |
|
Line 52: | Line 45: |
=== 3. When to Ask questions? === This is most relevant part of this entire process. if you master this art, you will be _winner_ of this mailing list. |
|
Line 53: | Line 48: |
First ask yourself "have you really done your own bits?" what comprises of doing your own bits? | |
Line 54: | Line 50: |
=== 3. When to Ask questions? === | Have you read the relevant texts? What are the relevant texts? |
Line 56: | Line 52: |
This is most relevant part of this entire process. if you master this art, you will be _winner_ of this mailing list. First ask yourself "have you really done your own bits?" what comprises of doing your own bits?}}} |
Books: read the section on relevant books |
Line 59: | Line 54: |
Links: Please read the section on relevant links | |
Line 60: | Line 56: |
Have you read the relevant texts? What are the relevant texts? Books: read the section on relevant books Links: Please read the section on relevant links Search: well this is the easiest part of entire process. Just use goggle, its gives you a lot of information about anything you want to know. There is a tonnes of online documents for Linux, so google search will most likely link you to them. It takes a bit of time and practice to filter out what is relevant and what is not relevant on online search and there is no sure shot way of optimize this process. But everyone has learnt by hit and trail, so please do that. If still not sure, here is an exercise, go to google and search "how to use google" and look for results. |
Search: well this is the easiest part of entire process. Just use goggle, its gives you a lot of information about anything you want to know. There is a tonnes of online documents for Linux, so google search will most likely link you to them. It takes a bit of time and practice to filter out what is relevant and what is not relevant on online search and there is no sure shot way of optimize this process. But everyone has learnt by hit and trail, so please do that. If still not sure, here is an exercise, go to google and search "how to use google" and look for results. |
Line 69: | Line 59: |
Mailing list archive: every now and then people ask similar questions, so there is a good chance someone has already asked the very same question, so you can dig into kernelnewbies archive: http://mail.nl.Linux.org/kernelnewbies/ FAQs: kernel newbies has its own FAQ: http://kernelnewbies.org/FAQ. Linux kernel has its own FAQ: http://www.kernel.org/pub/Linux/docs/lkml/: PLEASE DO refer them. kernel Documentation: when you download Linux kernel source: you can find a lot of useful documentation inside kernel/Documentation directory. |
|
Line 75: | Line 60: |
Mailing list archive: every now and then people ask similar questions, so there is a good chance someone has already asked the very same question, so you can dig into kernelnewbies archive: http://mail.nl.Linux.org/kernelnewbies/ FAQs: kernel newbies has its own FAQ: http://kernelnewbies.org/FAQ. Linux kernel has its own FAQ: http://www.kernel.org/pub/Linux/docs/lkml/: PLEASE DO refer them. kernel Documentation: when you download Linux kernel source: you can find a lot of useful documentation inside kernel/Documentation directory. |
|
Line 78: | Line 68: |
=== 4. What to keep in mind, while posting on kernel newbie mailing list? === 1. First rule of mailing list, which goes without saying is "be polite", that means not just the language or keywords, but the attitude. |
|
Line 79: | Line 71: |
2. Please learn about Netiquettes: http://en.wikipedia.org/wiki/Netiquette. Well, they are not specific to any mailing list, but they good a good idea of general behaviour on any online community. | |
Line 80: | Line 73: |
=== 4. What to keep in mind, while posting on kernel newbie mailing list? === | 3. Please do not TOP POST. On almost all open source mailing list top-posting is considered RUDE. Don't know what TOP POSTing is? Here is a linky: |
Line 82: | Line 75: |
1. First rule of mailing list, which goes without saying is "be polite", that means not just the language or keywords, but the attitude. 2. Please learn about Netiquettes: http://en.wikipedia.org/wiki/Netiquette. Well, they are not specific to any mailing list, but they good a good idea of general behaviour on any online community. 3. Please do not TOP POST. On almost all open source mailing list top-posting is considered RUDE. Don't know what TOP POSTing is? Here is a linky: http://en.wikipedia.org/wiki/Top_post#Top-posting 4. Please learn a bit about hacker culture! How does that help? Well, since most people on kernel newbies are developers(or wannabe developers) they derive their ways of problem solving in similar fashion. That will give you a cultural insight on how most open source project works. |
http://en.wikipedia.org/wiki/Top_post#Top-posting 4. Please learn a bit about hacker culture! How does that help? Well, since most people on kernel newbies are developers(or wannabe developers) they derive their ways of problem solving in similar fashion. That will give you a cultural insight on how most open source project works. |
Line 90: | Line 82: |
6. Don't add noise to list, by replying to irrelevant posts. Resist temptation for off-topic discussion, its a good idea to take them off-line. | 6. Don't add noise to list, by replying to irrelevant posts. Resist temptation for off-topic discussion, its a good idea to take them off-line. |
Line 93: | Line 87: |
== What not to do? == 1. My manager want me to develop driver for superslicksuperawesomeDevice and i have no clue about Linux, can you guys help me? BIG BLOODY NO. Before jumping here please "lurk more", this mailing list is not some kind of code churning machine. |
|
Line 94: | Line 90: |
2. I want to be uber leet Kernel Haxor in 20 days, Please help me. It takes years of hardwork and dedication to learn kernel coding, so be patient and follow the process, you will improve slowly and community can help you only when you do it in the right way. | |
Line 95: | Line 92: |
== What not to do? == | 3. "cn i use ths lngo": bloody hell no, please make sure you use proper words, we are not grammar nazis, we are also fine with bad spellings, but undecipherable text makes it hard to read. Use of good abbreviations is encouraged, as pointed out previously please read about hacker culture, it will help you in learning these kind of things. |
Line 97: | Line 94: |
1. My manager want me to develop driver for superslicksuperawesomeDevice and i have no clue about Linux, can you guys help me? BIG BLOODY NO. Before jumping here please "lurk more", this mailing list is not some kind of code churning machine. 2. I want to be uber leet Kernel Haxor in 20 days, Please help me. It takes years of hardwork and dedication to learn kernel coding, so be patient and follow the process, you will improve slowly and community can help you only when you do it in the right way. 3. "cn i use ths lngo": bloody hell no, please make sure you use proper words, we are not grammar nazis, we are also fine with bad spellings, but undecipherable text makes it hard to read. Use of good abbreviations is encouraged, as pointed out previously please read about hacker culture, it will help you in learning these kind of things. 4. I want a job in kernel Programming please help. This is not really a job portal or job training list. Its meant for learning kernel coding, and how you use that learning is totally upto you. Though its encouraged to take up this kind of profession, but this is not the right place to talk about your professional aspirations. 5. Do not ask Basic "C" related question, this place is definitely not the right place for such queries. There are mailing lists dedicated to do that. Besides its expected that you have good grasp of subject, please look at books section for where to begin. 6. Hey this device driver doesn't work on my totalcluessArch, help. Please refrain from asking very arch specific/board specific questions, there are dedicated mailing list for these kinds of issue. But you can ask some basic level questions, which are good for everyone. However be a bit more intelligent while asking such questions, if you are hacking such stuff, you should be intelligent enough to really decide "what to really ask?". 7. Please do not use mails in HTML format, use plain text mails. Html mails do not serve any purpose on this mailing list and there are chances a lot of people will filter them out. |
4. I want a job in kernel Programming please help. This is not really a job portal or job training list. Its meant for learning kernel coding, and how you use that learning is totally upto you. Though its encouraged to take up this kind of profession, but this is not the right place to talk about your professional aspirations. |
Line 115: | Line 96: |
5. Do not ask Basic "C" related question, this place is definitely not the right place for such queries. There are mailing lists dedicated to do that.Besides its expected that you have good grasp of subject, please look at books section for where to begin. | |
Line 116: | Line 98: |
For more details on how to ask good question, please read this commentary, its very very useful: http://www.catb.org/~esr/faqs/smart-questions.html |
6. Hey this device driver doesn't work on my totalcluessArch, help. Please refrain from asking very arch specific/board specific questions, there are dedicated mailing list for these kinds of issue. But you can ask some basic level questions, which are good for everyone. However be a bit more intelligent while asking such questions, if you are hacking such stuff, you should be intelligent enough to really decide "what to really ask?". |
Line 119: | Line 100: |
7. Please do not use mails in HTML format, use plain text mails. Html mails do not serve any purpose on this mailing list and there are chances a lot of people will filter them out. For more details on how to ask good question, please read this commentary, its very very useful: http://www.catb.org/~esr/faqs/smart-questions.html |
|
Line 122: | Line 106: |
== Books: == === Core kernel programming books: === 1. Linux device drivers by Rubini, Greg kroah hartman and Jim Corbett: Third edition if you really want to learn Kernel programming, this is your book. Its a MUST BUY book. Probably most questions will be answered somewhere in this one. |
|
Line 123: | Line 110: |
2. Linux kernel Development by Robert Love third edition. Again, this is a highly recommended textbook. It gives you working details of kernel in fairly simple language. | |
Line 124: | Line 112: |
== Books: == | 3. Understanding Linux Kernel by Bovet and Cessati This is an advance book, this is intended for more serious coding. Its recommended that you get yourself a bit familiar with x86 arch to use this book to fullest. |
Line 126: | Line 114: |
=== Core kernel programming books: === 1. Linux device drivers by Rubini, Greg kroah hartman and Jim Corbett: Third edition if you really want to learn Kernel programming, this is your book. Its a MUST BUY book. Probably most questions will be answered somewhere in this one.}}} 2. Linux kernel Development by Robert Love third edition. Again, this is a highly recommended textbook. It gives you working details of kernel in fairly simple language. 3. Understanding Linux Kernel by Bovet and Cessati This is an advance book, this is intended for more serious coding. Its recommended that you get yourself a bit familiar with x86 arch to use this book to fullest. 4.Essential Linux device drivers by Sreekrishnan Venkateswaran This book is a good book in addition to classic text, its well written and simpler in nature, highly recommended. |
4.Essential Linux device drivers by Sreekrishnan Venkateswaran This book is a good book in addition to classic text, its well written and simpler in nature, highly recommended. |
Line 150: | Line 117: |
1. The C programming language by Kerninghan and Ritchie. Its a must-have book, most code in Kernel is written in C language and mastering C is important and there is nothing better than KnR for this job. | |
Line 151: | Line 119: |
1. The C programming language by Kerninghan and Ritchie. Its a must-have book, most code in Kernel is written in C language and mastering C is important and there is nothing better than KnR for this job. |
2. Practical C programming by By Steve Oualline Good book for developing a good coding style in C language |
Line 154: | Line 121: |
3. C traps and pitfalls by Andrew koeing A book which talks about limitations and issues with C programming, a very helpful textbook to understand where you can make mistakes. | |
Line 155: | Line 123: |
4. Expert C programming: deep C secrets by Peter V Linden A very good books, which teaches a lot of nuances of C language. | |
Line 156: | Line 125: |
2. Practical C programming by By Steve Oualline Good book for developing a good coding style in C language 3. C traps and pitfalls by Andrew koeing A book which talks about limitations and issues with C programming, a very helpful textbook to understand where you can make mistakes. 4. Expert C programming: deep C secrets by Peter V Linden A very good books, which teaches a lot of nuances of C language. 5. The C programming Manual by Harbison and Steele This book ventures deep into the C programming language mostly details of standards and changes in C, its quite advance in nature. |
5. The C programming Manual by Harbison and Steele This book ventures deep into the C programming language mostly details of standards and changes in C, its quite advance in nature. |
Line 177: | Line 128: |
Line 180: | Line 130: |
1. Advance 80836 programming techniques by Jim Turley A good book which gives details about x86 arch, this book will make you ready to use ULK as previously pointed out | |
Line 181: | Line 132: |
1. Advance 80836 programming techniques by Jim Turley A good book which gives details about x86 arch, this book will make you ready to use ULK as previously pointed out |
2. The art of assembly programming: A good book to learn some assembly language, which may be required if you want to dig into some architecture related code. |
Line 184: | Line 134: |
3. Design of Unix operating system by Maurice J bach Classic text on how unix operating system is designed, its a good text to understand the principles behind a lot of subsystems in operating system | |
Line 185: | Line 136: |
2. The art of assembly programming: A good book to learn some assembly language, which may be required if you want to dig into some architecture related code. 3. Design of Unix operating system by Maurice J bach Classic text on how unix operating system is designed, its a good text to understand the principles behind a lot of subsystems in operating system 4. Beginning Linux programming by Richard Stones and Neil Matthews its always a good idea to learn more about user space programming, before you dive in kernel. Mostly for two reasons: a) Get familiar with facilities provided by operating systems b) Get your hands on some coding. This book is highly recommended text |
4. Beginning Linux programming by Richard Stones and Neil Matthews its always a good idea to learn more about user space programming, before you dive in kernel. Mostly for two reasons: a) Get familiar with facilities provided by operating systems b) Get your hands on some coding. This book is highly recommended text |
Line 203: | Line 139: |
1. http://www.Linux.com/ Home page of everything related to Linux, you may find a lot of useful articles there. | |
Line 204: | Line 141: |
1. [http://www.Linux.com/] Home page of everything related to Linux, you may find a lot of useful articles there. |
2. http://www.Linux-magazine.com/ This magazine a lot of general information about Linux, its not highly directly related to kernel but a very useful resource. |
Line 207: | Line 143: |
2. [http://www.Linux-magazine.com/] This magazine a lot of general information about Linux, its not highly directly related to kernel but a very useful resource. |
3. http://lwn.net/ One of the most respected site, its maintained by one of the most senior developer of kernel. It has a lot of useful article related to Linux kernel. |
Line 210: | Line 145: |
3. [http://lwn.net/] One of the most respected site, its maintained by one of the most senior developer of kernel. It has a lot of useful article related to Linux kernel. |
4.http://kerneltrap.org/ This site host the digests of hottest topic on Linux kernel mailing list. Its again a very useful site to look for what is going on in much simpler way. |
Line 213: | Line 147: |
4.[http://kerneltrap.org/] This site host the digests of hottest topic on Linux kernel mailing list. Its again a very useful site to look for what is going on in much simpler way. |
5. http://sourceforge.net If you want to participate in some project, this is the place to begin. There are lot of projects hosted on this site, some of them are related to kernel and/or device drivers.Most of those projects are in need of developers, so if you have skills, you can participate. |
Line 216: | Line 149: |
5. [http://sourceforge.net] If you want to participate in some project, this is the place to begin. There are lot of projects hosted on this site, some of them are related to kernel and/or device drivers.Most of those projects are in need of developers, so if you have skills, you can participate. |
6. http://tldp.org/ The famous Linux documentation project, this will help you with a lot of HOWTo for everything related to Linux, including kernel. |
Line 220: | Line 151: |
6. [http://tldp.org/] The famous Linux documentation project, this will help you with a lot of HOWTo for everything related to Linux, including kernel. |
7. http://crashcourse.ca/ This is a very good site, which is quite up-to-date. This site have very good kernel programming tutorials for beginner. |
Line 223: | Line 153: |
7. [http://crashcourse.ca/] This is a very good site, which is quite up-to-date. This site have very good kernel programming tutorials for beginner. |
Set of FAQs for kernelnewbies mailing list
If you are new to this list please read them before you go on your quest for squeezing all the knowledge from fellow members
What is this list about?
This list a list for budding kernel hackers, so the idea is ask queries which are mostly related to Linux Kernel, directly and sometimes indirectly.
This site is not a homework help site, so please refrain asking your assignment questions directly. However if you have a relevant doubt which is related to kernel please do ask but after reading all the text below.
What to be asked?
The best thing is to ask questions related to:}}}
1. Linux kernel subsystems.
2. Linux kernel modules.
3. kernel compilation doubts.
4. Sometimes question related kernel Code, which you are not able to understand because you are unfamiliar with the syntax.
5. Some relevant utilities like git, build tools like gcc et al, patch, kermit etc: but ensure you are not deviating too much from central theme of this list.
6. Kernel coding style/standard.
7. May be issues related to GPL in kernel.
How to be asked?
1. Firstly make a descriptive headline
"hi", "help" and generic headlines are shooting offences.}}}
Not only are they annoying, but they waste a lot of time and precious computing power.
Besides, there are lesser chances of getting correct answer, you will be ignored and you may loose credibility on the mailing list.
2. Give relevant information about your question
a. Since you have already given description of your problem, now its time to assist others with the details of the problem at hand.
b. Since kernel is complex beast, you need to give reference to what you are really asking about.
c. A code snippet is always the best thing to include. This shows that you have really dug into the code and you know what you are asking.
d. Give details of what you have tried, and where you are really stuck, this makes life easy for everyone.
e. Anything else like logs, test results, coredumps are _always_ a good idea.
3. When to Ask questions?
This is most relevant part of this entire process. if you master this art, you will be _winner_ of this mailing list.
First ask yourself "have you really done your own bits?" what comprises of doing your own bits?
Have you read the relevant texts? What are the relevant texts?
Books: read the section on relevant books
Links: Please read the section on relevant links
Search: well this is the easiest part of entire process. Just use goggle, its gives you a lot of information about anything you want to know. There is a tonnes of online documents for Linux, so google search will most likely link you to them. It takes a bit of time and practice to filter out what is relevant and what is not relevant on online search and there is no sure shot way of optimize this process. But everyone has learnt by hit and trail, so please do that. If still not sure, here is an exercise, go to google and search "how to use google" and look for results.
Man pages: Most things related to Linux has a relevant man pages including your system calls, so please look for man pages.
Mailing list archive: every now and then people ask similar questions, so there is a good chance someone has already asked the very same question, so you can dig into kernelnewbies archive: http://mail.nl.Linux.org/kernelnewbies/
FAQs: kernel newbies has its own FAQ: http://kernelnewbies.org/FAQ. Linux kernel has its own FAQ: http://www.kernel.org/pub/Linux/docs/lkml/: PLEASE DO refer them. kernel
Documentation: when you download Linux kernel source: you can find a lot of useful documentation inside kernel/Documentation directory.
Well, when you have tried all the previous steps and you feel your problem need to be discussed, its a good time to head towards kernelnewbies mailing list.
4. What to keep in mind, while posting on kernel newbie mailing list?
1. First rule of mailing list, which goes without saying is "be polite", that means not just the language or keywords, but the attitude.
2. Please learn about Netiquettes: http://en.wikipedia.org/wiki/Netiquette. Well, they are not specific to any mailing list, but they good a good idea of general behaviour on any online community.
3. Please do not TOP POST. On almost all open source mailing list top-posting is considered RUDE. Don't know what TOP POSTing is? Here is a linky:
http://en.wikipedia.org/wiki/Top_post#Top-posting
4. Please learn a bit about hacker culture! How does that help? Well, since most people on kernel newbies are developers(or wannabe developers) they derive their ways of problem solving in similar fashion. That will give you a cultural insight on how most open source project works.
5. Do argue your point, but remember there are chances the people on the list know more than you, so ensure you make a valid argument.
- Don't add noise to list, by replying to irrelevant posts. Resist temptation for off-topic discussion, its a good idea to take them off-line.
7. Nobody cares much about grammar on this list, but make sure you try to make a good effort to write a good mail, which is legible and make sense.
What not to do?
1. My manager want me to develop driver for superslicksuperawesomeDevice and i have no clue about Linux, can you guys help me? BIG BLOODY NO. Before jumping here please "lurk more", this mailing list is not some kind of code churning machine.
2. I want to be uber leet Kernel Haxor in 20 days, Please help me. It takes years of hardwork and dedication to learn kernel coding, so be patient and follow the process, you will improve slowly and community can help you only when you do it in the right way.
- "cn i use ths lngo": bloody hell no, please make sure you use proper words, we are not grammar nazis, we are also fine with bad spellings, but undecipherable text makes it hard to read. Use of good abbreviations is encouraged, as pointed out previously please read about hacker culture, it will help you in learning these kind of things.
4. I want a job in kernel Programming please help. This is not really a job portal or job training list. Its meant for learning kernel coding, and how you use that learning is totally upto you. Though its encouraged to take up this kind of profession, but this is not the right place to talk about your professional aspirations.
5. Do not ask Basic "C" related question, this place is definitely not the right place for such queries. There are mailing lists dedicated to do that.Besides its expected that you have good grasp of subject, please look at books section for where to begin.
6. Hey this device driver doesn't work on my totalcluessArch, help. Please refrain from asking very arch specific/board specific questions, there are dedicated mailing list for these kinds of issue. But you can ask some basic level questions, which are good for everyone. However be a bit more intelligent while asking such questions, if you are hacking such stuff, you should be intelligent enough to really decide "what to really ask?".
7. Please do not use mails in HTML format, use plain text mails. Html mails do not serve any purpose on this mailing list and there are chances a lot of people will filter them out.
For more details on how to ask good question, please read this commentary, its very very useful: http://www.catb.org/~esr/faqs/smart-questions.html
Some resources AKA "LURK MORE":
Books:
Core kernel programming books:
1. Linux device drivers by Rubini, Greg kroah hartman and Jim Corbett: Third edition if you really want to learn Kernel programming, this is your book. Its a MUST BUY book. Probably most questions will be answered somewhere in this one.
2. Linux kernel Development by Robert Love third edition. Again, this is a highly recommended textbook. It gives you working details of kernel in fairly simple language.
3. Understanding Linux Kernel by Bovet and Cessati This is an advance book, this is intended for more serious coding. Its recommended that you get yourself a bit familiar with x86 arch to use this book to fullest.
4.Essential Linux device drivers by Sreekrishnan Venkateswaran This book is a good book in addition to classic text, its well written and simpler in nature, highly recommended.
C language programming books:
1. The C programming language by Kerninghan and Ritchie. Its a must-have book, most code in Kernel is written in C language and mastering C is important and there is nothing better than KnR for this job.
2. Practical C programming by By Steve Oualline Good book for developing a good coding style in C language
3. C traps and pitfalls by Andrew koeing A book which talks about limitations and issues with C programming, a very helpful textbook to understand where you can make mistakes.
4. Expert C programming: deep C secrets by Peter V Linden A very good books, which teaches a lot of nuances of C language.
5. The C programming Manual by Harbison and Steele This book ventures deep into the C programming language mostly details of standards and changes in C, its quite advance in nature.
Some preliminary books:
You may need to get yourself familiar with a lot of extra stuff, which may be needed:}}}
1. Advance 80836 programming techniques by Jim Turley A good book which gives details about x86 arch, this book will make you ready to use ULK as previously pointed out
2. The art of assembly programming: A good book to learn some assembly language, which may be required if you want to dig into some architecture related code.
3. Design of Unix operating system by Maurice J bach Classic text on how unix operating system is designed, its a good text to understand the principles behind a lot of subsystems in operating system
4. Beginning Linux programming by Richard Stones and Neil Matthews its always a good idea to learn more about user space programming, before you dive in kernel. Mostly for two reasons: a) Get familiar with facilities provided by operating systems b) Get your hands on some coding. This book is highly recommended text
links:
1. http://www.Linux.com/ Home page of everything related to Linux, you may find a lot of useful articles there.
2. http://www.Linux-magazine.com/ This magazine a lot of general information about Linux, its not highly directly related to kernel but a very useful resource.
3. http://lwn.net/ One of the most respected site, its maintained by one of the most senior developer of kernel. It has a lot of useful article related to Linux kernel.
4.http://kerneltrap.org/ This site host the digests of hottest topic on Linux kernel mailing list. Its again a very useful site to look for what is going on in much simpler way.
5. http://sourceforge.net If you want to participate in some project, this is the place to begin. There are lot of projects hosted on this site, some of them are related to kernel and/or device drivers.Most of those projects are in need of developers, so if you have skills, you can participate.
6. http://tldp.org/ The famous Linux documentation project, this will help you with a lot of HOWTo for everything related to Linux, including kernel.
7. http://crashcourse.ca/ This is a very good site, which is quite up-to-date. This site have very good kernel programming tutorials for beginner.