Terima kasih telah mengirimkan pertanyaan Anda! Salah satu anggota tim kami akan segera menghubungi Anda.
Terima kasih telah mengirimkan pemesanan Anda! Salah satu anggota tim kami akan segera menghubungi Anda.
Kerangka Materi
1. Pengantar Kernel Linux
- Ikhtisar Linux Tertanam
- Arsitektur kernel Linux
- Ruang pengguna vs. ruang kernel
- Tanggung jawab kernel
- Alur kerja pengembangan kernel
- Ikhtisar platform tertanam yang didukung
2. Menyiapkan Lingkungan Pengembangan
- Menyiapkan workstation pengembangan
- Konsep kompilasi silang (cross-compilation)
- Menginstal alat pengembangan yang diperlukan
- Menyiapkan papan pengembangan BeagleBone Black
- Konfigurasi konsol serial
- Menjalankan perangkat target
3. Mendapatkan dan Memahami Sumber Kode Kernel
- Pohon sumber kernel Linux
- Kernel stabil vs. kernel jangka panjang (LTS)
- Unduh sumber kode kernel
- Jelajahi struktur kode sumber
- Dokumentasi kernel
- Mengelola versi kernel
4. Mengonfigurasi, Mengompilasi, dan Menjalankan Kernel
- Konfigurasi kernel menggunakan menuconfig
- Memilih fitur kernel
- Mengompilasi kernel secara silang (cross-compiling)
- Membangun citra kernel (kernel images)
- Memasang modul kernel
- Ikhtisar bootloader
- Menjalankan kernel khusus
5. Dasar-Dasar Device Tree
- Tujuan dari Device Tree
- Berkas Device Tree Source (DTS)
- Device Tree Blob (DTB)
- Konsep deskripsi perangkat keras
- Memodifikasi berkas Device Tree
- Membangun dan mendeploi Device Tree
6. Modul Kernel Linux
- Arsitektur modul kernel
- Membangun modul kernel yang dapat dimuat (loadable kernel modules)
- Memuat dan melepas modul
- Parameter modul
- Ketergantungan modul
- Berinteraksi dengan modul kernel
- Teknik debugging modul
7. Debugging Kernel Linux
- Pencatatan (logging) kernel dengan printk()
- Menggunakan dmesg
- Debugging dinamis
- Analisis panic kernel
- Pesan Oops
- Debugging dengan GDB
- Alat pelacakan kinerja dasar (basic performance tracing tools)
8. Driver Perangkat Karakter
- Model driver perangkat Linux
- Perangkat karakter
- Mendaftarkan driver
- Operasi berkas (File operations)
- Operasi baca dan tulis
- Antarmuka IOCTL
- Manajemen memori
- Pembersihan driver (Driver cleanup)
9. Integrasi Driver dan Akses Perangkat Keras
- Perangkat dan driver platform
- Pemrograman GPIO
- Pemrosesan interupsi (Interrupt handling)
- Pewaktu dan kerja tertunda (Timers and deferred work)
- Akses register perangkat keras
- Working with memory-mapped I/O
10. Kontrol Versi dengan Git
- Dasar-dasar Git
- Mengelola kode sumber kernel
- Branching dan merging
- Membuat patch
- Meninjau perubahan
- Bekerja sama dalam pengembangan kernel
11. Laboratorium Pengembangan Kernel Praktik Langsung
- Menkonfigurasi kernel khusus
- Membangun dan mendeploi kernel
- Membuat modul kernel sederhana
- Mengembangkan driver perangkat karakter dasar
- Memodifikasi berkas Device Tree
- Mengdebug masalah kernel pada BeagleBone Black
12. Praktik Terbaik dan Ringkasan
- Gaya penulisan kode kernel
- Menulis driver yang mudah dirawat (maintainable)
- Jebakan pengembangan umum (Common development pitfalls)
- Sumber daya dokumentasi kernel
- Alur kerja kontribusi open-source
- Tinjauan konsep kunci
- Pertanyaan dan jawaban
- Langkah selanjutnya untuk pengembangan kernel Linux
Persyaratan
Keakraban dasar dengan penggunaan sistem GNU/Linux
14 Jam
Testimoni (2)
Pengetahuan pelatih. Dia mampu menjawab semua pertanyaan saya, bahkan pertanyaan tentang platform kami. Dia juga terus membantu hingga kita semua memahami materi.
James O'Donnell - Tennant Company
Kursus - Embedded Linux Kernel and Driver Development
Diterjemahkan Mesin
I liked the hands-on nature of it.
Maurice Egan
Kursus - Embedded Linux Kernel and Driver Development
Diterjemahkan Mesin