Gömülü Linux Sistemleri – Geliştirme ve Programlama


Kursumuza ön kayıt yaptırmak için bu bağlantıyı kullanabilirsiniz.

  • Giriş ve Temel Bilgiler

    • Gömülü Sistemlere Genel Bir Bakış
    • Gömülü Sistemlerin Karakteristik Özellikleri
    • Bir Kaynak Yöneticisi Olarak İşletim Sistemi
    • İşletim Sistemlerinin Alt Sistemleri
    • Linux Sistemlerinin Tarhihsel Gelişimi
    • Gömülü Linux Sistemi Ne Anlama Gelmektedir?
    • Gömülü Linux Sistemlerinin Masaüstü Linux Sistemlerinden Farklılıklları
    • Mikroişlemci, Mikrodenetleyici, SOC (System on Chip) ve SBC (Single Board Computer) Kavramları
    • Gömülü Linux Sistemleri için Kullanılan Donanımlar, Raspberry Pi, Beaglebone ve Diğerleri
    • Gömülü Sistemlerin Çevre Birimleri
    • Gömülü Sistemlerde Bellek Birimleri
    • Gömülü Sistemler İçin Emülatörler ve QEMU
  • Single Board Bilgisayarlar

    • Single Board Bilgisayar Nedir?
    • Yaygın Kullanılan Single Board Bilgisayarlar
    • Single Board Bilgisayarların Uygulama Alanları
    • Single Board Bilgisayarların Sınırlılıkları ve Handikapları
  • Raspberry Pi Donanımının Özellikleri

    • Raspberry Pi Donanımındaki CPU, GPU ve RAM Özellikleri
    • ARM İşlemcilerinin Özellikleri
    • ARM işlemcilerinde Cortex Türleri ve Komut Kümeleri Çeşitliliği
    • SD Kart Arabirimi
    • GPIO Arabirimi
    • I2C ve SPI Veri Yolları
    • USB Arabirimi
    • Video/Audio Özellikleri
    • Ethernet ve Wireless Birimleri
    • HDMI ile Bağlantı
    • Güç Kaynağının Olması Gereken Özellikleri ve Soğutucu Gereksinimi
    • Raspberry Pi Donanımında Kullanılan Soketler ve Kablolar
  • Gömülü Sistemlere Linux İşletim Sisteminin Yüklenmesi ve Kullanıma Hazır Hale Getirilmesi

    • Uygun Linux Dağıtımının Belirlenmesi
    • Gömülü Linux Sistemleri İçin Kullanılan Dağıtımlar ve Özellikleri
    • Raspberry Pi Donanımlarında Kullanılan Yaygın Dağıtımlar
    • Linux Dağıtımlarının Gömülü Sisteme Yüklenmesi
    • Diskin Bölümlendirilmesi ve Buna İlişkin Komutlar ve Utility Programlar
    • Toolchain Kavramı
    • Doğal (Native) ve Çapraz (Cross) Toolchain’ler
    • Gömülü Sistemler İçin Çapraz Derleyiciler (Cross Compilers)
    • Ethernet ve Wireless Network Bağlantılarının Sağlanması
  • Linux Sistemlerinde Dosya Sistemleri

    • ext2, ext3, ext4, xfs Dosya Sistemlerinin Genel Özellikleri
    • Dosya Sistemlerinin Mount Edilmesi
    • Dosya Sistemlerindeki Temel Dizinler ve Anlamları
    • Dosya Bloklerı, i-node Kavramı
    • Linux’ta Kullanılan Dosya Sistemlerinin Aşağı Seviyeli Tasarımları
    • Dosya Sistemlerine Yönelik Aygıt Sürücüler
    • Dosya Sistemi İle İlgili Komutlar ve Utility Programlar
    • tmpfs ve ramfs Dosya Sistemleri ve Linux’ta Ramdisk Kullanımı
  • Ekran ve Görüntü Birimlerinin Programlanması

    • Terminal Aygıt Sürücüleri
    • Terminal Aygıt Sürücülerinin Programlanması
    • X Window Sistemleri
    • X Window Sistemlerinin Tasarımı ve Programlanmasıne İlişkin Temel Bilgiler
    • Qt Framework hakkında Temel Bilgiler ve Basit Örnekler
    • Framebuffer Kavramı ve Kullanım Alanları
    • Framebuffer Aygıt Sürücüleri
    • Linux’ta Framebuffer Kütüphanesinin Kullanımı
  • Çevre Birimlerinin Programlanması

    • USB Arabiriminin Özellikleri
    • libusb Kütüphanesinin Kullanımı
    • Raspberry Pi Donanımlarında GPIO Uçlarının Kullanımı
    • GPIO Uçlarının Programlanmasına İlişkin Örnekler
    • I2C ve SPI Arayüzlerinin Kullanılması
    • UART Kullanımı
    • Raspberry Pi İçin Tasarlanmış GPIO Uçlarını Kullanan Hazır Kartlar (Add-on Boards)
    • Sensörlerin İşlevleri ve Sensörlerin Kullanımına İlişkin Örnekler
    • LCD Kullanımına İlişkin Örnekler
  • Linux Çekirdeğinin Konfigüre Edilmesi ve Derlenmesi

    • Konfigürasyon İşleminin Anlamı
    • Önemli Konfigürasyon Parametreleri
    • Kernel Modüllerinin Çekirdeğe Eklenmesi
    • Kernel Modüllerinin Bağımlılıkları
    • Kernel Modülleri ile İlgili Araçlar, Komutlar ve Utility Programlar
    • GNU Make Aracının Temel Düzeyde Kullanımı ve Make Dosyalarının Oluşturulması
    • Linux Çekirdeğinin Derlenmesi
  • Gömülü Linux Sistemlerinde Kullanılan Ön Yükleyici (Boot Loader) Programlar

    • Ön Yükleyici Kavramı ve Ön Yükleyicileri İşlevleri
    • Birinci ve İkinci Düzey Ön Yükleyiciler
    • Raspberry Pi Ön Yükleyici Mekanizması
    • U-Boot (Das U-Boot) Önyükleyicisinin Genel Yapısı ve Kullanımı
  • Linux Sistemlerinin Başlatılma Süreci

    • Masaüstü ve Gömülü Sistemlerde Linux Sistemlerinin Başlatılması
    • Kernel Konfigürasyon Parametrelerinin Boot Sürecindeki Etkileri
    • Linux Çekirdeğinin Yüklenmesine İlişkin Aşamalar
    • Boot Süreci Sırasında Dosya Sistemlerinin Mount Edilmesi
    • Boot Sürecinde Etkili Olan Script Dosyaları
  • Linux Sistemlerinde Kullanılan Init Paketleri ve Systemd Init Paketinin Kullanımı

    • Init Paketlerinin İşlevi
    • SysVInit ve Upstart Paketleri Hakkında Temel Bilgiler
    • Systemd Paketinin Kurulumu
    • Systemd Paketinin İşlevleri
    • Daemon Kavramı
    • Unit Dosyalarının Oluşturulması ve Servislerin Yönetilmesi
    • Systemd İle Servis Yönetiminin Ayrıntıları
    • Systemd Paketine İlişkin Komutların Kullanımı
  • Aygıt Ağacı (Device Tree)

    • Aygıt Ağacı Nedir ve Ne Amaçla Kullanılmaktadır?
    • Aygıt Ağaçlarına Neden Gereksinim Duyulmuştur?
    • Aygıt Ağaçlarının Genel Yapısı
    • Agıt Ağaçlarının Oluşturulması
    • Aygıt Ağaçlarının Derlenmesi ve Tersine Derlenmesi (Decompile Edilmesi)
    • Aygıt Ağaçları ve Boot Süreci
    • Aygıt Ağaçları ve Aygıt Dosyaları
    • Sistem Çalışırken Aygıt Konfigürasyonlarının Ayarlanması
  • Yocto Projesi

    • Yocto Projesi Nedir?
    • Poky ve bitbake Kavramları
    • Katman (Layer) Kavramı ve Kullanımı
    • Image Kavramı ve Kullanımı
    • Image İsimleri
    • Recipe Kavramı ve Kullanımı
    • Log Mekanizması
    • Build İşlemi
  • Buildroot Projesi

    • Buildroot Projesi Nedir?
    • Buildroot Çalışma Mekanizması
    • Buildroot Konfigürasyonu
    • Sistemin İsteğe Göre Özelleştirilmesi (Customization)
    • Buildroot’a Yeni Paketlerin Eklenmesi
    • Build İşlemi
  • Linux Sistemlerinde Kullanılan Log Sistemi

    • log Mesajlarının User Mod ve Kernel Modda Oluşturulması
    • syslod Daemon Programın İşlevi
    • Loglamanın User Modda Programlama Yoluyla Yapılması
  • Linux Daemon (Servis) Programlarının Yazımı

    • Daemon Programların Anlamı
    • Daemon Programların Oluşturulması ve Devreye Sokulması
    • Daemon Programların Konfigüre Edilmesi
    • User Mod ve Kernel Mod Daemon Kavramı
    • Linux Kernel İçerisindeki Kernel Mod Daemon’lar ve İşlevleri
  • procfs ve sysfs Dosya Sistemlerinin Kullanımı

    • proc Dosya Sisteminin Genel Yapısı ve Kullanımı
    • sys Dosya sisteminin Genel Yapısı ve Kullanımı
  • Linux Aygıt Sürücülerinin Yazımı

    • Aygıt Sürücülerinin Anlamı
    • Linux Aygıt Sürücü Mimarisinin Tanıtımı
    • LinuxÇçekirdek Modüllerinin Yazımı
    • Çekirdek Modüllerinin Yüklenmesi ve Boşaltılması
    • Karakter Aygıt Sürücülerinin Yazımı
    • Aygıt Sürücülerde Senkronizasyon İşlemleri
    • Aygıt Sürücülerde Bekleme Kuyruklarının Yaratılması ve Bloke İşlemlerinin Sağlanması
    • Aygıt Sürücülerde Bellek Tahsisatları
    • Aygıt Sürücülerin IO Portlarını Kullanması
    • Aygıt Sürücülerde Kesme İşlemlerinin Yönetilmesi
    • Blok Aygıt Sürücülerinin Yazımı
    • Blok Aygıt Sürücülerinde Bellek Haritalaması ve DMA Kullanımı
    • USB Aygıt Sürücüleri
    • Kernel Thread’lerin Yaratılması ve Kullanımı.

Kursumuza ön kayıt yaptırmak için bu bağlantıyı kullanabilirsiniz.

Kurs ücreti duyuru sayfasında belirtilmektedir.

Bu kurs C ve Sistem Programcıları Derneği ve Sistem Bilgisayar işbirliği ile düzenlenmektedir.