From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.5 required=3.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_INVALID,DKIM_SIGNED,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,MAILING_LIST_MULTI,SPF_PASS autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 77613C43381 for ; Tue, 26 Mar 2019 18:36:35 +0000 (UTC) Received: from shelob.surriel.com (shelob.surriel.com [96.67.55.147]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 2FFD1206DF for ; Tue, 26 Mar 2019 18:36:35 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="nbSh+YSC" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 2FFD1206DF Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=gmail.com Authentication-Results: mail.kernel.org; spf=fail smtp.mailfrom=kernelnewbies-bounces@kernelnewbies.org Received: from localhost ([::1] helo=shelob.surriel.com) by shelob.surriel.com with esmtp (Exim 4.91) (envelope-from ) id 1h8qvZ-0006LO-Nf; Tue, 26 Mar 2019 14:36:01 -0400 Received: from mail-pl1-x642.google.com ([2607:f8b0:4864:20::642]) by shelob.surriel.com with esmtps (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.91) (envelope-from ) id 1h8qvY-0006LG-9B for kernelnewbies@kernelnewbies.org; Tue, 26 Mar 2019 14:36:00 -0400 Received: by mail-pl1-x642.google.com with SMTP id cv12so2041286plb.9 for ; Tue, 26 Mar 2019 11:35:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=frKm/4+lbMfwEIit/GF8+rkrUMJDkVAj7Z+t4zdoFU8=; b=nbSh+YSCMLKC83glAl6LKcagG0/vPk6dS40dKxj/5U2P2x4cL6tbsq/RaNHtk9S2ae /8J+/kYAxaQ18zl+mTdQyOv/+ioYRsYysCN8UeIyYo++cTARdVop6LReAc3NWegV34rp k54K/qfYKrfyp1R+zM/RBZL2uYEtGlkSByv/vIz5Zdgbtt4k/Wm+UUKSVQTBIlQMJnJ8 5NTBj3Q+/3Un/fegmdhcdhFC9Ts1ikT/xrZ4adRBRxfrlRRRYHPpMLlMqLxGLMA1Us1A sG0yy2JVjtjCVniMTRtgrrlWHQIPNPXANN2YzmODEDfoPllRgJ+IF05tsJQEEyw5gqDM Gnpg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=frKm/4+lbMfwEIit/GF8+rkrUMJDkVAj7Z+t4zdoFU8=; b=oVSFnrvJxdZlUc30g1D1v1EpYCpIdnhJQyQmzqD0yB2xojzsBrXOLpeIgB9JJ65zSw sVFb+iiPKBQY7lfLm1z2NFGpLgyVvjXsPHxiZx1oKG02YHbxL5vRvfBQ2XiBhtkrzBQt zG4n1Sq18hW9PVT/XsTkHKwhMNHBxxyciNRILiJW1TLqGIcZm5et3e8FIXVvs5aYO2i3 I+n4QOGeYOUJw+Gnlwwnx9wPpmK8cbNI7ssiXqflOAN0A5NiMgRk3kZ8FU6dk4vb50Ax 0/rinaTT9dBMSWC8yRNXe6m7jFeIlhiSohzGrUCVRciscmN3AKzowzcbYatPLqmZH9EY YZCA== X-Gm-Message-State: APjAAAXdyQNn8zM06ADR2DNV8janLFBey3r+bKmn6HpOr7OklzKpFBYU tqTLdYLNOeiZSzVIOhl7ZdEAeqhafKWGHwfn9Ds= X-Google-Smtp-Source: APXvYqyF7tMjeen+yDMvx5r1pkhE9zVNeUMwNCW/b/y4qwfjM9AI9DIsGQnC2M55tlarC8xuITymgrRz34KNlFmEm8s= X-Received: by 2002:a17:902:b20e:: with SMTP id t14mr32041786plr.97.1553625297815; Tue, 26 Mar 2019 11:34:57 -0700 (PDT) MIME-Version: 1.0 References: <1337693848.1553619873158.eu.faircode.email@localhost> In-Reply-To: <1337693848.1553619873158.eu.faircode.email@localhost> From: Elias Kouskoumvekakis Date: Tue, 26 Mar 2019 20:34:46 +0200 Message-ID: Subject: Re: Roadmap to Linux development -- Kernel and Utilities To: Jesse Cc: Milad Kahsari , kernelnewbies@kernelnewbies.org X-BeenThere: kernelnewbies@kernelnewbies.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Learn about the Linux kernel List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: multipart/mixed; boundary="===============7240215147238212606==" Errors-To: kernelnewbies-bounces@kernelnewbies.org --===============7240215147238212606== Content-Type: multipart/alternative; boundary="000000000000fd8b710585039398" --000000000000fd8b710585039398 Content-Type: text/plain; charset="UTF-8" > Tue Mar 26 08:19:23 EDT 2019 Milad Kahsari : > > Hi folks, I am looking for a new and updated roadmap for Linux Kernel/Patch development from scratch. for example, it teaches what knowledge we need and how should we contribute to the project. Is there any roadmap as such for taking? > Hi Milad, the following helped me a lot while learning the basic kernel concepts: - Linux Device Drivers, 3rd Edition book (LDD3) - Linux Kernel Development, 3rd edition book (LDK) - Linux Kernel Labs: https://linux-kernel-labs.github.io/master/ - MIT OS Course Labs: https://pdos.csail.mit.edu/6.828/2018/index.html I suggest you start with the LDD3 book which although a bit old, it's easier and more focused than the LKD book. You can then proceed with the LKD book which covers more parts of the kernel in a higher level style. To complement your study of concepts from the book you should follow the Linux kernel labs. They are a great way to experiment and have a bit of fun. The last resource is optional but imho it helps a lot to take a good course on OS design and implementation while studying the Linux kernel, even if you have previously took one (i.e from your university). The MIT course has great labs that will force you to dive deep into not so easy concepts like memory management, page tables etc. that are the core of a kernel. They are also based on XV6, a very small kernel that you can fully understand in a reasonable time (Linux is no such case). Have fun! Elias --000000000000fd8b710585039398 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
> Tue Mar 26 08:19:23 EDT 2019 Milad K= ahsari <m.kahsari@gmail.com&g= t;:
>
> Hi folks, I am looking for a new and updated road= map for Linux Kernel/Patch development from scratch. for example, it teache= s what knowledge we need and how should we contribute to the project. Is th= ere any roadmap as such for taking?
>

Hi Milad,

the following helped me a lot while learning the basic kern= el concepts:

- Linux Device Drivers, 3rd Edition b= ook (LDD3)
- Linux Kernel Development, 3rd edition book (LDK)
I suggest you start with the LDD3 book which although a bit ol= d, it's easier and more focused than the LKD book. You can then proceed= with the LKD book which covers more parts of the kernel in a higher level = style.

To complement your study of concepts from t= he book you should follow the Linux kernel labs. They are a great way to ex= periment and have a bit of fun.

The last resource = is optional but imho it helps a lot to take a good course on OS design and = implementation while studying the Linux kernel, even if you have previously= took one (i.e from your university). The MIT course has great labs that wi= ll force you to dive deep into not so easy concepts like memory management,= page tables etc. that are the core of a kernel. They are also based on XV6= , a very small kernel that you can fully understand in a reasonable time (L= inux is no such case).

Have fun!

Elias
--000000000000fd8b710585039398-- --===============7240215147238212606== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies --===============7240215147238212606==--