Re: Learning Linux Kernel Development

2018-10-11 Thread valdis . kletnieks
On Thu, 11 Oct 2018 14:42:56 +0400, o...@goosey.org said:
> 10.10.2018, 19:36, "Carter Cheng" :
> >2. Is there some good way to figure out how to update knowledge gained 
> > from
> >this book to what is in the 4.x series of kernels?

> I think all C code-based drivers will work on all Linux versions after
> downloading kernel please checkout the staging/ folder.

Nowhere close.  Working on "all Linux versions" would imply a stable API.

The internal kernel APIs change all the time - a non-toy driver written for a
2.6.10 kernel has little to no chance of working on 4.19 without updating to
use the APIs presented by the 4.19 kernel.

See Documentation/process/stable-api-nonsense.rst for the details.


pgp57mAUy8HMr.pgp
Description: PGP signature
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: Learning Linux Kernel Development

2018-10-11 Thread Carter Cheng
Thanks a lot.

On Thu, Oct 11, 2018 at 6:42 PM  wrote:

>
>
> 10.10.2018, 19:36, "Carter Cheng" :
>
>
> -- Forwarded message -
> From: *Carter Cheng* 
> Date: Wed, Oct 10, 2018 at 10:52 PM
> Subject: Learning Linux Kernel Development
> To: 
>
> Hello,
>
>
>
> Hello,
>
>
>
> I am actually kind of interested in learning linux kernel development and
> have been over the last few weeks going through Love's Linux Kernel
> Development book which details the situation in the kernel around linux
> 2.6. Obviously for a book of such limited length he can probably only go
> into some of the details and give a taste of what is actually is going on.
> I have a couple questions however and I was wondering if this was the
> correct place to ask-
>
>
>
>
>
> The way to go deeper is to understand the operating system basis and this
> requires good knowledge of C and hardware and kernel experience.
>
>
> 1. After finishing the book and perhaps Understanding the Linux Kernel and
> Linux Device Drivers. What is the best way to dig deeper.
>
>
> This driver is just one of the things that Linux developers work.
>
>
> 2. Is there some good way to figure out how to update knowledge gained
> from this book to what is in the 4.x series of kernels?
>
>
>
> I think all C code-based drivers will work on all Linux versions after
> downloading kernel please checkout the staging/ folder.
>
>
> Thanks,
>
>
>
> Regards
>
>
> Carter
>
>
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: Fwd: Learning Linux Kernel Development

2018-10-10 Thread Carter Cheng
Thanks for the advice. I actually have those books as well and will take a
look at them.

On Thu, Oct 11, 2018 at 12:03 AM  wrote:

> On Wed, 10 Oct 2018 23:35:20 +0800, Carter Cheng said:
> > 1. After finishing the book and perhaps Understanding the Linux Kernel
> and
> > Linux Device Drivers. What is the best way to dig deeper.
>
> There's multiple answers to that question, as it depends on the
> questioner's preferred
> learning style and motivation for digging deeper.
>
> (I'll just add a link so I don't have to copy-paste here)
>
> https://lists.kernelnewbies.org/pipermail/kernelnewbies/2017-April/017765.html
>
> > 2. Is there some good way to figure out how to update knowledge gained
> from
> > this book to what is in the 4.x series of kernels?
>
> If you've studied enough different kernels so that you can generalize from
> an
> example, the fact that 4.19 is 12 million lines different from 2.6.whatever
> won't be much of an issue. If however you're still at the cargo-cult
> programming level of writing code the way the LDD says via cut-n-paste
> without
> really understanding it, you're going to have a bad time.
>
> Somebody was keeping sample code from the LDD, updated to recent kernels.
> Not
> sure if it's much help - if you understand the concepts involved, you
> probably
> wouldn't need sample code, and if you didn't understand the concepts, you
> just
> end up cut-n-pasting from a newer version
>
> (Two really good kernel books are Bach's book on the Unix SYSV kernel and
> McKusick's book on the BSD kernel - both spend a good amount of time doing
> "and
> if we don't take a lock here, this race condition can happen, and if it
> happens, *this* is what your file system looks like afterwards" type
> discussion...)
>
>
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Re: Fwd: Learning Linux Kernel Development

2018-10-10 Thread valdis . kletnieks
On Wed, 10 Oct 2018 23:35:20 +0800, Carter Cheng said:
> 1. After finishing the book and perhaps Understanding the Linux Kernel and
> Linux Device Drivers. What is the best way to dig deeper.

There's multiple answers to that question, as it depends on the questioner's 
preferred
learning style and motivation for digging deeper.

(I'll just add a link so I don't have to copy-paste here)
https://lists.kernelnewbies.org/pipermail/kernelnewbies/2017-April/017765.html

> 2. Is there some good way to figure out how to update knowledge gained from
> this book to what is in the 4.x series of kernels?

If you've studied enough different kernels so that you can generalize from an
example, the fact that 4.19 is 12 million lines different from 2.6.whatever
won't be much of an issue. If however you're still at the cargo-cult
programming level of writing code the way the LDD says via cut-n-paste without
really understanding it, you're going to have a bad time.

Somebody was keeping sample code from the LDD, updated to recent kernels. Not
sure if it's much help - if you understand the concepts involved, you probably
wouldn't need sample code, and if you didn't understand the concepts, you just
end up cut-n-pasting from a newer version

(Two really good kernel books are Bach's book on the Unix SYSV kernel and
McKusick's book on the BSD kernel - both spend a good amount of time doing "and
if we don't take a lock here, this race condition can happen, and if it
happens, *this* is what your file system looks like afterwards" type
discussion...)



pgpyxgT_noaeo.pgp
Description: PGP signature
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


Fwd: Learning Linux Kernel Development

2018-10-10 Thread Carter Cheng
-- Forwarded message -
From: Carter Cheng 
Date: Wed, Oct 10, 2018 at 10:52 PM
Subject: Learning Linux Kernel Development
To: 


Hello,

I am actually kind of interested in learning linux kernel development and
have been over the last few weeks going through Love's Linux Kernel
Development book which details the situation in the kernel around linux
2.6. Obviously for a book of such limited length he can probably only go
into some of the details and give a taste of what is actually is going on.
I have a couple questions however and I was wondering if this was the
correct place to ask-

1. After finishing the book and perhaps Understanding the Linux Kernel and
Linux Device Drivers. What is the best way to dig deeper.
2. Is there some good way to figure out how to update knowledge gained from
this book to what is in the 4.x series of kernels?

Thanks,

Carter.
___
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies