Minggu, 18 Desember 2011

PTIunisbank-pertemuan9


9     Perkembangan Aplikasi 2

(Realtime  Systems)






Overview
 
Salah satu performansi sistem dalam hubungannya dengan pemrosesan dan komunikasi data adalah mendapatkan informasi secara cepat. Sehingga penerima informasi seolah-olah merasakan dirinya berada pada sumber data tersebut.
Salah satu layanan yang dapat memberikan dan mengirim informasi dengan cepat adalah Sistem Waktu Nyata (Realtime System) dimana waktu menjadi hal yang sangat penting dalam sistem ini.
Realtime Systems tidak terlepas dari waktu tunda (delay). Pada bab ini hanya dispesifikasikan pada waktu tunda berupa delay processing yang terjadi selama pemrosesan data, walaupun kita ketahui terdapat parameter lainnya yang mempengaruhi sistem ini terutama jika telah memasuki jaringan komunikasi diantaranya delay transmission, delay propagation dan lain-lain.
Bagaimanakah karakteristik dan implementasi sistem Realtime ini? maka akan dipaparkan dalam bab ini secara singkat.
 

Tujuan
1.     Memahami karakteristik dari sistem Realtime
2.     Memahami waktu sebagai unsur penting dalam sistem Realtime
3.     Mengetahui jenis-jenis sistem Realtime
4.     Mengetahui Implementasi dari sistem Realtime.

1.1      Sejarah dan Karakteristik Sistem Realtime

Kata Realtime pertama kali diterapkan pada penggunaan proses simulasi. Perkembangan sistem ini sangat erat kaitannya dengan sejarah dan perkembangan komputer beserta sistem operasinya. Pada tahun 1950, komputer mulai dikomersialisasikan, sistem operasi mulai berkembang dengan mengintergrasikan beberapa utilitas , aplikasi (seperti text editor dan file managers) dan configuration tools yang terintegrasi dalam sistem operasi (kernel).
Sistem Realtime mulai pertama kali dikembangkan setalah teknologi komputer memasuki generasi ke-2, sekitar tahun 1960-an dengan munculnya teknologi semikonduktor yang diimplementasikan dalam piranti Intergrated Circuit (IC). Beberapa industri pada saat itu menggunakan mesin otomatis untuk melakukan aktivitasnya, beberapa proses harus dikerjakan sesuai dengan batas waktu yang ditentukan, maka diterapkan sebuah sistem Realtime pada mesin tersebut. Sejalan dengan meningkatnya kemampuan komputer untuk memproses data, maka sistem Realtime lebih sempurna lagi.
Terlebih  dengan processor yang tertanam pada sebuah komputer generasi ke-4, maka sistem Realtime mudah diaplikasikan karena kecepatan dalam mengolah data lebih cepat , misalnya superkomputer bluegene/L (478 operasi/detik;tahun2007) dan roadrunner (1000 operasi/detik; tahun 2008) yang dikeluarkan oleh IBM.
 Realtime dapat diterjemahkan langsung ke dalam bahasa Indonesia sebagai waktu-nyata. Definisi Sistem Realtime banyak dikemukakan, salah satunya  menurut IEEE Computer Society Press : “A Realtime sytems is a system that must satisfy explicit (bounded) respone time constrain or risk severe consequence, including failure.”

Sistem Realtime identik dengan timelines yang merupakan fungsi dari waktu, berkaitan dengan data transfer rate dan throughput. Kedua parameter ini tergantung dari :
·         Waktu Service : Waktu netto yang dipergunakan untuk merespon satu masukan yang diberikan.
·         Waktu Latency : Interval antara waktu kemunculan input dengan waktu mulai diberikan service terhadap input tersebut.

