Sistem waktu nyata adalah sistem yang harus memberikan respon tepat dalam batasan waktu tertentu, dengan jarak waktu antara input dan output yang sangat kecil. Sistem ini digunakan dalam berbagai aplikasi seperti ATM, pesawat terbang, dan alat medis. Terdapat berbagai jenis sistem waktu nyata berdasarkan toleransi terhadap melewatinya deadline.
2. Definisi
Sistem Waktu Nyata adalah sistem yang harus memproduksi respon
yang tepat dalam suatu batasan waktu yang tentu.
(Cooling, Software Design for Real Time Systems (1991))
Setiap sistem yang waktu terjadinya output sangat signifikan. Jarak
antara waktu input terhadap waktu terjadinya output harus sangat
kecil terhadap waktu yang diperbolehkan.
(Kamus Komputer Oxford)
Sistem waktu nyata adalah kondisi pengoperasian dari suatu
sistem perangkat keras dan perangkat lunak yang dibatasi oleh
rentang waktu dan memiliki tenggat waktu (deadline) yang
jelas.
6. Real-Time and Embedded
Systems
Sistem waktu nyata (SWN) harus memberikan pelayanan
berbasiskan waktu
Tidak harus cepat, tetapi dengan deadline (batasan waktu tertentu)
Sistem embedded (tertanam) tersembunyi dari sudut
pandang sistem yang lebih besar
Banyak SWN dan embedded ada, kadang tanpa disadari oleh
penggunanya
Washing machine, photocopier, mobile phone, car, aircraft, industrial
plant, microwave oven, toothbrush, CD player, medical devices, etc.
Harus dapat divalidasi ketepatan (correctness) dari SWN
Beberapa SWN embedded harus aman digunakan – contoh: jika tidak
dapat memenuhi deadline, maka konsekuensi serius harus
ditanggung
Bugs dalam SWN embedded umumnya sulit atau mahal untuk
diperbaiki
7. Hard Real-time System & Soft
Real-time System
Keras (Hard): 100% deterministik (waktu selesainya
operasi bisa pasti ditentukan tanpa gagal). Jika
seandainya terlewat satu “garis waktu" (deadline)
pun, berarti sistem dianggap rusak dan gagal total.
Contohnya, sistem pengendalian mesin mobil dan
pesawat, di mana signal elektronik yang
memerintahi pembakaran bahan bakar mesti
dilaksanakan pada titik waktu yang tepat (karena,
kalau tidak, akan menyebabkan malapetaka)
8. Hard Real-time System & Soft
Real-time System
Ketat (Firm): Sistem akan masih bertahan, namun
hanya apabila belum terlewatkan batas waktu.
Hasil komputasi tidak berguna selepas terlewatnya
deadline. Contohnya, sistem jaringan telepon.
Layanan telepon bisa terus berjalan, jika hanya
jarang terjadi signal telepon yang gagal mencapai
tujuan. Sementara, hanya signal telepon yang tepat
waktu yang bisa diterima sistem.
9. Hard Real-time System & Soft
Real-time System
Lunak (Soft): Sistem terus bertahan seberapa kalipun
terlewatnya deadline. Apabila ada terlewat batas waktu, hasil
komputasi menjadi kurang berguna dan mutu layanan sistem
memburuk. Contohnya, aplikasi pemutar video dan musik
yang sedang memainkan lagu dari CD-ROM. Jika CD-ROM-nya
tiba-tiba dibutuhkan aplikasi lain untuk membaca data dan
membuat CD-ROM terlalu sibuk, maka aplikasi pemutar
tersebut mesti menunggu data dari CD-ROM dan tidak lagi
mampu memainkan video dan musik seiring dengan waktu
nyata, dan video dan musiknya terpaksa hanya bisa diputar
lebih pelan.
10. Tugas yang melewati Deadline
Firm RTS, Dihentikan
secara bertahap
Hard RTS, Dihentikan
secara langsung
Soft RTS, Dihentikan
secara bertahap
11. Sistem Waktu Nyata terdistribusi, termasuk jaringan
komunikasi
Putaran kontrol mungkin menyertakan langkah komunikasi
Sistem mungkin tergantung pada jaringan
Sistem tidak hanya memerlukan pelaksanaan aturan
kontrol dengan keterbatasan waktu (time constraints),
tetapi juga harus menjadualkan komunikasi, mengirim
dan menerima pesan berdasarkan deadline
Komunikasi Waktu-Nyata
13. Semua data harus diberikan secara reliable
Buruk jika kemudi dibelokkan, tetapi tidak terjadi sesuatu
Perintah dari sistem kontrol memiliki prioritas tertinggi,
kemudian sensor dan
aktuator, kemudian input kontrol
Anti-lock brakes memiliki waktu respons lebih tinggi
dibandingkan pengemudi,
pengaturan prioritas untuk memastikan agar mobil tidak
mengalami slip
Jaringan harus menjadual dan memprioritaskan komunikasi
14. Analogi mobil-pengemudi
• Misi
• Mengukur
performa
• berangkat ke tujuan tanpa harus
bertabrakan dengan kendaraan lain
atau obyek statis dan menjaga
kecepatannya dalam batas
kewajaran
• Apakah ia mencapai tujuan?
Kondisi jalan raya
15. Komputasi Waktu-Nyata
• Masalah jadwal penugasan
• Tujuan umum dari jadwal penugasan adalah
keadilan/kemerataan
Round-Robin
Murni
Setiap proses terasosiasi dengan
potongan-waktu (time-slice)
Tidak Bekerja
dalam Sistem
Waktu-Nyata
Setiap tugas memiliki tingkatan
prioritas yang berbeda-beda
16. Pengkelasan Tugas
• Berdasar pada kemungkinan kedatangan tugas
dan akibat apabila mereka tidak dieksekusi tepat
waktu.
Periodik &
Aperiodik
Periodik : tugas yang
berulang-ulang
dilakukan
Aperiodik :
sekumpulan tugas
yang dilakukan saat
tertentu
Kritis & Non-
Kritis
Kritis :
menimbulkan
malapetaka
Non-Kritis : tidak
yang menimbulkan
malapetaka
17. Permasalahan Lain
Software Engineering
• Arsitektur Sistem
• Arsitektur Jaringan
• Toleransi-Kesalahan & Evaluasi Kehandalan
Sistem Operasi
• Tugas dan Penjadwalan
• Protokol Komunikasi
• Manajemen Kesalahan dan recovery
• Sinkronisasi Waktu, dll.