<div dir="ltr"><div>I would suggest you to choose a module(lets say, for example, memory manager) and start understanding the internals of that module end to end raise the questions/doubts, which I guess you will find while understanding the code, here in this forum. Likewise there are different layers and modules which you must understand theoretically as well programmatically. </div>
<div><br></div><div>This might help you to find the root cause of poor battery life, which may or may not be because of kernel bug. In general kernel code is optimized atleast the core platform is. you wont generally find unnecessary code blocks that might increase cpu cycles or memory usage. My suggestion would be that you start understanding the kernel code and find the code blocks which you feel can be optimized and start from there.</div>
<div><br></div><div>PS: You will find heavily multithreaded and optimized code(took several 1000 man hours over years to write), which may make you to lose your intent. But it would be a good exercise for you to learn a industry standard or even better code which is a must for writing any kernel level modules. At the least it will improve your coding skills.</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Feb 24, 2014 at 11:27 PM,  <span dir="ltr">&lt;<a href="mailto:Valdis.Kletnieks@vt.edu" target="_blank">Valdis.Kletnieks@vt.edu</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>On Sun, 23 Feb 2014 22:54:31 +0530, subham soni said:<br>
<br>
&gt;         I am a newbie to kernel development. I would like to develop my own<br>
&gt; kernel from scratch. From where should I start from?<br>
<br>
</div>A large supply of caffeine, you&#39;re going to be writing a *lot* of code.<br>
<br>
For example, linux-0.01 was 100 source files totalling 11,283 or so lines of code.<br>
<br>
For linux 0.96, that jumped to 200 files and 35,000+ lines of code.<br>
<br>
And 0.99.15 was 175,000 or so lines.<br>
<br>
So figure you&#39;re going to be about a quarter million lines of code before you<br>
get to a usable self-hosting environment.<br>
<br>_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br>
<a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>G B Rakesh
</div>