Realtime System
BAB II
LANDASAN TEORI
A.
REALTIME
SYSTEM
Pada awalnya, istilah real time
digunakan dalam simulasi. Istilah real time memang lebih cenderung dipakai untuk
mensimulasikan atau menggambarkan tentang waktu yang dibutuhkan suatu proses
yang dijalankan di dunia maya dan dalam komputer yang disamakan dengan waktu
nyata yang terpakai.
Sebuah sistem dikatakan real-time
jika total kebenaran dari suatu operasi tidak hanya bergantung pada kebenaran
yang logis, tetapi juga pada waktu di mana operasi itu dilakukan. Konsepsi
klasik adalah bahwa dalam sebuah hard real-time atau langsung sistem real-time,
penyelesaian operasi setelah tenggat waktu dianggap tidak berguna - pada
akhirnya, hal ini dapat menyebabkan kegagalan kritis sistem lengkap. Soft
sistem real-time di sisi lain akan mentoleransi keterlambatan tersebut, dan
dapat merespons dengan penurunan kualitas layanan (misalnya, dengan
menghilangkan frame sementara menampilkan video).
Istilah real-time itu sendiri berasal
dari penggunaannya pada awal simulasi. Sementara penggunaan saat ini mengisyaratkan bahwa
sebuah perhitungan yang 'cepat' adalah real-time, awalnya merujuk pada sebuah
simulasi yang berjalan pada tingkat yang cocok bahwa proses yang sebenarnya itu
simulasi. Analog komputer, khususnya, seringkali mampu
mensimulasikan lebih cepat daripada waktu-nyata, situasi yang bisa saja
berbahaya seperti simulasi lambat jika tidak juga diakui dan diperhitungkan.
Menurut definisi Kamus computer, real
time system atau sistem waktu nyata adalah setiap sistem yang waktu terjadinya
output 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 memprodukis respon yang tepat dalam suatu batasan waktu yang tentu.
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: real time sistem berarti sebuah
program yang ketepatan operasinya tergantung pada hasil logika komputasi dan
waktu suatu hasil diproduksi.
BAB III
PEMBAHASAN
A.
KONSEP DASAR REAL TIME SYSTEM
Pada awalnya, istilah real time
digunakan dalam simulasi. Memang sekarang lazim dimengerti bahwa real time
adalah "cepat", namun sebenarnya yang dimaksud adalah simulasi yang
bisa menyamai dengan proses sebenarnya (di dunia nyata) yang sedang
disimulasikan.
Suatu sistem dikatakan real time
jika dia tidak hanya mengutamakan ketepatan pelaksanaan instruksi/tugas, tapi
juga interval waktu tugas tersebut dilakukan. Dengan kata lain, sistem real
time adalah sistem yang menggunakan deadline, yaitu pekerjaan harus selesai
jangka waktu tertentu. Sementara itu, sistem yang tidak real time adalah sistem
dimana tidak ada deadline, walaupun tentunya respons yang cepat atau performa
yang tinggi tetap diharapkan.
Pada sistem waktu nyata,
digunakan batasan waktu. Sistem dinyatakan gagal jika melewati batasan yang
ada. Misal pada sistem perakitan mobil yang dibantu oleh robot. Tentulah tidak
ada gunanya memerintahkan robot untuk berhenti, jika robot sudah menabrak
mobil.
Sistem waktu nyata banyak
digunakan dalam bermacam-macam aplikasi. Sistem waktu nyata tersebut ditanam di
dalam alat khusus seperti di kamera, mp3 players, serta di pesawat dan mobil.
Sistem waktu nyata bisa dijumpai pada tugas-tugas yang mission critical, misal
sistem untuk sistem pengendali reaktor nuklir atau sistem pengendali rem mobil.
Juga sering dijumpai pada peralatan medis, peralatan pabrik, peralatan untuk
riset ilmiah, dan sebagainya.
Hard Real Time System menjamin bahwa proses waktu nyata dapat
diselesaikan dalam batas waktu yang telah ditentukan. Contoh : sistem
safety-critical. Beberapa sistem waktu nyata diidentifikasi sebagai sistem
safety-critical, dalam scenario ini sistem waktu nyata harus merespon kejadian
dalam batas waktu yang telah ditentukan maka akn terjadi bencana. Sistem
manajemen penerbangan merupakan sebuah contoh sebuah sistem waktu nyata sebagai
sistem safety-critical.
Soft Real Time System menyediakan prioritas untuk mendahulukan proses
yang menggunakan waktu nyata dari pada proses yang tidak menggunakan waktu
nyata. Contoh : Linux. Karakteristik dari sistem waktu nyata :
·
Single purpose.
Tidak seperti PC, yang memiliki
banyak kegunaan, sebuah sistem waktu nyata biasanya hanya memiliki satu tujuan,
seperti mentransfer sebuah lagu dari komputer ke mp3 player.
·
Small size.
Kebanyakan sistem waktu nyata
banyak yang ada memiliki physical space yang terbatas.
·
Inexpensively mass-produced.
Sistem operasi waktu nyata
memenuhi persyaratan waktu yang ditentukan dengan menggunakan algoritma
penjadwalan yang memberikan prioritas kepada proses waktu nyata yang memiiki
penjadwalan prioritas tertinggi. Selanjutnya, penjadwals harus menjamin bahwa
prioritas dari proses waktu nyata tidak lebih dari batas waktu yang ditentukan.
Kedua, teknik untuk persyaratan waktu penagmalatan adalah dengan meminimalkan
response time dari sebuah events seperti interupsi.
Sistem operasi waktu nyata tidak
membutuhkan fitur penting (misalnya standar desktop dan sistem server pada
desktop PC) karena :
·
Kebanyakan sistem waktu nyata hanya melayani satu tujuan
saja, sehingga tidak membutuhkan banyak fitur seperti pada desktop PC.
Lagipula, sistem waktu nyata tertentu juga tidak memasukkan notion pada
pengguna karena sistem hanya mendukung sejumlah kecil proses saja, yang sering
menunggu masukkan dari peralatan perangkat keras.
·
Keterbatasan space, menyebabkan sistem waktu nyata tidak
dapat mendukung fitur standar desktop dan sistem server yang membutuhkan memori
yang lebih banyak dan prosesor yang cepat.
·
Jika sistem waktu mendukung fitur yang biasa terdapat
pada standar desktop dan sistem server, maka akan sangat meningkatkan biaya
dari sistem waktu nyata.
B.
KLASIFIKASI REAL TIME SYSTEM
Suatu ciri sistem waktu nyata
adalah komputer yang terhubung dengan lingkungan melalui peralatan interfacing
yang banyak dan computer menerima dan mengirim bervariasi sinyal..
Contoh 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 .
·
Sistem Waktu Nyata diklasifikasikan menjadi:
·
Clock-based Task (Cyclic, periodic) .
·
Event-based Task (aperiodic) .
·
Interactive Systems .
·
Clock-based Task
Sistem Waktu Nyata yang diukur berdasarkan
konstanta waktu, yaitu waktu yang diambil dari respon suatu plant terhadap
perubahan input atau beban. Konstanta waktu bisa diukur dalam satuan jam untuk
proses kimia atau detik untuk sistem penerbangan. Semakin kecil konstanta waktu
maka sampling rate semakin kecil. Sinkronisasi diperoleh dengan menambahkan
clock pada sistem computer 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
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
Sistem waktu nyata yang terjadi karena adanya
suatu kejadian dan waktu rata-rata dari respon kejadian ini tidak boleh
melebihi waktu yang ditetapkan. Jadi merupakan gabungan antara clock-based dan
event-based hanya bedanya waktu respon setiap kejadian tidak selalu sama. Misal,
pengambilan uang di ATM..
·
Batasan Waktu
(Time Constraints).
Sistem Waktu Nyata dapat dibedakan berdasarkan
Batasan waktu:.
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
.
·
Kriteria Sistem
Waktu Nyata.
Terdapat dua kriteria yang harus dipenuhi oleh
sistem waktu nyata yaitu:.
1.
Batasan Waktu (time constraint)
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) .
2.
Respon waktu dan Saturation Limit
Sistem Waktu nyata jika
dipergunakan untuk mengontrol alat perlu mempertimbangkan kecepatan dari respon
alat dan batas saturasi dari alat tersebut .
C.
KOMPUTASI
REAL TIME
Berdasarkan batasan waktu yang
dimilikinya, Real Time System ini
dibagi atas:
1. Hard Real time
3. Soft Real time
4. Firm Real time
Berdasarkan response time dan
dampaknya, maka komputasi real-time dapat dibedakan menjadi :
1.
Sistem Hard Real-Time (
HRTS )
Sistem hard real-time dibutuhkan
untuk menyelesaikan critical task dengan jaminan waktu tertentu. Jika kebutuhan
waktu tidak terpenuhi, maka aplikasi akan gagal. Dalam definisi lain disebutkan
bahwa kontrol sistem hard real-time dapat mentoleransi keterlambatan tidak
lebih dari 100 mikro detik.Secara umum, sebuah proses di kirim dengan sebuah
pernyataan jumlah waktu dimana dibutuhkan untuk menyelesaikan atau menjalankan
I/O. Kemudian penjadwal dapat menjamin proses untuk selesai atau menolak
permintaan
karena tidak mungkin dilakukan.
Mekanisme ini dikenal dengan resource reservation. Oleh karena itu setiap
operasi harus dijamin dengan waktu maksimum. Pemberian jaminan seperti ini
tidak dapat dilakukan dalam sistem dengan secondary storage atau virtual
memory, karena sistem seperti ini tidak dapat meramalkan waktu yang dibutuhkan
untuk mengeksekusi suatu proses.
Contoh dalam kehidupan
sehari-hari adalah pada sistem pengontrol pesawat terbang. Dalam hal ini,
keterlambatan sama sekali tidak boleh terjadi,karena dapat berakibat tidak
terkontrolnya pesawat terbang. Nyawa penumpang yang ada dalam pesawat
tergantung dari sistem ini, karena jika sistem pengontrol tidak dapat merespon
tepat waktu, maka dapat menyebabkan kecelakaan yang merenggut korban jiwa.
2.
Sistem Soft Real-Time (
SRTS )
Komputasi soft real-time memiliki
sedikit kelonggaran. Dalam sistem ini,proses yang kritis menerima prioritas
lebih daripada yang lain. Walaupun menambah fungsi soft real-time ke sistem
time sharing mungkin akan mengakibatkan ketidakadilan pembagian sumber daya dan
mengakibatkan delay yang lebih lama, atau mungkin menyebabkan starvation,
hasilnya adalah tujuan secara umum sistem yang dapat mendukung multimedia,
grafik berkecepatan tinggi, dan variasi tugas yang tidak dapat diterima di
lingkungan yang tidak mendukung komputasi soft real-time.
Contoh penerapan sistem ini dalam
kehidupan sehari-hari adalah pada alat penjual/pelayan otomatis. Jika mesin
yang menggunakan sistem ini telah lama digunakan, maka mesin tersebut dapat
mengalami penurunan kualitas,misalnya waktu pelayanannya menjadi lebih lambat
dibandingkan ketika masih baru. Keterlambatan pada sistem ini tidak menyebabkan
kecelakaan atau akibat fatal lainnya, melainkan hanya menyebabkan kerugian
keuangan saja. Jika pelayanan mesin menjadi lambat, maka para pengguna dapat
saja merasa tidak puas dan akhirnya dapat menurunkan pendapatan pemilik
mesin.Setelah batas waktu yang diberikan telah habis, pada sistem hard
realtime,aplikasi yang dijalankan langsung dihentikan. Akan tetapi, pada sistem
softreal-time, aplikasi yang telah habis masa waktu pengerjaan
tugasnya,dihentikan secara bertahap atau dengan kata lain masih diberikan
toleransiwaktu.Mengimplementasikan fungsi soft real-time membutuhkan design
yang hati-hati dan aspek yang berkaitan dengan sistem operasi. Pertama,sistem
harus punya prioritas penjadualan, dan proses real-time harus memiliki
prioritas tertinggi, tidak melampaui waktu, walaupun prioritas non real-time
dapat terjadi.Kedua, dispatch latency harus lebih kecil. Semakin kecil latency,
semakin cepat real-time proses mengeksekusi.Untuk menjaga dispatch tetap
rendah, kita butuh agar system call untuk preemptible. Ada beberapa cara untuk mencapai tujuan ini.
Pertama adalah
dengan memasukkan preemption points
di durasi system call yang lama, yang memeriksa apakah prioritas utama butuh
untuk dieksekusi. Jika sudah, maka contex switch mengambil alih, ketika high
priority proses selesai, proses yang diinterupsi meneruskan dengan system call.
Points premption dapat diganti hanya di lokasi yang aman di kernel dimana
kernel struktur tidak dapat dimodifikasi.
Metoda yang lain adalah dengan
membuat semua kernel preemptible.Karena operasi yang benar dapat dijamin, semua
struktur data kernel harus diproteksi dengan mekanisme sinkronisasi. Dengan
metode ini, kernel dapat selalu di preemptible, karena setiap data kernel yang
sedang di update diproteksi dengan pemberian prioritas yang tinggi. Jika ada
proses dengan prioritas tinggi ingin membaca atau memodifikasi data kernel yang
sedang dijalankan, prioritas yang tinggi harus menunggu sampai proses dengan
prioritas rendah tersebut selesai. Situasi seperti ini dikenal dengan priority
inversion. Kenyataanya, serangkaian proses dapat saja mengakses sumber daya
yang sedang dibutuhkan oleh proses yang lebih tinggi prioritasnya. Masalah ini
dapat diatasi dengan priority-inheritance protocol, yaitu semua proses yang
sedang mengakses sumber daya mendapat prioritas tinggi sampai selesai
menggunakan sumber daya. Setelah selesai, prioritas proses inidikembalikan
menjadi seperti semula.
3.
Semi Hard Real-Time
System (HRTS) atau Semi Soft Real-Time ( SRTS )
Metoda ini merupakan gabungan
antara Semi Hard Real-Time System (HRTS) atau Semi Soft Real-Time ( SRTS ).
Dengan demikian waktu deadlinenya lebih pendek jika dibandingkan dengan soft
real-time ( SRTS ).
4.
Interaktif Deadline (
Waktu Deadlinenya Bisa Ditawar )
Pada interaktif real-time, maka
waktu deadlinennya bisa ditawar, artinya tidak secara mutlak pada titik
tertentu, tetapi tergantung dari kesepakatan yang ditentukan dan fleksibel.
5.
Probabilistic / Statistik
Metode ini biasanya menggunakan
teori probabilitas / teori kemungkinan dengan metoda statistik.
6.
Intelligence RTS
Metode ini biasanya menggunakan
Expert Systems / Kecerdasan buatan / Artifial Inteligence atau Kendali Cerdas.
D.
REAL TIME SOFTWARE
Real-time software merupakan
suatu sistem software yang memiliki batasan real-time yaitu deadline dari
event. Sama seperti software pada umumnya, real-time software memiliki properti
yang sama dengan software yang non real-time. Beberapa properti yang dimiliki
oleh software diantaranya adalah:
1.
Reliability
Dalam real-time software,
reliability memiliki peranan penting karena berhubungan erat dengan
fault-tolerance. Jika terjadi kesalahan pada suatu software, maka banyaknya
kesalahan tersebut haruslah dibawah dari nilai fault-tolerance agar tujuan
pembuatan software tersebut menjadi tercapai. Biasanya, untuk mengukur
reliability ini, digunakan dua parameter, yaitu mean time to first failure (MTFF)
dan mean time between failures (MTBF).
1) Mean time to first failure (MTFF) merupakan
waktu rata-rata dari suatu produk untuk mengalami kesalahan pertama. MTFF ini
biasanya dihubungkan dengan masa garansi dari suatu produk.
2) Mean time between
failures (MTBF) merupakan waktu rata-rata antara kesalahan yang satu komponen
dari suatu produk dengan komponen yang lainnya. Suatu software yang bagus
adalah software yang memiliki MTFF tinggi dan MTBF yang tinggi. Sebagai
contoh untuk MTFF, suatu produk mmisalkan TV memiliki masa garansi 1 tahun,
sehingga bisa diperkirakan bahwa nilai dari MTFF adalah 1 tahun. Sedangkan
contoh untuk MTBF, misalkan pada suatu produk mengalami kerusakan pada salah
satu komponennya, satu bulan kemudian komponen yang lainnya juga mengalami
kerusakan, sehingga bisa diperkirakan bahwa nilai dari MTBF dari produk
tersebut adalah 1 bulan.
2.
Correctness
Pada real-time software, yang
dimaksud correctness yaitu merupakan kebenaran output dari software serta tidak
terlanggarnya deadline.
3.
Performance
Pada real-time software,
performance merupakan suatu ukuran terhadap kecepatan dan efisiensi dari suatu
software. Akan tetapi, performance in tidak menjadi hal yang utama asalkan
deadlinenya tidak terlanggar.
4.
Usability
Pada real-time software, usability
dapat diartikan sebagai tingkat kemudahan penggunaan suatu software oleh user.
5.
Interoperability
Suatu real-time software harus
bisa berjalan dengan baik diberbagai flatform atau standard. Dengan kata lain,
suatu software mampu beroperasi dengan sistem lain.
6.
Maintainability
Suatu real-time software harus
mudah untuk dimaintenance untuk perbaikan dan mengantisipasi perubahan di masa
yang akan datang.
7.
Portability
Suatu real-time software harus
bisa berjalan diberbagai lingkungan
8.
Verifiability
Pada real-time software, yang
dimaksud dengan divefikasi adalah kesesuian antara requirement desain dengn
hasil akhir dari suatu produk.
E.
APLIKASI DAN PENGGUNAAN REAL TIME SYSTEM
b.1. Aplikasi PLC Real-Time
Sebuah sistem kontrol dikatakan
real-time jika sistem kontrol tersebut mampu merespon masukan dengan tepat
secara logika dan cepat. Terkadang respon tersebut harus sedemikian cepat,
sehingga jika tidak dilakukan dalam periode waktu yang terbatas yang
dibutuhkan, maka respon tersebut dianggap gagal, dan oleh karenanya, sistem pun
dianggap gagal. Jadi, sistem kontrol yang memiliki waktu respon yang cukup
cepat sehingga mampu merespon masukan dalam periode waktu yang terbatas yang
dibutuhkan, maka sistem kontrol tersebut dapat disebut sebagai sistem kontrol
real-time. Selambat apapun respon suatu sistem, jika masih mampu memenuhi
batasan waktu respon yang dibutuhkan, tetap saja dikatakan sistem tersebut
real-time.
Contoh: Sebuah kontroler suhu
pada sebuah Curing Vessel berpemanas listrik yang digunakan dalam proses curing
(pemasakan) kompon karet, tidak memerlukan response-time yang cepat. Dalam
sistem ini, laju perubahan suhu adalah ±1,5 derajad Celcius per menit dengan
maksimum suhu yang dapat dicapai sebesar 160 derajad Celcius. Selain itu,
proses pemasakan kompon karet juga tidak termasuk proses yang kritis. Adanya
selisih suhu antara suhu aktual dan suhu target tidak banyak mempengaruhi hasil
akhir proses. Demikian juga dengan waktu proses. Adanya selisih (kurang atau
lebih) terhadap lamanya waktu proses masak juga tidak mempengaruhi hasil akhir
proses.
Untuk sistem yang sederhana ini,
kontroler suhu dengan cycle-time 10 detik pun cukup. Kontroler tidak perlu
mensampling suhu dengan frekuensi yang berlebihan karena lajunya hanya 1,5
derajad Celcius semenitnya.
Lalu bagaimana dengan aplikasi PLC,
program PLC,
sistem PLC?
Kita ambil contoh saja PLC OMRON
CPM1A atau CPM2A. Keduanya memiliki I/O Response-Time dan Cycle-Time yang
sangat cepat. Oleh karenanya setiap aplikasi sistem kontrol berbasis PLC,
dimana PLC tersebut dapat merespon setiap masukan dalam periode waktu yang
ditentukan, maka sistem kontrol berbasis PLC tersebut dapat dikategorikan
sebagai sistem kontrol real-time.
b.2. Facebook
Demam Facebook (FB) sudah
menjalar luas di masyarakat Indonesia
ketika awal 2008. Sebelumnya, situs jejaring sosial yang paling top adalah
Friendster (FS). Namun, pengguna FS cenderung adalah kaum remaja yang ketika
menjadi dewasa akan enggan (malu) menggunakannya. Ketika FB muncul, maka orang
dewasa migrasi dari FS. Namun akhir-akhir ini, tidak hanya orang dewasa saja
yang menggunakan FB, namun anak-anak mulai merambah.
Beberapa analisis yang dapat diamati
mengapa orang hijrah dari FS ke FB adalah :
·
Kecepatan Akses FS jauh lebih lambat dibanding FB.
Lambatnya membuka halaman per halaman, membuat orang yang hidup diserba cepat
akan menjadi kesal jika untuk membuka profil dan membaca pesan/message harus
menunggu lama. FB pun mulai mengalami masalah yang sama.
·
Tampilan FS lebih “narsis”, sedangkan FB lebih simpel.
Inilah mengapa orang dewasa sudah tidak sreg lagi menggunakan FS.
·
Poin terpenting dari facebook adalah aplikasi Real Time System. FB tampaknya
menggabungkan sistem FS dengan sistem real time untuk chatting. Penggabungan
ini membuat nilai ++ yang menjadi FB tiada duanya untuk saat ini. Sambil FB-an,
ketika ada message masuk, maka akan tampil notifikasi pesan tersebut.
·
FB didesain lebih cerdas “software inteligence” dimana
dapat mengrupkan kriteria-kriteria orang yang mengisi profil yang sama.
Sehingga tanpa harus mencari-cari, sistem FB akan memberi informasi siapa saja
teman lama, klien atau sejenisnya apabila kita memasukan informasi yang benar.
Fakta Kesuksesan Facebook dan
Kegagalan Friendster (dan Yahoo juga)
Berdasarkan rangking situs
teraktif di Indonesia
versi Alexa.com antara Januari 2009 dan Mei 2009, menunjukkan:
·
Facebook : #6 (Januari) menjadi #2 (Mei)
·
Yahoo : #2 (Januari) menjadi #3 (Mei)
·
Friendster : #3 (Januari) menjadi #6 (Mei)
Comments
Post a Comment
Thank You