Skip to content

hanyujie2002/linux-zh

This branch is 1 commit ahead of, 5 commits behind linux-kernel-labs/linux:master.

Folders and files

NameName
Last commit message
Last commit date
Feb 8, 2021
Jan 18, 2024
Apr 11, 2024
Sep 16, 2020
Feb 7, 2021
Feb 3, 2021
Mar 25, 2020
Jan 27, 2021
Feb 8, 2021
Feb 7, 2021
Feb 7, 2021
Jan 19, 2021
Sep 5, 2020
Feb 7, 2021
Jan 27, 2021
Jan 30, 2021
Feb 7, 2021
Dec 30, 2020
Jan 23, 2021
Jan 19, 2021
Feb 7, 2021
Feb 9, 2024
Aug 7, 2020
Feb 3, 2021
Oct 17, 2020
Jul 22, 2016
May 16, 2019
Dec 5, 2019
Sep 10, 2020
Dec 6, 2020
Feb 10, 2020
Nov 30, 2020
Feb 3, 2020
May 12, 2020
Dec 10, 2020
Feb 8, 2021
Sep 9, 2018
Feb 8, 2021

Repository files navigation

Linux Kernel Teaching

This is a collection of lectures and labs Linux kernel topics. The lectures focus on theoretical and Linux kernel exploration.

The labs focus on device drivers topics and they resemble "howto" style documentation. Each topic has two parts:

  • a walk-through the topic which contains an overview, the main abstractions, simple examples and pointers to APIs
  • a hands-on part which contains a few exercises that should be resolved by the student; to focus on the topic at hand, the student is presented with a starting coding skeleton and with in-depth tips on how to solve the exercises

This content is based on the Operatings Systems 2 course from the Computer Science and Engineering Department, the Faculty of Automatic Control and Computers, University POLITEHNICA of Bucharest.

You can get the latest version at http://github.com/linux-kernel-labs.

To get started build the documentation from the sources after installing docker-compose on you host:

cd tools/labs && make docker-docs

then point your browser at Documentation/output/labs/index.html.

Alternatively, you can build directly on the host (see tools/labs/docs/Dockerfile for dependencies):

cd tools/labs && make docs
.. toctree::

   so2/index.rst

.. toctree::
   :caption: Lectures

   lectures/intro.rst
   lectures/syscalls.rst
   lectures/processes.rst
   lectures/interrupts.rst
   lectures/smp.rst
   lectures/address-space.rst
   lectures/memory-management.rst
   lectures/fs.rst
   lectures/debugging.rst
   lectures/networking.rst
   lectures/arch.rst
   lectures/virt.rst

.. toctree::
   :caption: Labs

   labs/infrastructure.rst
   labs/introduction.rst
   labs/kernel_modules.rst
   labs/kernel_api.rst
   labs/device_drivers.rst
   labs/interrupts.rst
   labs/deferred_work.rst
   labs/block_device_drivers.rst
   labs/filesystems_part1.rst
   labs/filesystems_part2.rst
   labs/networking.rst
   labs/arm_kernel_development.rst
   labs/memory_mapping.rst
   labs/device_model.rst
   labs/kernel_profiling.rst

.. toctree::
   :caption: Useful info

   info/vm.rst
   info/extra-vm.rst
   info/contributing.rst

About

Linux kernel source tree

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 98.2%
  • Assembly 1.1%
  • Shell 0.3%
  • Makefile 0.2%
  • Perl 0.1%
  • Python 0.1%