Курс про это ваше ядро
Концепция
- Интерфейсы ядра
- Организация ядра
План
- (не в порядке изложения)
- Интерфейсы ядра
- ABI
- syscalls
- vdso, (vsyscall)
- procfs
- sysfs
- Для того, чтобы нормально рассказать про sysfs и kobjects, сначала нужно про базовые механизмы ядра рассказать
- debugfs
- Другие виртуальные ФС — configfs, selinuxfs, ...
- sysctl
- "Механизмы" ядра
- Programming tricks и подходы к реализации, которые многое определяют
- lists, rbtree. RCU.
- containerof/offsetof, полиморфизм™
- callbacks
- kobjects (kref, kset, ...)
- kthread, workqueue, sync primitives
- MM
- Тут я вообще слабо в курсе
- struct page, struct vma
- buddy allocator
- slab/slob/slub
- Scheduler
- Модули
- Модульная магия (параметры, crc символов)
- Зависимости, алиасы
- VFS
- chardev, blkdev
- Драйверы ФС
- Сетевой стек
- Тема очень обширная, тут сформулировать выжимку на 2—4 лекции сложнее всего
- struct sk_buff
- netdev
- Роутинг, netfilter, BPF
- Scalability, DPDK
- netlink, SIOC
- Устройства
- struct bus, struct device
- Device model
- PCI(e)
- v4l2
- На этом мои познания заканчиваются
- Security
- Виртуализация™
- Namespaces/cgroups
- IOMMU, VFIO
- KVM
- Всякое
eSyr/LinuxKernelCoursePlan2016 (последним исправлял пользователь eSyr 2016-09-15 01:29:12)