Freertos mendapat kelas

[Michael Becker] telah memanfaatkan Freertos selama sekitar tujuh tahun. Dia memilih untuk mulai menambahkan beberapa fitur serta memiliki pembungkus kelas C ++ yang sangat menarik untuk OS yang tersedia.

Sistem operasi waktu nyata (RTO) menambah kinerja untuk mikrokontroler utas tunggal untuk menjalankan beberapa program pada saat yang bersamaan tanpa membahayakan kewarasan pengembang firmware. Pekerjaan ini menambah C ++ hingga sisa manfaat freertos. Kami memahami bahwa orang memiliki perasaan kuat satu metode atau yang lain tentang memanfaatkan C ++ dalam sistem tertanam. Namun, karena 24 pekerjaan demo menggambarkan, itu mungkin.

Salah satu hal yang baik tentang perpustakaan adalah secara menyeluruh didokumentasikan. Sejumlah besar contoh tidak ada salahnya. Perpustakaan bersih dengan hanya di bawah 30 kelas. Tampaknya telah menolak pola memiliki kelas untuk semuanya. Anda memahami jenis perpustakaan yang kami maksud. Untuk menghasilkan objek integer, cukup kembangkan item konfigurasi untuk lulus ke generator pabrik kelas yang …. Perpustakaan ini tidak menghibur semua jenis itu. Ini memiliki abstraksi yang mudah di sekitar utas serta timer, antrian, serta mutex.

Satu hal yang kami temukan agak tidak terduga adalah kurangnya “aplikasi dasar.” Fungsi khas dari perpustakaan C ++ adalah memiliki item aplikasi fundamental yang berspesialisasi untuk menghasilkan aplikasi Anda. Tampaknya para pembungkus, masih membutuhkan Anda untuk memanfaatkan fungsi primer yang cukup tampan serta menawarkan beberapa panggilan balik dasar serta hal-hal. Ini mungkin dengan cepat dimasukkan ke dalam kelas. Tentu saja, perpustakaan masih muda, jadi mungkin ini akan terjadi dalam rilis di masa depan.

Freertos sangat fleksibel serta berjalan pada sejumlah besar prosesor serta papan. Begitu juga relatif sederhana untuk port ke perangkat keras baru. Ini juga dapat hidup berdampingan dengan banyak middleware seperti Mongoose OS, STM32 HAL Library, serta lebih banyak lagi.

Leave a Reply

Your email address will not be published. Required fields are marked *