Suatu sistem dinamakan Realtime jika sistem tersebut dapat mendukung eksekusi program atau aplikasi dengan waktu tertentu, atau dengan kata lain suatu sistem Realtime harus memiliki karakteristik sebagai berikut:
·         Batasan waktu, artinya bahwa aplikasi harus menyelesaikan tugasnya dalam waktu yang telah dibatasi atau ditentukan.
·         Dapat diprediksi, artinya bahwa sistem harus bereaksi terhadap semua kemungkinan kejadian selama kejadian tersebut dapat diprediksi.
·         Dapat mengerjakan hal-hal yang penting saja, yang tidak penting tidak perlu dikerjakan.
·         Membuat processor bekerja lebih cepat, sehingga dapat ditingkatkan jumlah task yang diselesaikan.
·         Struktur Internal yang dinamis, artinya dapat melakukan rekonfigurasi dinamis untuk menyesuaikan dengan kondisi eksternal lingkungan.
·         Bersifat reaktif, artinya dapat merespon terhadap event  yang beragam yang tidak dapat diprediksi urutan waktu kedatangannya.
·         Konkurensi, artinya menunjang berbagai kegiatan secara simultan, aspek komunikasi, interrupt handling dan locking menjadi bagian penting dalam penyelesaian masalah konkurensi ini.
·         Terdistribusi, artinya memungkinkan untuk melakukan komputasi bersamaan di beberapa tempat untuk menyelesaikan satu fungsi umum.

1.2      Konsep Sistem Realtime

Sistem Realtime sangat memperhatikan dimana waktu adalah merupakan hal yang dianggap penting. Sistem yang cepat waktu bukan merupakan tujuan dari Realtime, tetapi merupakan suatu persyaratan agar sistem tersebut bisa mengerjakan tugas-tugas dengan cepat sesuai batasan waktu yang telah ditetapkan.
Suatu hasil dikatakan tepat waktu jika:
·         Hasil harus diserahkan sesuai dengan waktu yang telah disepakati atau ditentukan. Misalnya seorang dosen memberikan ulangan kepada sejumlah mahasiswa dan memberikan waktu pengerjaan selama 2 jam. Apabila waktu pengerjaan telah mencapai 2 jam, maka seluruh pekerjaan yang diberikan tadi harus segera dikumpulkan.
·         Dapat memberikan jawaban setiap saat diminta.
·         Dapat memberikan jawaban yang terbaik dan akurat.
·         Kita yang memerintahkan dan kapan harus diberikan oleh sistem serta bisa menjawab pada setiap saat.
Secara umum, blok diagram yang mempunyai karakteristik sistem Realtime mempunyai komponen pengontrol proses, sensor, aktuator , trigger generator bersama clock untuk mengeset waktu.
Gambar 9. 1 Diagram blok Realtime Systems
      Berdasarkan rangsangan (stimulus) yang masuk pada sistem Realtime, maka terdapat dua macam stimulus berdasarkan waktu kedatangannya :
·         Periodic Stimuli : Stimulus yang dapat diprediksi interval waktunya.
Contoh : Sensor suhu dapat dipantau selama 10 kali dalam satu detik.
·         A Periodic Stimuli : Stimulus yang tidak dapat diprediksi waktunya.
Contoh: Kesalahan daya sistem memicu interupsi yang diproses oleh sistem.

1.3      Jenis-Jenis Sistem Realtime

Berdasarkan response time, maka sistem Realtime secara umum dapat dibagi ke dalam 2 jenis, yaitu :
·         Hard Realtime Systems (HRTS)
Sistem hard Realtime 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 Realtime dapat mentoleransi keterlambatan tidak lebih dari 100 mikro detik.
Secara umum, sebuah proses dikirim dengan sebuah pernyataan jumlah waktu dimana dibutuhkan untuk menyelesaikan atau menjalankan I/O. Kemudian penjadual 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 virtual memory atau secondary storage, karena sistem seperti ini tidak dapat meramalkan waktu yang dibutuhkan untuk mengeksekusi suatu proses.
Gambar 9. 2 Skema respon time pada HRTS
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.


·         Soft Realtime Systems (SRTS)
Komputasi soft Realtime memiliki sedikit kelonggaran. Dalam sistem ini, proses yang kritis menerima prioritas lebih daripada yang lain. Walaupun menambah fungsi soft Realtime 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 Realtime.
Gambar 9. 3 Skema respon-time pada SRTS
Contoh penerapan sistem ini dalam kehidupan sehari-hari adalah pada alat penjualan atau 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 soft Realtime, aplikasi yang telah habis masa waktu pengerjaan tugasnya, dihentikan secara bertahap atau dengan kata lain masih diberikan toleransi waktu.


1.4      Arsitektur Realtime Systems

