REAL TIME SISTEM
Defri Kurniawan M.Kom
Intro
Real Time System memiliki kharakteristik yang unik
dimana sistem harus dapat menanggapi suatu peristiwa dalam jangka waktu yang singkat
Real Time system pada komputer-komputer,
digunakan untuk mengontrol berbagai sistem dari
mesin pabrik (komputer ini berinteraksi langsung pada hardware)
Intro
PL harus bereaksi terhadap peristiwa yang dihasilkan
oleh sinyal hardware dan kontrol dalam menanggapi suatu peristiwa dari lingkungan sistem
Tertanam dalam beberapa sistem perangkat keras
Pengertian Real Time System
IEEE Computer Society Press:
“Sebuah sistem real time adalah sistem yang harus
memenuhi batas waktu respon atau memiliki
konsekuensi risiko yang parah (termasuk kegagalan)”
Ian Sommerville:
“Sebuah sistem real-time adalah sistem perangkat lunak dimana fungsi dari sistem, tergantung pada hasil yang dihasilkan oleh sistem dan waktu”
Pengertian Real Time Software
Real-time software adalah perangkat lunak yang mengukur, menganalisa, dan mengontrol kejadian nyata secara real-time.
Stimulus
Real Time System harus memberikan respon
terhadap stimulasi yang diberikan. Stimulasi dibagi menjadi 2 (dua) secara waktu:
1. Periodic Stimuli
Bisa diprediksi kemunculannya berdasarkan interval
waktu tertentu
Sistem akan mengekseskusi sensor tiap 50 milidetik
2. Aperiodic Stimuli
Biasanya disinyalkan menggunakan mekanisme interupsi
Model of a Real Time System
Periodic Stimuli digunakan pada real time system dengan penggunaan sensor yang saling terkait
Sistem merespon yang diberikan oleh sensor, lalu sistem memberikan perintah kepada aktuator
(aktuator = komponen penggerak)
Model Sensor–Sistem–Aktuator merupakan Sistem Real Time
Model of a Real Time System
Process Control Sensor/Aktuator
Element System
Sensor control processes
Mengumpulkan informasi dari sensor-sensor
Data processor
Melaksanakan pengolahan informasi yang terkumpul dan
menghitung respon sistem
Actuator control processes
Cakupan Real Time System
Cakupan Mikrokontroler kecil yang tertanam pada pengoperasian oven microwave
sampai
sistem yang sangat besar seperti jaringan komunikasi global
Klasifikasi Sistem Real Time
Sebuah sistem real-time lunak (soft real time) adalah sistem yang melakukan penurunan aksi jika hasilnya tidak diproduksi sesuai dengan persyaratan waktu yang ditentukan. Ex: telephony system
Sebuah sistem real-time keras (hard real time) adalah sebuah sistem yang tidak menjalankan
operasi dengan benar jika hasilnya tidak diproduksi
sesuai dengan spesifikasi waktu tertentu. Ex: medical equipment, aircraft control
Real Time Programming
hard-real time software mungkin harus diprogram dalam bahasa assembly untuk memastikan bahwa batas waktu terpenuhi.
Bahasa seperti C memungkinkan program yang efisien yang akan ditulis , tetapi tidak memiliki konstruksi untuk mendukung konkurensi atau manajemen sumber daya bersama.
Java mendukung konkurensi ringan dan dapat digunakan untuk beberapa soft real time sistem
Karakteristik Real Time System
Timelines - waktu merupakan bagian penting.
Real-time sistem harus merespon dalam waktu yang ditentukan
Dynamic Internal Structure - Perlu komponen
sistem yang dapat melakukan rekonfigurasi dinamis untuk menyesuaikan dengan kondisi eksternal
lingkungan
Reactiveness - kondisi yang secara terus menerus
dapat berespons terhadap event yang beragam yang tidak dapat diprediksi urutan waktu kedatangannya
Karakteristik Real Time System
Concurrency - menunjang kegiatan aspek
synchronous, asynchronous, communication,
interrupt handling menjadi bagian penting dalam penyelesaian masalah konkurensi ini
Pertimbangan Arsitektur RTS
Karena kebutuhan untuk merespon tuntutan waktu yang dibuat oleh berbagai sensor, arsitektur sistem harus memungkinkan untuk cepat beralih antara penangan stimulus.
Tuntutan waktu rangsangan yang berbeda-beda sehingga loop (perulangan) berurutan yang
Arsitektur
S1 S2 S3 P (S1) P (S2) P (S1) Monitoring processes Control processes P (A1) P (A2) P (A1) A1 A2 A3 P (A4) A4 Testing process Control panel processesIntro – Design Sistem
Fungsi untuk menyelesaikan masalah terdefinisi jelas pada hirarki product engineering
Memperhatikan setiap karakteristik sistem real time yang ada
Disamping SRS (Software Requirement Analysis) juga definisikan IRS (Interface Requirement System)
Intro – Design Sistem
Proses analisis dan perancangan menjadi lebih kompleks karena harus memperhatikan aspek kedinamisan
Pemodelan behaviour merupakan satu aspek dasar yang harus dijabarkan pada proses analisis dengan jelas (state diagram, pemantauan signal kontrol, pendefinisian spesifikasi kontrol dsb)
Desain Proses RTS
1. Identifikasi stimuli untuk diproses dan tanggapan yang diperlukan terhadap rangsangan.
2. Untuk setiap stimulus dan respon, mengidentifikasi batasan waktu
3. Agregat stimulus dan pengolahan respon ke dalam proses konkuren. Sebuah proses dapat dikaitkan dengan masing-masing kelas stimulus dan respon.
Desain Proses RTS
4. Desain Algoritma untuk memproses setiap kelas dari stimulus dan respon. Ini harus memenuhi persyaratan waktu yang diberikan.
5. Desain sistem penjadwalan yang akan memastikan bahwa proses yang dimulai pada waktunya untuk memenuhi batas waktu.
6. Mengintegrasikan menggunakan sistem operasi real-time.
Real-time system modelling
Efek dari stimulus dalam sistem real-time dapat
memicu transisi dari satu keadaan ke keadaan lain. Finite state machines dapat digunakan untuk
pemodelan sistem real-time.
Namun, model FSM tidak memiliki struktur. Bahkan sistem sederhana dapat memiliki model yang
kompleks.
The UML mencakup notasi untuk memodelkan RTS dengan state diagram
Petrol pump state model
Card inser ted into reader Timeout Resetting do: display C C error Initialising do: initialise display Paying Stopped Reading do: get C C details Waiting do: display welcome do: deliver fuel do: debit Payment ack. Ready Delivering update display Nozzle trigger onNozzle trigger off
Nozzle trigger on Hose in do: validate credit card Validating Invalid card Card removed Card OK
Hose out of holster Timeout
Monitoring and control systems
Kelas penting dari sistem real-time Terus memeriksa sensor dan mengambil tindakan tergantung pada nilai-nilai sensor
Sistem pemantauan memeriksa sensor dan melaporkan hasilnya.
Real Time Operating System
Sistem operasi real-time, sistem operasi yang khusus mengelola proses dalam RTS.
Bertanggung jawab untuk manajemen proses dan alokasi sumber daya (prosesor dan memori).
Mungkin didasarkan pada kernel standar yang digunakan tidak berubah atau dimodifikasi untuk aplikasi tertentu.
Biasanya tidak mencakup fasilitas seperti manajemen file
Operating System Component
Process r esour ce requir ements Scheduler Scheduling informa tion Resour ce mana ger Despa tcher Real-time clock Processes awaiting resour ces Read y list Interrupt handler Available resour ce list Processor list Read y processes Released resour cesOperating System Component
Real-time clock Menyediakan informasi untuk proses penjadwalan.
Interrupt handler
Mengelola permintaan periodik tertentu untuk layanan
Scheduler
Memilih proses selanjutnya yang akan dijalankan.
Resource manager
Mengalokasikan sumber daya memori dan prosesor.
Dispatcher
Study Case: Sistem Pengamanan Gedung
Sebuah sistem perangkat lunak yang akan
diimplementasikan untuk mengontrol sistem alarm pencuri pada bangunan komersial.
Menggunakan beberapa jenis sensor, termasuk sensor gerak, sensor pada pintu dan jendela
Sistem mendeteksi ketika jendela telah dirusak dan sensor pintu yang mendeteksi pintu koridor yang membuka.
Sistem secara otomatis melakukan panggilan polisi setempat menggunakan synthesizer suara,
Study Case: Sistem Pengamanan Gedung(lanj)
Menghidupkan lampu di kamar sekitar sensor aktif Sistem juga mendeteksi ketika listrik drop
(memungkinkan sistem alarm mati), sistem sensor didukung oleh listrik tetapi dilengkapi dengan
baterai cadangan
Daya yang hilang terdeteksi menggunakan daya yang terpisah
Sensor & Aksi Sistem
Sensor
Detektor gerakan, sensor jendela, sensor pintu:
50 sensor jendela, 30 sensor pintu dan 200 gerakan detektor
Sensor drop tegangan.
Aksi
Ketika penyusup terdeteksi, polisi dipanggil secara
otomatis
Lampu dinyalakan di kamar dengan sensor aktif
Alarm terdengar aktif
The R-T system design process
1. Mengidentifikasi stimuli dan respon terkait
2. Menentukan batasan waktu terkait dengan stimuli & respon
3. Mengalokasikan fungsi sistem pada proses yang konkuren
4. Design algoritma untuk pengolahan stimuli dan respon
5. Desain sistem penjadwalan yang menjamin bahwa proses akan selalu dijadwalkan untuk bertemu
Mengidentifikasi stimuli & respon
1. Alarm Penyusup Stimuli-> sistem sensor
Respon-> pemanggilan polisi, menyalakan lampu dan membunyikan alarm
2. Listrik Drop
Stimuli->listrik drop,
Respon->sistem beralih ke daya cadangan dalam batas waktu 50 ms
Menentukan batasan waktu terkait dengan stimuli & respon
Stimulus/Response Timing Requirement
Interupsi Listrik Mati Beralih ke listrik cadangan harus diselesaikan dalam batas waktu 50 ms
Alarm Pintu Setiap alarm pintu harus disurvey tiap 2x perdetik Alarm Jendela Setiap alarm jendela harus disurvey tiap 2x per detik Detektor Gerak Setiap detektor gerak harus disurvey tiap 2x per detik
Menyalakan Alarm Alarm harus menyala ½ detik dari kejadian yang terdeteksi oleh sensor
Lampu Lampu harus diaktifkan dalam ½ detik dari alarm yang dinyalakan oleh sensor
Komunikasi Menghubungi polisi harus dimulai dalam waktu 2 detik setelah alarm menyala
Mengalokasikan fungsi sistem pada
proses yang konkuren
Keterangan
periodic stimuli --- aperiodic stimuli
Ada 30 sensor pintu yang harus diperiksa dua kali per detik. Ini berarti bahwa proses sensor pintu terkait harus menjalankan 60 kali per detik (60 Hz)
Design algoritma untuk pengolahan
stimuli dan respon
Desain sistem penjadwalan ….
Langkah terakhir dalam proses desain adalah untuk merancang suatu sistem penjadwalan yang
menjamin proses akan selalu dijadwalkan untuk memenuhi batas waktu tersebut.
Dalam contoh ini, batas waktu tidak ketat. Proses
prioritas harus diatur sehingga semua proses sensor-memiliki prioritas yang sama.
Proses untuk menangani kegagalan daya harus proses tingkat interupsi prioritas lebih tinggi. Prioritas proses pengelolaan sistem alarm harus