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
Memulai Penggunaan Rust pada Perangkat Tertanam
- Gambaran umum mengenai no_std, modul inti Rust, serta ekosistem pengembangan Rust untuk perangkat tertanam.
- Pemilihan target pembangunan dan penjelasan terkait format identifikasi target.
- Konfigurasi rustup, Cargo, serta rangkaian alat yang dibutuhkan untuk pengembangan Rust.
Rangkaian Alat, Proses Build & Debugging
- Pemanfaatan alat Cargo, cargo-embed, probe-run, serta prosedur kerja OpenOCD dalam pengembangan.
- Proses pemrograman memori dan debugging dengan alat bantu deteksi perangkat keras (ST-Link, JLink).
- Pertimbangan implementasi CI untuk proses pembangunan firmware Rust di lingkungan terbatas.
Abstraksi Perangkat Keras dan Akses ke Periferal
- Memahami ciri khas struktur embedded-hal serta pola pembuatan driver perangkat.
- Materi mengenai paket akses periferal (PACs) dan alat svd2rust untuk penerjemahan spesifikasi perangkat.
- Cara menciptakan serta memanfaatkan driver HAL, serta kode pendukung lainnya untuk konfigurasi modul.
Keamanan Memori, Konkurensi & Waktu Nyata
- Penerapan pola-pola yang menjamin keamanan saat mengakses memori bersama atau menggunakan referensi variabel dalam konteks interupsi.
- Konsep RTIC dan model pemrograman konkurensi lainnya untuk sistem waktu nyata.
- Analisis penggunaan ruang heap dan stack, pengelola alokasi memori, serta strategi penghindaran alokasi dinamis dalam kode Rust.
Pengendalian Kesalahan, Pengujian & Keandalan Kode
- Pola-pola umum menangani kesalahan di lingkungan perangkat dengan sumber daya terbatas.
- Perbedaan pendekatan pengujian unit pada lingkungan komputer, dibandingkan dengan pengujian integrasi secara langsung pada perangkat keras.
- Teknik identifikasi penyebab kegagalan program, pencatatan log, serta prosedur investigasi pasca-kegagalan sistem.
Optimisasi Performa, Konsumsi Energi & Sumber Daya Lainnya
- Metode pengukuran kinerja, penilaian hasil, serta langkah optimalisasi bagian kode yang paling sering digunakan.
- Strategi pengurangan ukuran biner program dan konfigurasi script linker untuk efisiensi memori.
- Konsep manajemen daya elektronik serta praktik desain perangkat hemat energi yang layak diadopsi.
Penyebaran Kode, Keamanan & Rekomendasi Penggunaan Ekosistem Rust
- Prinsip-prinsip pengamanan booting sistem dan penandatanganan firmware sebagai bagian proses penyebaran.
- Faktor-faktor penting dalam manajemen rantai suplai serta kontrol versi perangkat lunak terkait modul Rust.
- Petunjuk transisi dari penggunaan bahasa C menjadi Rust untuk kode firmware, disertai rujukan ke sumber daya komunitas pendukungnya.
Kesimpulan serta Arah Pengembangan Selanjutnya
Persyaratan
- Pemahaman mengenai konsep inti Rust: kepemilikan data, peminjaman referensi, dan durasi penggunaan variabel
- Pengalaman menulis program Rust yang kompleks (tingkat menengah)
- Pengetahuan dasar mengenai konsep sistem tertanam: akses memori-mapped I/O, interupsi, dan periferal
Peserta Kursus
- Insinyur firmware yang ingin mengadopsi Rust dalam pengembangan produk.
- Insinyur perangkat lunak berpengalaman Rust yang beralih ke sistem tingkat rendah.
- Pemimpin teknis yang sedang mengevaluasi potensi pemanfaatan Rust dalam proyek pengembangan perangkat tertanam.
14 Jam
Testimoni (1)
Dapat meminta subjek tingkat lanjut meskipun awalnya tidak direncanakan.
Gabriel Chouinard - Spark Microsystems
Kursus - FreeRTOS: Programming for Real Time Operating Systems
Diterjemahkan Mesin