Arsitektur sistem Realtime merupakan suatu diagram yang mengambarkan interkoneksi antar sistem yang ada pada Realtime. Secara blok dapat digambarkan berikut ini :
Gambar 9. 4  Arsitektur Realtime Systems
Pada Gambar di atas terdiri dari beberapa blok sistem. Secara garis besar dibedakan menjadi dua, yaitu bagian statistik dan algoritma. Pada bagian algoritma terdapat sejumlan n algoritma. Semakin kompleks suatu program, maka akan semakin banyak punya algoritma yang bisa digunakan untuk menyelesaikan program tersebut.
Pada bagian masukan terdapat saklar selector yang digunakan untuk memilih input mana yang akan dieksekusi menggunakan algoritma 1 – n, tergantung dari keinginan kita atau tingkat komplektifitas program.
Agar bisa diperoleh konsep Realtime, maka ditambahkan suatu kontrol atau pencatat kapan program mulai start dan kapan program tersebut harus berhenti dengan menghasilkan nilai dan waktu sesuai dengan kesepakatan batas waktu (deadline).

1.5      Usaha-usaha untuk memenuhi kriteria Sistem Real- Time

Sistem Realtime merupakan sistem yang berkaitan erat dengan deadline. Agar dapat mencapai Realtime, maka usaha yang dilakukan untuk memenuhi kriteria Realtime antara lain :
·         Software yang dihardwarekan (Hadrwareisasi)
Dengan melakukan teknik software yang dihardwarekan, maka akan meningkatkan kecepatan , yang pada akhirnya akan mempercepat proses, efisien waktu dan dapat mendukung terjadinya sistem Realtime.
·         Seleksi  atau Sorting
Sistem sorting digunakan untuk mengurutkan suatu data tertentu dengan tujuan untuk mempermudah pada saat terjadi pengambilan keputusan.
·         MSB First
Dengan sistem MSB First ( Most Significant Bit ), maka dengan beberapa langkah eksekusi suatu program (misalnya kasus pada penjumlahan bilangan), akan diperoleh suatu nilai yang sudah mendekati nilai akhir. Berbeda dengan metode LSB ( Least Significant Bit ) dimana nilai maksimum akan diperoleh setelah melalui proses yang lama.
·         Heuristic / System Pakar / Sistem Cerdas
Sistem-sitem tersebut merupakan salah satu bagian dari ilmu komputer yang membuat agar suatu komputer dapat melakukan pekerjaan yang sebaik yang dilakukan oleh manusia. Cara yang digunakan adalah dengan memberikan pembelajaran (learning) terhadap komputer berupa software.
·         Sampling
Proses sampling digunakan untuk mengambil data tetapi tidak secara keseluruhan dengan syarat tetap harus memenuhi tingkat validitas, melainkan hanya diambil sample-sample tertentu saja dengan harapan sudah mewakili seluruh data yang ada.
·         Preprocessing
Sebelum task yang akan dikerjakan datang, maka sudah diatur terlebih dahulu, misalnya datanya diurutkan atau diseleksi terlebih dahulu.
·         Scheduling
Metoda untuk memproses suatu pekerjaan berdasarkan jadwal yang telah ditetapkan, sehingga tidak terjadi proses tumpang tindih.
·         Parallelism
Metoda paralelisme pada suatu processor akan mempercepat proses eksekusi terhadap suatu program, terutama jika program yang dijalankan tersebut kompleks. Dengan sistem parallel processor ini, setiap tugas didistribusikan pada masing-masing prosessor dan hasilnya digabungkan menjadi satu. Dengan demikian, maka proses eksekusi tersebut akan lebih cepat.
·         Data Reduction
Data-data yang tidak digunakan (tidak penting) atau data yang berulang (redundancy) bisa dilakukan pengurangan (reduction).
·         Data Compression
Kompresi data diguankan untuk menghemat space suatu data. Dalam kompresi data harus dipertimbangkan dalam hal waktu kompresi, waktu pengiriman data, dan proses dekompresi data tersebut. Dengan kompresi, data yang dikirim per satuan waktu lebih banyak, sehingga lebih efisien terhadap waktu.
·         Prediction
Prediction digunakan untuk memperkirakan suatu proses eksekusi data. Berapa kira-kira yang digunakan untuk mengeksekusi sebuah program.

1.6      Implementasi Sistem Realtime

