Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757680AbbKFW4M (ORCPT ); Fri, 6 Nov 2015 17:56:12 -0500 Received: from gateway30.websitewelcome.com ([192.185.160.12]:34002 "EHLO gateway30.websitewelcome.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757596AbbKFW4K (ORCPT ); Fri, 6 Nov 2015 17:56:10 -0500 X-Greylist: delayed 1288 seconds by postgrey-1.27 at vger.kernel.org; Fri, 06 Nov 2015 17:56:10 EST X-Spam-Flag2999: NO X-Spam-Level2999: X-Spam-Status2999: "No, score=-0.1 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU autolearn=disabled version=3.3.1 MIME-Version: 1.0 In-Reply-To: References: Date: Fri, 6 Nov 2015 20:34:40 -0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: Improvement of trails and tutorials to become a kernel developer / maintainer From: Albino B Neto To: Patrick Plattes , kernelnewbies Cc: LKML Content-Type: text/plain; charset=UTF-8 X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - br538.hostgator.com.br X-AntiAbuse: Original Domain - vger.kernel.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - bino.us X-BWhitelist: no X-Source-IP: 209.85.192.46 X-Exim-ID: 1Zupai-0002Vp-UE X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: (mail-qg0-f46.google.com) [209.85.192.46]:32911 X-Source-Auth: bino@bino.us X-Email-Count: 66 X-Source-Cap: Ymlub3U5Mzg7Ymlub3U5Mzg7YnI1MzguaG9zdGdhdG9yLmNvbS5icg== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2724 Lines: 66 2015-11-06 15:15 GMT-02:00 Patrick Plattes : > ello, > > I'm interested since a very long time in kernel development, but I > never saw the right path to become familiar with parts of the kernel. > I read a bit of ipc code and ext* code, but since I often don't know > any possible next steps I moved back to something else in the user > space. > > I really like the tutorial on kernelnewbies.org FirstKernelPatch an I > had the idea to create this type of tutorial as a training for > specific kernel subsystems eg. ipc, file systems, usb drivers, ... > > A structure of such a tutorial could look like that: (eg scheduler) > > 1. Introduction / Goal > [5 sentences of the goal - what should be archived by this tutorial] > - understand scheduling in the linux kernel > - write your own scheduler > - ... > 2. Preparation > 2.1 Understand how to write a kernel patch: > http://kernelnewbies.org/FirstKernelPatch > 2.2 Understand the goal of Scheduling: https://en.wikipedia.org/wiki/Schedule > 3. User space view > 3.1 Read and understand: http://man7.org/linux/man-pages/man7/sched.7.html > 3.1.1 Questions > 3.2 Exercise: Write a program that does A > 3.3 Exercise: Write a program that does B > 3.4 Exercise: Write a program that does C > 4. Kernel > 4.1 Read and understand: http://man7.org/linux/man-pages/man7/sched.7.html > 4.1.1 Questions > 4.2 Read API description: http://... > 4.3 Exercise (understanding): Read and understand function xxxx_yyyy() > 4.4 Exercise (understanding: Change the implementation of xxxx_yyyy(), > so that ... > 4.5 Exercise (debugging): checkout version 123456 and fix the > following (old) bug > 4.6 Final Exercise (developing): Write your own scheduler with the > following algorithm... > > In my opinion that could help a lot of interested people to have a > guided tour though the kernel. It could really lower barriers, also in > terms of the fear of communication. > > I am NOT able to to produce it by myself, but I can help to structure > it, review it and also answer questions. I would also maintain them in > case of changes and test the tutorials on a regular basis to keep them > up to date. I also would improve the tutorial from a newbie point of > view ;) > > If there is someone out there that is also interested in doing it > please let me know. > > And if there is something like this out there please let me know, so I > can maybe support this project :) Add mailing kernelnewbies. Albino -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/