Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Course Outline
Invoering
- snelle geschiedenis van GNU/Linux-licenties kernelversiebeheer releasecyclus kernelbomen hoofdkernel vs. gebruikersruimtemechanisme vs. beleid kerneldriveralternatieven RTOS vs. Linux
Geheugen Management
- Virtueel geheugen versus fysiek geheugen geheugentoewijzing in kernelpaginazones API-plaat
Kernel-patch
- levenscyclus git kernelbron maak patchcontrole patchfix patch verzend patch gecontroleerde code
Kernelmodules
- kernelbronnen ophalen configureren/bouwen/installeren van apparaatstuurprogramma's (statisch gekoppeld, geladen tijdens runtime) init/exit-licenties EXPORTEREN SYMBOOL GPL uit boom makefile module-init-tools module in kernelboom Kconfig-parameter wordt sparse doorgegeven
Char-chauffeurs
- architectuur gebruiker/kernel interface I/O subsysteem VFS sysfs (apparaten, bus, stuurprogramma's, klassen), kobject/ktype/kset linux kernel driver model apparaatbestanden char driver initialisatie registratie open, release cdev, cdev add, cdev del,... grote/kleine nummers udev, udevmonitor, udevadm
Geavanceerde karakterbestuurderoperaties
- ioctl ontgrendeld ioctl compat ioctl gebruikersruimte API kernelruimte API proceslevenscyclus slapen/blokkeren slapen/wakker worden wachtrij donderende kudde poll/selecteren
Kernel-foutopsporing
- debuggen van bugs debuggen van de kernel binair zoeken met git debug-ondersteuning van kernel printk syslogd, klogd, loglevels, snelheidslimiet, debug-niveaus, debuggen van selectieve subsystemen debuggen door te bevragen debugfs oeps debuggen, bevestigen van oeps Magic SysRq Key kgdb/kdb JTAG
Traceren
- gcov lcov oprofile ftrace nop tracer functie tracer sched switch tracer functie grafiek tracer dynamische tracer
interrupts vs. polling interrupt programmasecties herintredingsgebeurtenissen interrupt handler gedeelde interrupt handler interrupt flow interrupt control
- Werk uitstellen
bovenste/onderste helften softirqs tasklets werkwachtrijen threaded interrupts
- Gelijktijdigheid
kritieke regio/sectie atomaire raceconditie synchronisatie vergrendeling vergrendelingsoplossingen impasse twist wat te vergrendelen? wat kan worden gebruikt? atomaire operaties spin locks lezer-schrijver spin locks semafoor binaire semafoor mutex lezer-schrijver semafoor voltooiingsvariabelen sequentiële vergrendelingen uitschakelen voorrangsvolgorde en barrières
- Tijd
HZ Jiffies grote/kleine vertragingen kerneltimers
- Hardware-I/O
I/O-poorten I/O-geheugen Hoe om te gaan met bijwerkingen bij toegang tot registers?
- Gebruikerskernel Communication
put(get)_user() kopiëren naar(van)_user() Kernel I/O-geheugentoewijzing procfs sysfs debugfs relayfs netlink ioctl
- Draagbaarheid
woordgrootte ondoorzichtige typen ondertekend/niet-ondertekend char-gegevensuitlijning integrale promotiecode hergebruik endianess-systeem vink paginagrootte aan instructie bestellen SMP/voorkoop/hoog geheugen
- Tenzij anders vermeld, zijn de inhoud en dit cursusoverzicht gelicentieerd onder Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0).
Requirements
- Basiskennis van het gebruik van een GNU/Linux-systeem als eindgebruiker
- Basiskennis van een opdrachtregelshell
- Basiskennis van gebruikersruimte / applicatieontwikkeling
- Gemiddelde kennis van programmeren in C
- Moet eerder Embedded GNU/Linux Systems Architecture hebben gevolgd (sterk aanbevolen!) en/of een goed begrip hebben van de onderwerpen die daar worden beschreven
35 Hours
Getuigenissen (5)
Meer over het lab.
Sarbin - Cagayan Electric Power And Light Co., Inc.
Cursus - Flutter Development Bootcamp with Dart
Machine Translated
Dat er veel oefeningen waren.
Katarzyna Straszewska - Swiss AviationSoftware Ltd.
Cursus - Build Native iOS and Android Apps with Flutter
Machine Translated
On time, training resources is readily available
MIKHAIL JOSUE MONTECILLO - PAg-IBIG Fund
Cursus - Xamarin for Cross-Platform Development
That the trainer adapts to our needs
Eduardo Fontecha - ORMAZABAL PROTECTION & AUTOMATION S.L.U.
Cursus - The Yocto Project - An Overview - hands-on
Practical excersises