Upload
buchori-sumarno
View
113
Download
0
Embed Size (px)
Citation preview
5/17/2018 Bahan MID Sistem Waktui Nyata - slidepdf.com
http://slidepdf.com/reader/full/bahan-mid-sistem-waktui-nyata 1/7
1. Sejarah dan perkembangan sistem waktu nyata
o 1949:
Pembuatan proyek Whirlwind yaitu proyek pembuatan flight
simulator untuk U.S. Navy yang termasuk sistem waktu-nyata
dan dikembangkan oleh IBM
Mulai digunakan bahasa tingkat tinggi untuk aplikasi waktu-
nyata yang disebut bahasa “algebraic compiler” yang disusuldengan penggunaan bahasa FORTRAN, CMS-2, dan JOVIALyang banyak digunakan pada U.S. Army, Navy, dan Air Force
o 1950:
Angkatan udara USA mengembangkan sistem pertahanan udara
SAGE (Semiautomatic Ground Environment)Brown dan
Campbell membuat proposal tentang penggunaan komputer
dalam sistem waktu-nyata sebagai bagian dari sistem kendali
o 1954:
Komputer digital Digitrac digunakan pada sistem automaticflight dan sistem kendali persenjataan
o 1959:
Pembuatan proyek pemesanan tiket pesawat terbang (SABRE)
untuk American Airlines
Penerapan sistem waktu-nyata pada sistem kendali pesawat
ruang angkasa dan telemetrio 1960:
Sistem waktu-nyata mulai diterapkan pada sistem non militer
o 1965:
Diperkirakan telah ada lebih dari 350 sistem kendali waktu
nyatao 1960 - 1970:
Perkembangan dalam proses integrasi dan semakin cepat waktu
pemrosesan mengakibatkan semakin banyak permasalahansistem waktu-nyata yang dapat dipecahkan.
o 1970:
Mulai diinginkan adanya satu bahasa yang dapat digunakanuntuk berbagai keperluan sistem waktu-nyata
o 1980 - 1990:
Setelah melalui proses pemilihan bahasa, akhirnya disepakati
penggunaan bahasa Ada sebagai bahasa sistem waktu-nyata
Meskipun bahasa Ada telah banyak digunakan pada sistem
waktu-nyata, tetapi bahasa asembly dan FORTRAN masihtetap digunakan
Bahasa Pascal, BASIC, Modula-2, dan C banyak digunakanpada sistem waktu-nyata komersial
Mulai dilakukan penelitian untuk memperbaiki kehandalan
sistem waktu-nyata.
Sistem multiprosesing dan arsitektur von Neumann mulai
digunakan pada aplikasi sistem waktu-nyata.
5/17/2018 Bahan MID Sistem Waktui Nyata - slidepdf.com
http://slidepdf.com/reader/full/bahan-mid-sistem-waktui-nyata 2/7
2. Definisi sistem waktu nyata
Sistem waktu nyata dapat di definisikan sebagai sistem yang harus menghasilkan
respon yang tepat dalam batas waktu yang telah ditentukan. Jika respon komputer
melewati batas waktu tersebut, maka terjadi degradasi performansi atau kegagalan
sistem. Beberapa sumber lain mendefinisikan sistem waktu nyata sebagai berikut :
- Menurut definisi Kamus komputer Oxford : Setiap sistem yang waktu terjadinyaoutput sangat signifikan. Jarak antara waktu input terhadap waktu terjadinya output
harus sangat kecil terhadap waktu yang diperbolehkan.
- Menurut Cooling pada buku Software Design for Real Time Systems (1991): Sistem
Waktu Nyata adalah sistem yang harus memproduksi respon yang tepat dalam suatu
batasan waktu yang tertentu. Komputer yang responnya melebihi batasan waktu ini
akan memberikan performansi yang terdegradasi atau malfunction.Sebuah sistem
waktu nyata membaca input dari plant dan mengirim sinyal kontrol ke plant pada
waktu-waktu yang ditentukan oleh pertimbangan operasional dari plant bukan oleh
sistem computer.
- Menurut Bennet : Sebuah program yang ketepatan operasinya tergantung pada hasil
logika komputasi dan waktu suatu hasil diproduksi.Sehingga, secara kasar dapat kita
ambil kesimpulan bahwa sistem waktu nyata adalah sebuah sistem yang memiliki
deadline / jangka waktu penyelesaian tertentu, namun tetap mengutamakan ketepatan
dan performa yang tinggi dalam prosesnya.Sebuah sistem waktu nyata adalah sistem
yang kebenarannya secara logis didasarkan pada kebenaran hasil-hasil keluaran
sistem dan ketepatan waktu hasil-hasil tersebut dikeluarkan. Aplikasi penggunaan
sistem seperti ini adalah untuk memantau dan mengontrol peralatan seperti motor,
assembly line, teleskop, atau instrumen lainnya. Peralatan telekomunikasi dan
jaringan komputer biasanya juga membutuhkan pengendalian secara Real-time.
3. Istilah-istilah dalam sistem waktu nyataDeadline-batas waktu, Task adalah kumpulan job yang berkaitan yang menyediakan
fungsi-fungsi sistem, Hard Real-Time Sistem Waktu Nyata yang harus memenuhi
target waktu pada setiap kesempatan, Soft Real-TimeSistem Waktu Nyata yang tidak
harus memenuhi target waktu tetapi harus memenuhi suatu nilai. Event-Based Task
Sistem yang beraksi karena respon terhadap suatu kejadian (event).
4. Contoh-contoh aplikasi sistem waktu nyata
• Proses pengambilan uang pada ATM
• Proses login atau pendaftaran online
• Proses pengenalan sidik jari pada absensi
• Proses perekaman suara• Sistem pendeteksian dan alarm
• Sistem pengiriman data transmisi (TV, Telepon)
• Proses isi ulang pulsa.
5/17/2018 Bahan MID Sistem Waktui Nyata - slidepdf.com
http://slidepdf.com/reader/full/bahan-mid-sistem-waktui-nyata 3/7
5. Klasifikasi Sistem Waktu nyata berdasarkan sinkronisasi antar proses ekternal
dengan task internal.
Clock-based Task(bedasarkan waktu)
Sistem Waktu Nyata yang diukur berdasarkan konstanta waktu yaitu waktu yang
diambil dari respon suatu plant terhadap perubahan input atau beban.Konstanta waktubisa diukur dalam satuan jam untuk proses kimia atau detik untuk sistempenerbangan.Semakin kecil konstanta waktu maka sampling rate semakin kecil.
Sinkronisasi diperoleh dengan menambahkan clock pada sistem komputer yang
dikenal dengan real-time clock. Sinyal clock ini digunakan untuk menginterrupt
operasi komputer pada waktu-waktu yang telah ditetapkan (Clock-interrupt)
Event-Based Task(Berdasarkan Kejadian)
Sistem yang beraksi karena respon terhadap suatu kejadian (event). Contoh menutup
katup pada saat permukaan air sudah mengenai batas penuh.Digunakan interrupt
untuk memberitahukan komputer aksi yang diperlukan atau bisa juga mempergunakan
pooling (komputer menanyakan (polls) pada sensor apakah perlu dilakukan aksi).
Interactive Systems(waktu ditentukan tetapi bekerja bedasarkan inputan user)
Sistem waktu nyata yang terjadi karena adanya suatu kejadian dan waktu rata-rata dari
respon kejadian ini tidak boleh melebihi waktu yang ditetapkan. Jadi merupakangabungan antara clock-based dan event-based hanya bedanya waktu respon setiap
kejadian tidak selalu sama.
Misal pengambilan uang di ATM.
6. Klasifikasi sistem waktu nyata berdasarkan time Constraint
1. Hard Real-Time
Sistem Waktu Nyata yang harus memenuhi target waktu pada setiap Kesempatan
Contoh : Pengontrolan Temperatur blower.
2. Soft Real-Time
Sistem Waktu Nyata yang tidak harus memenuhi target waktu tetapi harus memenuhi
suatu nilai ketepatan yang diambil dari nilai rata-rata.
Contoh : Pengambilan uang di ATM .
Firm real-time:
Sistem yang mempunyai deadline ketat, tetapi kegagalan sebagian kecil deadline yang
telah ditentukan masih dapat ditoleransi
7. Kriteria sistem waktu nyata•
Batasan waktu (time Constraint), artinya bahwa aplikasi harus menyelesaikantugasnya dalam waktu yang telah dibatasi atau ditentukan.Setiap sistem dengan waktu
nyata memiliki batasan waktu berupa waktu maksimum proses (akuisisi, transmisi, perekaman, perhitungan) dan standar waktu (waktu yang sama dengan waktu sehari-
hari).
Respon waktu dan Saturation Limit
Sistem Waktu nyata jika dipergunakan untuk mengontrol alat perlumempertimbangkan kecepatan dari respon alat dan batas saturasi dari alat tersebut .
5/17/2018 Bahan MID Sistem Waktui Nyata - slidepdf.com
http://slidepdf.com/reader/full/bahan-mid-sistem-waktui-nyata 4/7
8. Karateristik sistem waktu nyata
Menurut Morgan [MORG92], terdapat sekurangnya lima karakteristik dari sebuah
sistem waktu nyata
• Deterministik, dapat ditebak berapa waktu yang dipergunakan untuk mengeksekusi
operasi.
• Responsif , kapan secara pasti eksekusi dimulai serta diakhiri.
• Kendali pengguna, dengan menyediakan pilihan lebih banyak dari pada sistem
operasi biasa.
• Kehandalan, sehingga dapat menanggulangi masalah-masalah pengecualian dengan
derajat tertentu.
• Penanganan kegagalan, agar sistem tidak langsung crash.
9. Multitasking
Multitasking adalah istilah teknologi informasi dalam bahasa Inggris yang
mengacu kepada sebuah metode dimana banyak pekerjaan atau dikenal juga sebagai
proses diolah dengan menggunakan sumberdaya CPU yang sama. Dalam kasus
sebuah komputer dengan prosesor tunggal, hanya satu instruksi yang dapat bekerja
dalam satu waktu, berarti bahwa CPU tersebut secara aktif mengolah instruksi untuk
satu pekerjaan tersebut.
Multitasking memecahkan masalah ini dengan menjadwalkan pekerjaan mana
yang dapat berjalan dalam satu waktu, dan kapan pekerjaan yang lain menunggu
untuk diolah dapat dikerjakan. Kondisi mengalokasikan CPU dari pekerjaan satu ke
pekerjaan yang lain disebut context switch.
Ketika context switch terjadi dengan sangat cepat -- kondisi ini cukup untuk
memberikan solusi pengolahan-paralel. Bahkan dalam komputer yang memiliki lebih
dari satu CPU (disebut multi-prosesor), Multitasking memperbolehkan lebih banyak
pekerjaan dijalankan dibanding dengan jumlah CPU yang tersedia.
Multitasking dalam sistem waktu nyata
Dalam Sistem Real-Time, pada CPU misalnya, pemrograman Multitasking
dapat dilakukan menggunakan pemrograman High Level-language, sehingga strategi
penjadwalan dapat diatur dengan mempertimbangkan juga fitur-fitur yang terdapat
pada CPU tersebut (aplkasi dan hardware).
5/17/2018 Bahan MID Sistem Waktui Nyata - slidepdf.com
http://slidepdf.com/reader/full/bahan-mid-sistem-waktui-nyata 5/7
Multitasking disebut juga Concurrent Processing (pemorsesan berbarengan)
dimana multitasking menjalankan proses berbeda dilakukan pada satu unit
CPU, sedangkan jika melakukan beberapa proses berbeda menggunakan beberapa
CPU disebut pengolahan Paralel.
10. Loop Multitasking
Real-Time System mungkin hanya menggunakan fungsi loop terus-menerus untuk
melaksanakan semua kegiatan yang diperlukan.Namun,kendali sistem Real-Time
tidak dikendalikan secara penuh.Selain itu, banyak waktu yang dihabiskan prosesor
dalam status-flag yang sia-sia, kadang-kadang disebut 'skip-polling'.
Masalah yang lebih signifikan timbul karena perulangan siklik sederhana prosedur
tidak dapat memberikan waktu yang tepat ketika dibutuhkan untuk penjadwalan
kegiatan secara berkala.Solusi untuk masalah respons time tersebut adalah mengikat
setiap respons critical task langsung ke perangkat berbasis Interrupt,dengan
cara menggunakan interrupt-hardware untuk memprioritaskan jadwal pre-
emptively sebuah task.
Penjadwalan yang berbasis hardware dapat bekerja dengan baik untuk aplikasi yang
sangat kecil, tetapi agak tidak fleksibel, tidak terintegrasi dengan pengaturan prioritas
tugas yang lebih luas, dan akan memunculkan beberapa masalah yang agak sulit.Pada
umumnya, tak ada tingkat interrupt yang tepat, aplikasi tersebut terikat pada hardware
tertentu, prioritas yang bervariasi pada Interrupt Service Routine (ISR) hampir
mustahil, dan debugging aplikasi secara penuh menjadi lebih dan lebih sulit.
11. Task Timing
Task Terkendali-Event (Reaktif);
bereaksi terhadap event eksternal yang umumnya aperiodik (sporadis).• Periodik - tasks tiba pada interval yang tetap, disebut periode.berhenti berikut
langsung lanjut berikut.• Aperiodik (Sporadis) - tasks mungkin tiba pada saat setelah interval
minimum.tidak diketahui kapan proses berakhir,proses berjalan terus sampaiselesai.
Task Terkendali-Waktu; dikendalikan oleh periode waktu; umumnya task periodik.
• Task periodik τi= { Ji,1, Ji,2, ... , Ji,n } adalah deretan job dengan paremeteridentik:Periode ( pi atau Ti ) sama dengan panjang minimum waktu antara
waktu pelepasan jobs berikutnya,Waktu eksekusi ( ei atau Ci ) sama dengan
maksimum waktu eksekusi job dalam tas, dan Fase ( φi ) sama dengan waktu
pelepasan dari job pertama dalam τi.
5/17/2018 Bahan MID Sistem Waktui Nyata - slidepdf.com
http://slidepdf.com/reader/full/bahan-mid-sistem-waktui-nyata 6/7
12. Task Terkendali interupsi
Interupsi perangkat keras, adalah metode yang digunakan oleh perangkat keras untuk
memperoleh perhatian dari CPU.
Penjadwal (Scheduler)
Penjadwal mengirim job ke prosesor.
Jadwal adalah pengalokasian seluruh job dalam sistem pada seluruh prosesor yangtersedia (dihasilkan oleh penjadwal).
Waktu eksekusi (atau run-time) job adalah banyaknya waktu yang dibutuhkan
untuk menyelesaikan eksekusi job setelah job dijadwalkan( ei atau Ci ).
Batasan waktu yang disyaratkan pada perilaku waktu job disebut timing
constraint.
Penjadwal bekerja dengan benar; misal, hanya menghasilkan jadwal yang berlaku
yang memenuhi kondisi sebagai berikut:
Setiap prosesor umumnya menangani satu job,
Setiap job umumnya ditujukan untuk satu prosesor,
Tidak ada job yang dijadwalkan sebelum waktu pelepasannya, dan Dab semua konstrain pendahulu dan penggunaan sumberdayanya terpenuhi.
Jadwal valid adalah jadwal fisibel jika setiap job memenuhi konstrain waktunya;
misal, menyelesaikan eksekusi dalam deadline.
Kumpulan job adalah schedulable berdasarkan algoritma penjadwalan jika (ketika)
menggunakan algoritma (penjadwal) selalu menghasilkan penjadwalan fisibel.
Lateness dari job adalah perbedaan antara waktu selesai dan deadlinenya. Jika job
selesai lebih awal, latenessnya neatif.
13. Task swapping
Menambah pekerjaan lebih maksimal
Penjadwalan ulang sehingga tidak terjadi benturan proses
14. Resource Sharing
Berbagi sumber daya
Sistem real time system menitiberatkan ketepatan waktu dalam memproses setiaprespon dari pengguna. Dan setiap proses tersebut pasti memiliki kesamaan sumber
daya. Untuk itulah diperlukan sebuah kegiatan berbagi resource bersama yang lebihkenal dengan istilah resource sharing. Dalam resource sharing memungkin dua buah
proses atau lebih dapat menggunakan data atau perangkat keras (hardware) secarasimultan. Sedangkan, di jaringan memungkinkan dua buah komputer atau lebih dapat
menggunakan data atau perangkat keras (hardware) dalam sebuah jaringan kerjakomputer. Namun, sistem operasi yang khususnya sistem waktu nyata untuk dapat
melakukan resource sharing terdapat beberapa cara. Cara tersebut sebagai berikut
▪ Menonaktifkan Interupsi
Tujuan umum sistem operasi tidak mengizinkan program pengguna untuk mematikan
fitur interupsi, karna program pengguna bisa mengontrol CPU selama yang
diinginkan oleh program tersebut. CPU moderen sekarang tidak memungkinkan kode
mode pengguna untuk mematikan interupt. Kontrol tersebut dianggap sebagai
kewenangan dari sistem operasi. Namun, system waktu nyata dan sistem tertanam
memungkinkan aplikasi itu sendiri untuk berjalan dalam kernel untuk sistem call. Dan
5/17/2018 Bahan MID Sistem Waktui Nyata - slidepdf.com
http://slidepdf.com/reader/full/bahan-mid-sistem-waktui-nyata 7/7
juga memungkinkan aplikasi untuk memiliki kontrol yang lebih besar tanpa
memerlukan intervensi system operasi.
• Semaphore Binary
Dalam kehidupan nyata, semafor adalah sistem sinyal yang digunakan untuk
berkomunikasi secara visual. Dalam software, semafor adalah sebuah variabel bertipe
integer yang selain saat inisialisasi, hanya dapat diakses melalui dua operasi standar,
yaitu increment dan decrement. Semafor digunakan untuk menyelesaikan masalahsinkronisasi secara umum. Berdasarkan jenisnya, semafor hanya bisa memiliki nilai 1
atau 0, atau lebih dari sama dengan 0. Konsep semafor pertama kali diajukan idenyaoleh Edsger Dijkstra pada tahun 1967. Operasi standar pada semafor (dalam bahasa
pemrograman C). Nama asli dari operasi tersebut sebenarnya adalah Proberen(test) dan Verhogen (increment).. Fungsi wait dipanggil ketika thread akan
memasuki critical section-nya atau ketika threadakan memakai resource yang tersedia.Jika sem_value kurang dari sama dengan 0, threadtersebut harus menunggu
sampai thread lain memanggil fungsi buka.
Fungsi buka dipanggil ketika thread meningggalkan critical section-nya atau ketika
melepaskan resource yang telah digunakannya. Tentu saja kedua operasi tersebut
harus bersifat atomik karena sem_value dapat diakses oleh beberapa proses (shared
resource). Semafor memiliki dua jenis, yaitu:1. Binary semaphore . Semafor ini hanya memiliki nilai 1 atau 0. Sering juga disebut
sebagai semafor primitif
2. Counting semaphore . Semafor ini memiliki nilai 0, 1, serta integer lainnya.
Banyak sistem operasi yang tidak secara langsung mengimplementasikan semafor ini,
tetapi dengan memanfaatkan binary semaphore.
15. Contoh+deskripsi sistem waktu nyata
16. Jaring Petri
Jaringan petri adalah salah satu metoda pemodelan yang dapat diaplikasikan dalam
berbagai jenis sistem.Sebagai model grafik jaringan petri dapat dipandang sebagai modelvisual unggul karena adanya token yang bergerak yang mengartikan adanya proses dinamik
dari suatu sistem dibandingkan dengan model lainnya yang telah tersedia seperti flowchart,diagram blok atau topologi jaringan.
Fly-by-wire
Fly-by-wire (FBW, Indonesia: terbang dengan kabel) adalah sistem yang menggantikan pengendalian
penerbangan manual sebuah pesawat dengan antarmuka elektronik. Pergerakan dari pengendalian
penerbangan dikonversi ke sinyal-sinyal elektronis dan ditransmisi menggunakan kabel (merujuk pada istilah fly-by-wire), dan komputer pengendali penerbangan memutuskan bagaimana
menggerakan aktuator yang ada di setiap permukaan kendali untuk memberi respon yang diinginkanpilot. Sistem terbang-dnegan-kabel juga menyediakan sinyal otomatis yang dikirim dari komputerpesawat untuk melakukan fungsi-fungsi tanpa adanya input dari pilot, yang mana sistem secara
otomatis menstabilkan pesawat.