* What subsystem!? @ 2016-10-25 12:33 Daniel. 2016-10-25 15:42 ` Valdis.Kletnieks at vt.edu 0 siblings, 1 reply; 3+ messages in thread From: Daniel. @ 2016-10-25 12:33 UTC (permalink / raw) To: kernelnewbies Hi everybody, I've been studying linux for some time now. I still see my self as an begginer, but that's not a bad thing. I struggling to decide what subsystem to focus right know. I have three options and would like to know what people think about, since listening (or reading) other people aways help me to decide. My options are: i. Memory ii. Network iii. Filesystems / Disk cache Today I'm working on embedded market and have a crush on ARM architecture. I have absolute no knowledge on (i), some fundations (in userspace) on (ii) and nothing but mkfs experience on (iii). LoL. The second question is: What are the (market) applications of these expertise? I know that (ii) will be huge part ot IoT and IIoT. And the (iii) can be used on database tunning for example. (i) seem just f******* cool to me. When I say (market) please, do not get me wrong. The jobs on kernel are not popping out (especially on Brazil) like the Java & Big Data ones, I still have to eat, but I'm not willing to move from my passions(kernel-dev) for money. Thanks in advance and regards to everybody! -- "Do or do not. There is no try" Yoda Master ^ permalink raw reply [flat|nested] 3+ messages in thread
* What subsystem!? 2016-10-25 12:33 What subsystem!? Daniel. @ 2016-10-25 15:42 ` Valdis.Kletnieks at vt.edu 2016-10-25 18:03 ` Daniel. 0 siblings, 1 reply; 3+ messages in thread From: Valdis.Kletnieks at vt.edu @ 2016-10-25 15:42 UTC (permalink / raw) To: kernelnewbies On Tue, 25 Oct 2016 10:33:47 -0200, "Daniel." said: > I've been studying linux for some time now. I still see my self as an > begginer, but that's not a bad thing. I struggling to decide what > subsystem to focus right know. I've said it before, and I'll say it again: If you have to ask others which part of the kernel you should study, maybe you shouldn't be doing kernel work. It's like a beginning author asking other people if they should write a mystery or a western. If you're only writing a murder mystery because somebody suggested it, it's probably not going to be very good. Note that for most systems all the *real* magic (and hard work) aren't in the kernel, they're in userspace. Let's look at the Internet of Things as an example. Yes, networking is going to be important - but the kernel just gives userspace (for instance) TCP over IPv6. All the code to actually *do* something with it is out in userspace. Just the other day, a large part of the Internet fell apart because of a DDoS attack on some important DNS servers. The root cause? Default passwords and other userspace security issues on a lot of DVRs and security cameras. A userspace issue. I'm looking at buying some LED-based light bulbs that can change color on command. Kernel support for the networking? Get a packet, send a packet. All the code that says "during early evening, use a 5K color temperature, and slowly roll it back to 3.2K around midnight, but an hour later in the kitchen"? Userspace. You mention database tuning. Another case where you *really* need to understand what userspace is doing before you can do much in the kernel. Linux kernel hacking for tuning our Oracle servers? Zip. Zero. None. We just create yet another VM with X amount of RAM and Y amount of disk on a fiberchannel-connected EMC VNX storage unit. However, our DBAs spend a *lot* of time tweaking Oracle parameters in userspace, and my co-worker who administers that storage keeps busy tuning it - but he has a nice userspace GUI that handles all the hard work so he can concentrate on higher-level issues like proper tiering of a high-activity disk. My current job is building petabyte-scale file systems for HPC clusters - and although I end up tweaking kernel parameters a fair amount, there's actually not much kernel hacking involved. What *is* needed is the ability to talk to the computational scientists, and find out things like what blocksize their software wants to use, whether it's sequential or random access, what degree of parallelism is needed, and so on... You hopefully notice a pattern here... Find an application that *you* think is interesting - and first learn the userspace end of it. You may not need to know very much about the kernel at all - and if you *do*, you'll have a better idea of which part of the kernel and what you need to know.... -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 484 bytes Desc: not available Url : http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20161025/1b45188f/attachment.bin ^ permalink raw reply [flat|nested] 3+ messages in thread
* What subsystem!? 2016-10-25 15:42 ` Valdis.Kletnieks at vt.edu @ 2016-10-25 18:03 ` Daniel. 0 siblings, 0 replies; 3+ messages in thread From: Daniel. @ 2016-10-25 18:03 UTC (permalink / raw) To: kernelnewbies Vladis, Thank you so much for your anwer. I had never thought that way, and make totally sense. Challenge accepted, I'll look for interesting applications and see how they interact with kernel. Thank you so much!!! Best regards!!! 2016-10-25 13:42 GMT-02:00 <Valdis.Kletnieks@vt.edu>: > On Tue, 25 Oct 2016 10:33:47 -0200, "Daniel." said: >> I've been studying linux for some time now. I still see my self as an >> begginer, but that's not a bad thing. I struggling to decide what >> subsystem to focus right know. > > I've said it before, and I'll say it again: > > If you have to ask others which part of the kernel you should study, > maybe you shouldn't be doing kernel work. It's like a beginning > author asking other people if they should write a mystery or a western. > If you're only writing a murder mystery because somebody suggested it, > it's probably not going to be very good. > > Note that for most systems all the *real* magic (and hard work) aren't in > the kernel, they're in userspace. > > Let's look at the Internet of Things as an example. Yes, networking is > going to be important - but the kernel just gives userspace (for instance) > TCP over IPv6. All the code to actually *do* something with it is out in > userspace. > > Just the other day, a large part of the Internet fell apart because of > a DDoS attack on some important DNS servers. The root cause? Default > passwords and other userspace security issues on a lot of DVRs and > security cameras. A userspace issue. > > I'm looking at buying some LED-based light bulbs that can change color on > command. Kernel support for the networking? Get a packet, send a packet. > All the code that says "during early evening, use a 5K color temperature, > and slowly roll it back to 3.2K around midnight, but an hour later in the > kitchen"? Userspace. > > You mention database tuning. Another case where you *really* need to > understand what userspace is doing before you can do much in the kernel. > Linux kernel hacking for tuning our Oracle servers? Zip. Zero. None. > We just create yet another VM with X amount of RAM and Y amount of > disk on a fiberchannel-connected EMC VNX storage unit. However, our > DBAs spend a *lot* of time tweaking Oracle parameters in userspace, and > my co-worker who administers that storage keeps busy tuning it - but > he has a nice userspace GUI that handles all the hard work so he can > concentrate on higher-level issues like proper tiering of a high-activity > disk. > > My current job is building petabyte-scale file systems for HPC clusters - > and although I end up tweaking kernel parameters a fair amount, there's > actually not much kernel hacking involved. What *is* needed is the ability > to talk to the computational scientists, and find out things like what > blocksize their software wants to use, whether it's sequential or random > access, what degree of parallelism is needed, and so on... > > You hopefully notice a pattern here... Find an application that *you* think > is interesting - and first learn the userspace end of it. You may not need > to know very much about the kernel at all - and if you *do*, you'll have > a better idea of which part of the kernel and what you need to know.... -- "Do or do not. There is no try" Yoda Master ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-10-25 18:03 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2016-10-25 12:33 What subsystem!? Daniel. 2016-10-25 15:42 ` Valdis.Kletnieks at vt.edu 2016-10-25 18:03 ` Daniel.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.