El konsep sistem masa nyata Ia bukanlah sesuatu yang telah difikirkan dalam beberapa tahun kebelakangan ini di Linux, sejak idea ini bermula hampir 20 tahun lalu, tepatnya pada tahun 2005 sebagai sebahagian daripada projek “Realtime-Preempt” (“-rt”) dengan pembangunan mod PREEMPT_RT untuk kernel Linux.
Bagi yang tak tahu PREEMPT_RT, mereka harus tahu bahawa ia adalah tampalan untuk kernel Linuxdan menukar sistem pengendalian kepada masa nyata (masa nyata). Matlamat utama PREEMPT_RT adalah untuk mengurangkan kependaman dan memastikan kebolehramalan dalam pelaksanaan tugas, yang penting dalam aplikasi yang memerlukan respons pantas.
Dalam perkataan yang lebih mudah, kita boleh mengatakan bahawa PREEMPT_RT membolehkan hampir semua bahagian kernel terganggu, yang mengurangkan kependaman. Tidak seperti kernel standard, tidak semua bahagian boleh diganggu, yang boleh menyebabkan kelewatan dalam masa tindak balas.
Sejak 2015 projek itu berada di bawah seliaan Yayasan Linux dan sehingga kini, pelaksanaan mod PREEMPT_RT telah ditawarkan dalam bentuk tampung luaran. Berdasarkan tampalan ini, pengedaran seperti RHEL, SUSE dan Ubuntu telah mencipta edisi masa nyata produk mereka, sangat dituntut dalam sektor seperti sistem kewangan, peranti pemprosesan audio dan video, sistem penerbangan, perubatan, robotik, telekomunikasi dan aplikasi perindustrian, di mana ia adalah penting untuk menjamin masa tindak balas yang boleh diramal untuk acara.
En 2019 proses kenaikan pangkat bermula daripada patch yang dibangunkan dalam projek PREEMPT_RT ke kernel Linux utama. Dalam versi kernel 5.3, pilihan PREEMPT_RT telah disertakan dalam fail konfigurasi untuk mendayakan mod masa nyata.
Bit printk yang diperlukan untuk PREEMPT_RT terletak di linux-next. ini ialah halangan terakhir yang diketahui untuk PREEMPT_RT. Barisan RT telah juga "konsol atom" untuk UART 8250 yang belum masuk linux-seterusnya. Ini bermaksud tingkah laku "konsol warisan" seperti tidak mencetak daripada konteks atom dalam kes kecemasan. Pengawal 8250 UART adalah satu-satunya yang menyediakan sokongan "konsol atom" hari ini.
Semua Kerja ini akan membuahkan hasil., memandangkan penyepaduan lengkap perubahan yang diperlukan telah mengambil masa lima tahun dan hampir siap, memandangkan dijangka dalam versi 6.12, kernel boleh disusun dalam mod PREEMPT_RT tanpa perlu menggunakan tampung tambahan.
Disebutkan bahawa halangan terakhir yang menghalang PREEMPT_RT daripada didayakan ialah kekurangan sokongan untuk keluaran atom tidak menyekat menggunakan fungsi printk. Fungsi ini telah pun diterima pakai di cawangan linux-seterusnya. Selain itu, konsol atom yang tidak menyekat sedang menunggu pelaksanaan untuk pengawal 8250 UART, yang ketiadaannya pada masa ini menghalang output mesej kecemasan kepada konsol daripada kod yang dilaksanakan dalam konteks atom.
Dengan bit printk digabungkan, PREEMPT_RT boleh didayakan pada X86, ARM64 dan Risc-V. Tiga seni bina yang digabungkan ini memerlukan perubahan selama bertahun-tahun.
tahun, meninggalkan saya dalam kedudukan di mana saya tidak mempunyai perubahan penting dalam
barisan yang akan menjejaskan mereka. ARM dan POWERPC mempunyai beberapa patch penting yang tinggal…
Pembangun kernel Linux telah mengumumkan penyepaduan perubahan terkini yang diperlukan dalam cawangan linux-next, yang akan digunakan untuk menyusun versi 6.12. Perubahan ini akan membolehkan kernel disusun dengan pilihan PREEMPT_RT, yang memperkenalkan keupayaan masa nyata.
Sebaik sahaja perubahan ini diterima pada cawangan utama, mod PREEMPT_RT Ia akan tersedia untuk seni bina X86, ARM64 dan RISC-V. Sokongan untuk seni bina ARM dan POWERPC akan ditambah kemudian, kerana tampalan yang diperlukan masih belum disepadukan sepenuhnya.
Perlu dinyatakan bahawa perubahan yang dicadangkan masih belum muktamad dan ada kemungkinan jika PREEMPT_RT tidak tiba di cawangan 6.12, ia akan disepadukan sehingga tahun depan dalam versi 6.13.
Akhirnya, sekiranya anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh menyemak butiran di pautan berikut.