Bizi tercih ettiğiniz için teşekkür ederiz. Ekip üyelerimiz en kısa sürede sizlerle iletişime geçecektir.
Rezervasyonunuzu gönderdiğiniz için teşekkür ederiz! Ekibimizden bir yetkili kısa süre içinde sizinle iletişime geçecektir.
Eğitim İçeriği
1. Linux Çekirdeğine Giriş
- Gömülü Linux'a genel bakış
- Linux çekirdeği mimarisi
- Kullanıcı alanı (User space) ve çekirdek alanı (Kernel space)
- Çekirdeğin sorumlulukları
- Çekirdek geliştirme iş akışı
- Desteklenen gömülü platformlara genel bakış
2. Geliştirme Ortamının Kurulması
- Geliştirme iş istasyonunun hazırlanması
- Çapraz derleme (Cross-compilation) kavramları
- Gerekli geliştirme araçlarının yüklenmesi
- BeagleBone Black geliştirme kartının kurulması
- Seri konsol yapılandırması
- Hedef cihazın açılışı (boot)
3. Çekirdek Kaynağının Edinilmesi ve Anlaşılması
- Linux çekirdeği kaynak ağacı
- Stabil ve uzun süreli destek (LTS) çekirdekleri
- Çekirdek kaynaklarının indirilmesi
- Kaynak kod yapısının keşfi
- Çekirdek dokümantasyonu
- Çekirdek sürümlerinin yönetimi
4. Çekirdeğin Yapılandırılması, Derlenmesi ve Açılması
- menuconfig ile çekirdek yapılandırması
- Çekirdek özelliklerinin seçimi
- Çekirdeğin çapraz derlenmesi
- Çekirdek imajlarının oluşturulması
- Çekirdek modüllerinin yüklenmesi
- Açılış yükleyicisine (Bootloader) genel bakış
- Özel bir çekirdeğin açılması (boot)
5. Cihaz Ağacı (Device Tree) Temelleri
- Cihaz Ağacının amacı
- Cihaz Ağacı Kaynak (DTS) dosyaları
- Cihaz Ağacı Bloğu (DTB)
- Donanım betimleme kavramları
- Cihaz Ağacı dosyalarının değiştirilmesi
- Cihaz Ağaçlarının derlenmesi ve dağıtımı
6. Linux Çekirdek Modülleri
- Çekirdek modülü mimarisi
- Yüklenebilir çekirdek modüllerinin derlenmesi
- Modüllerin yüklenmesi ve kaldırılması
- Modül parametreleri
- Modül bağımlılıkları
- Çekirdek modülleriyle etkileşim
- Modül hata ayıklama teknikleri
7. Linux Çekirdeği Hata Ayıklama
- printk() ile çekirdek günlükleme
- dmesg kullanımı
- Dinamik hata ayıklama
- Çekirdek panik analizi
- Oops mesajları
- GDB ile hata ayıklama
- Temel performans izleme araçları
8. Karakter Cihaz Sürücüleri
- Linux cihaz sürücüsü modeli
- Karakter cihazlar
- Sürücülerin kaydedilmesi
- Dosya işlemleri
- Okuma ve yazma işlemleri
- IOCTL arayüzü
- Bellek yönetimi
- Sürücü temizliği (cleanup)
9. Sürücü Entegrasyonu ve Donanım Erişimi
- Platform cihazları ve sürücüleri
- GPIO programlama
- Yakalama (Interrupt) işleme
- Zamanlayıcılar ve ertelenmiş işler
- Donanım kayıtlarına erişim
- Bellek haritalı G/Ç (Memory-mapped I/O) ile çalışma
10. Git ile Sürüm Kontrolü
- Git temelleri
- Çekirdek kaynak kodunun yönetimi
- Dal (branch) oluşturma ve birleştirme
- Yama (patch) oluşturma
- Değişikliklerin incelenmesi
- Çekirdek geliştirmede iş birliği
11. Uygulamalı Çekirdek Geliştirme Laboratuvarları
- Özel bir çekirdeğin yapılandırılması
- Çekirdeğin derlenmesi ve dağıtılması
- Basit bir çekirdek modülünün oluşturulması
- Temel bir karakter cihaz sürücüsünün geliştirilmesi
- Cihaz Ağacı dosyalarının değiştirilmesi
- BeagleBone Black üzerinde çekirdek sorunlarının hata ayıklanması
12. En İyi Uygulamalar ve Özet
- Çekirdek kodlama stili
- Bakımı kolay sürücüler yazma
- Yaygın geliştirme tuzakları
- Çekirdek dokümantasyonu kaynakları
- Açık kaynak katkısı iş akışı
- Temel kavramların gözden geçirilmesi
- Soru ve cevap
- Linux çekirdek geliştirme için sonraki adımlar
Kurs İçin Gerekli Önbilgiler
GNU/Linux sistemini kullanmaya temel düzeyde hâkimiyet
14 Saatler
Danışanlarımızın Yorumları (2)
Eğitmenin bilgisi. Bana sorduğum tüm sorulara, hatta platformumuzla ilgili sorulara bile cevap verdi. Ayrıca, hepimizin malzemeyi kavrayana kadar yardım etmeyi sürdürdü.
James O'Donnell - Tennant Company
Eğitim - Embedded Linux Kernel and Driver Development
Yapay Zeka Çevirisi
I liked the hands-on nature of it.
Maurice Egan
Eğitim - Embedded Linux Kernel and Driver Development
Yapay Zeka Çevirisi