Penerapan sistem Realtime pada jenis Hard Realtime Systems (HRTS) seperti: pada pembangkit tenaga nuklir, peralatan kesahatan, pengontrol pesawat terbang dan lain-lain. Sedangkan pada jenis  Soft Realtime Systems (SRTS) seperti : Sistem Telepon, sistem informasi pada pabrik, room access controlling dan lain-lain.
Dalam implementasi sistem Realtime yang berhubungan dengan hadware terdapat :
·         Sensor : Mengumpulkan data dari lingkungan sistem
·         Aktuator : Merubah (dengan berbagai cara) lingkungan sistem
·         Efektor : Respon terhadap input kepada lingkungan.
Gambar 9. 5 Relasi antara software, hadware dan lingkungan dalam sistem Realtime
            Salah satu implementasi sistem Realtime sering digunakan pada sebuah program simulator, contohnya simulator pesawat terbang. Pada gambar di bawah ini merupakan contoh konfigurasi dan blok diagram dari sebuah simulator pesawat tempur F-16A.

Gambar 9. 6 Konfiguarsi SCRAMNet pada pesawat F-16A
Pada simulator ini menggunakan teknologi fiber optics sebagai input dan output device. Untuk masalah antrian data sendiri menggunakan konsep FIFO (First In First Out).

Gambar 9. 7 SCRAMNet Board pada simulator F-16A




Rangkuman
 




1.     Sistem Realtime merupakan sistem yang terkait dengan batasan waktu (deadline) dalam melakukan perintah.
2.     Sistem yang cepat waktu bukan merupakan tujuan utama dari Realtime, tetapi merupakan suatu persyaratan agar sistem tersebut bisa mengerjakan tugas-tugas dengan cepat sesuai batasan waktu.
3.     Berdasarkan response time, maka sistem Realtime secara umum dapat dibagi ke dalam 2 jenis, yaitu : Hard Realtime Systems (HRTS) dan Soft Realtime Systems (SRTS).
4.     Pada HRTS, response time sangat tegas. Jika aplikasi atau proses tidak memenuhi batas waktu maksimum, maka aplikasi atau proses tersebut dikatakan gagal. Contohnya : pada pembangkit tenaga nuklir, peralatan kesahatan, pengontrol pesawat terbang dan lain-lain.
5.     Pada SRTS, response time lebih longgar, masih diberikan toleransi waktu tambahan yang masih memungkinkan aplikasi berlangsung dengan validitas yang masih tinggi. Contohnya : Sistem Telepon, sistem informasi pada pabrik, room access controlling dan lain-lain.
6.     Arsitektur sistem Realtime memiliki komponen yang terdiri dari n-algoritma, statistik dan pengontorl waktu (deadline control).
7.     Beberapa usaha-usaha yang dilakukan untuk memenuhi Realtime systems : Software yang dihardwarekan, seleksi atau sorting, MSB, sampling, preprocessing, Heuristic, prediksi, kompresi data, data reduction, scheduling dan Pararelisme




Kuis Benar Salah
 



1.      Dalam sistem Realtime, batasan waktu menjadi hal yang sangat penting.
2.      Pada SRTS, batasan waktu untuk melakukan aplikasi sangat tegas, jika aplikasi tersebut tidak memenuhi batasan waktu maksimum, maka aplikasi atau proses dianggap gagal.
3.      Salah satu cara untuk membuat sebuah sistem berakarakter Realtime adalah dengan metode LSB.
4.      Salah satu karakter dari sistem Realtime adalah sulit diprediksi.
5.      Pada sistem Realtime, lebih mementingkan bit error rate daripada throughput.
6.      Pengontrol pesawat terbang termasuk ke dalam HRTS.
7.       Sistem yang cepat waktu bukan merupakan tujuan utama dari Realtime, tetapi merupakan suatu persyaratan agar sistem tersebut bisa mengerjakan tugas-tugas dengan cepat sesuai batasan waktu.
8.       Karakter sistem Realtime adlah memeiliki struktur internal yang dinamis, artinya dapat melakukan rekonfigurasi dinamis untuk menyesuaikan dengan kondisi eksternal lingkungan.
9.       Akuator digunakan untuk menghimpun data dari lingkungan.
10.     HRTS dan SRTS berbeda dalam hal response time.

Tidak ada komentar:

Posting Komentar