kernelnewbies.kernelnewbies.org archive mirror
 help / color / mirror / Atom feed
From: iamsasha01@yahoo.com (Sasha Mckinsey)
To: kernelnewbies@lists.kernelnewbies.org
Subject: What Next After Char, Block, Serial & Parallel Drivers
Date: Tue, 11 Aug 2015 18:34:11 +0000 (UTC)	[thread overview]
Message-ID: <506061009.2125101.1439318051320.JavaMail.yahoo@mail.yahoo.com> (raw)
In-Reply-To: <4E5779AD88B2F040B8A7E83ECF544D1A61493B@SJCPEX01CL03.citrite.net>



Thanks Jeff! Just a thought. Will it be a good idea to get my hands dirty with socket programming (L2,L3,IPsec,TCP/IP) in the user space to get some experience & understanding and then perhaps dive into kernel network stack at a later stage.

Thanks for all your help

Sasha



On Tuesday, 11 August 2015 11:45 PM, Jeff Haran <Jeff.Haran@citrix.com> wrote:



 
 
From:kernelnewbies-bounces at kernelnewbies.org [mailto:kernelnewbies-bounces at kernelnewbies.org] On Behalf Of Sasha Mckinsey
Sent: Tuesday, August 11, 2015 10:48 AM
To: kernelnewbies at kernelnewbies.org
Subject: What Next After Char, Block, Serial & Parallel Drivers
 
Hello,
 
Finally I can say I have completed learning the following (to a certain extent)
 
    -C and Data structures
    -Operating system concepts ( covered in my undergrad course)
    -Linux kernel Development - Robert Love
    -Linux Device Drivers - Partially (just finished Char, block, serial & parallel )
 
A book called "Essential Linux Device Drivers" - It looked rich a first look but I could go anywhere with it considering I didn't have the required Hardware. I have now cut my teeth into some bit of kernel but still I am not sure where to go from here. I know things but I am not happy or satisfied with what I now. I don't have the feel of a professional device driver programmer. 
 
Here are my questions - two different questions and necessarily not connected to each other
 
What should be the next steps besides looking for a job. Getting a new hardware to write a driver I guess is not feasible all the time. 
 
Note sure why you would consider this not feasible. A lot of consumer level hardware is both relatively inexpensive and lacks Linux support. Just this weekend I was trying to get the video on my Lenovo laptop running Ubuntu to output on its HDMI port  to my TV. It didn?t work and a bit of googling showed that others had the same problem with that video chip. That?s just one example.
 
During my Linux journey i realized Linux network stack development interests me alot but a friend of mine told me to stay away from it as its very vast and would consume me. Any ideas how should i approach it if I want to learn it from practical point of view. I am not looking for the names of books or resources I have all of them including the book understanding Linux network internals. I want to learn it from a practical point of view where in I can be actively involved unlike my status today in the world of device drivers.
 
The networking stack is very big and very mature. Making contributions there above the driver level is likely to require a lot of experience and competence. A lot of consumer 802.11 hardware also lacks Linux support so if you want to cut your teeth in the networking stack, network drivers for unsupported hardware are a good place to start, though you may find yourself stymied by lack of documentation on the HW from its vendor.
 
Now if you are really ambitious, try to figure out how to extend tc to support more than 64K classes per qdisc. That would require no special hardware but would require a great deal of dedication. How many lifetimes do you have available for this effort? 8^)
 
Jeff Haran
 
Thanks!

  reply	other threads:[~2015-08-11 18:34 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-11 17:48 What Next After Char, Block, Serial & Parallel Drivers Sasha Mckinsey
2015-08-11 18:15 ` Jeff Haran
2015-08-11 18:34   ` Sasha Mckinsey [this message]
2015-08-11 19:23     ` Jeff Haran
2015-08-11 18:50 ` Valdis.Kletnieks at vt.edu
2015-08-11 19:42   ` Sasha Mckinsey
2015-08-12 19:29     ` Tapas Mishra

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=506061009.2125101.1439318051320.JavaMail.yahoo@mail.yahoo.com \
    --to=iamsasha01@yahoo.com \
    --cc=kernelnewbies@lists.kernelnewbies.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).