Apa itu RTOS Pada Arduino?

Posted on

RTOS Arduino

Apa itu RTOS Real Time Operating System? – Jika anda telah memasuki ranah mikrokontroller seperti pada platform Arduino, anda mungkin akan mendengar istila RTOS. Apa sebenarnya RTOS itu? Bagaimana ia bekerja?

RTOS adalah istilah yang merujuk pada sistem operasi (OS) untuk mikrokontroler. Gunanya adalah membuat pemrosesan set program menjadi lebih cepat karena menggunakan register Interrupt yaitu ISR (Interrupt Service Routine).

Apa Perbedaan RTOS dan Pemrograman Biasa?

Untuk bisa mengetahui perbedaanya, maka kita harus paham struktur program dan bagaimana program akan di eksekusi. 

Pada sistem tertanam atau embedded system, sangat dikenal istilah Super Loop karena sangat banyak digunakan dalam model membuat program.

Mari kita lihat perbedaan RTOS dan Super  Loop dibawah .

Struktur Super Loop

Secara umum pemrograman sebuah mikrokontroller menggunakan struktur “Super Loop” atau “Bare Metal” dimana progam utama akan terus dijalankan secara berulang.

Kendalanya jika menggunakan struktur program Super Loop adalah jika program yang dibuat  banyak menghandle fungsi-fungsi tertentu.

Jika itu terjadi, maka sistem akan lebih lambat karena mikrokontroller harus menyelesaikan satu fungsi dahulu, kemudian akan eksekusi fungsi setelahnya dan seterusnya.

Misalnya, dalam program yang dibuat terdapat 3 fungsi sebut saja Fungsi A, B dan C dimana masing-masing fungsi memiliki set program untuk menjalankan perintah tertentu.

Struktur Super Loop akan membuat mikrokontroller menjalankan fungsi A hingga selesai, setelkah itu baru fungsi B hingga selesai dan setelah itu jalankan C hingga selesai, lalu program akan balik menjalankan fungsi A dan kembali berulang seperti itu.

Oleh karena waktu eksekusi semakin lama, maka respon dari alat yang menggunakan struktur “Super Loop” akan berkurang sensitifitasnya.

Struktur RTOS

Sedangkan RTOS menawarkan cara yang berbeda. Setiap fungsi atau set program akan dijalankan secara bersamaan.

Istilah bersamaan dis bukan berarti di proses dalam satu waktu, namun setiap set program akan dipecah menjadi kepingan-kepingan kecil dan akan dijalankan satu persatu dari setiap fungsi.

Misalnya fungsi A, B dan C akan dipecah menjadi 8 bagian. 

A 8 bagian, B 8 bagian dan C 8 bagian.

Mikrokontroller akan menjalankan terlebih dahulu bagian pertama dari fungsi A, kemudian bagian pertama Fungsi B, lalu bagian pertama Fungsi C.

Setelah itu, mikrokontrolle akan menjalankan bagian kedua dari fungsi A, kemudian bagian kedua dari fungsi B, lalu bagian kedua dari fungsi C.

Mikrokontroller akan lanjut menjalankan bagian ketiga dari masing-masing fungsi hingga bagian ke delapan.

Setelah itu, baru menjalankan ulang ke bagian pertama.

Oleh karena sistem seperti , maka program akan berjalan lebih cepat mendekati waktu nyata, maka di beri istilah Real Time.

Apa itu RTOS Real Time Operating System Pada Arduino?

FreeRTOS

Setelah kita mengetahui istilah RTOS, maka selanjutnya kita akan mengenal dengan FreeRTOS. Apa itu FreeRTOS?

FreeRTOS adalah salah satu OS untuk RTOS.

Singkatnya seperti , jika komputer terdapat beberapa OS seperti Windows, MacOS dan Linux, maka mikrokontroller punya beberapa OS seperti FreeRTOS dan lainnya.

Mengapa kita gunakan FreeRTOS?

Karena FreeRTOS memiliki dokumentasi lengkap dan komunitas.

Semoga bermanfaat.