Sebuah OS tertanam yang ringan, kesadaran energi, non-preemptive, berbasis peristiwa, mudah digunakan untuk prosesor mikro.
Untuk prosesor MCU kecil, overhead RAM/ROM yang tidak perlu harus dihindari sebanyak mungkin.
Di Haddock-OS, semua tugas didorong oleh acara, dan tugas berkomunikasi satu sama lain melalui sinyal IPC dan bekerja bersama.
Tidak ada overhead yang disebabkan oleh pengalihan tugas dalam sistem preemptive, dan tidak perlu mengunci sumber daya bersama ( Catatan : penangan layanan interupsi ISR membutuhkan seefisien dan ringkas mungkin, dan tidak ada modifikasi sumber daya bersama yang diizinkan).
Manajemen energi berbutir halus (level modul):
Setiap tugas dapat mengatur fungsi panggilan balik untuk bangun tidur secara terpisah.
Penjadwalan keseluruhan (level sistem):
Selain bangun hibernasi tingkat tugas, penjadwal OS akan memilih apakah akan hibernasi CPU berdasarkan status sistem saat ini (semua tugas) (hibernasi/sinyal tertunda yang tertunda/acara waktu tunggu berikutnya akan tiba).
Transplantasi yang nyaman:
Implementasi C murni, tanpa perakitan, nyaman untuk mengadopsi lingkungan pengembangan terintegrasi seperti IAR/Keil. Secara teori, Anda hanya perlu menyelesaikan sistem timer dan UART dari lapisan abstraksi perangkat keras.
( Catatan : Saya tidak pandai transplantasi, tetapi saya terbatas pada tingkat untuk menguasai parameter yang relevan melalui lembar data; saya berharap para master dapat mengalami dan melengkapi dan meningkatkannya bersama.)
Implementasi keseluruhan Haddock-OS juga relatif ringan dan ringkas, dan mudah dimengerti.
Mudah digunakan: Meskipun tidak di luar kotak, itu juga relatif sederhana.
Tugas yang ditentukan pengguna, menentukan sinyal tugas, fungsi init, titik masuk, dan kemudian ikuti antarmuka penggunaan komponen inti sistem (kumpulan memori, timer, IPC), dan Anda dapat memulai perjalanan multi-tasking ringan MCU.
Karena sumber daya RAM/ROM dari MCU sangat berharga, Haddock-OS dapat menanam sumber daya untuk memenuhi kebutuhan sistem yang berbeda.
Jumlah tugas maksimum, jumlah maksimum prioritas tugas, jumlah maksimum timer, dan sumber daya kumpulan memori yang dapat dialokasikan semuanya dapat dikonfigurasi.
Penggunaan Komersial Ramah: Lisensi Publik Mozilla, Versi 2.0