REAL TIME
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 mewajibkan
proses selesai dalam kurun waktu tertentu. Jika tidak, maka gagal. Misalnya
adalah alat pacu jantung. Sistem harus bisa memacu detak jantung jika detak jantung
sudah terdeteksi lemah.
© Soft
real time menerapkan
adanya prioritas dalam pelaksanaan tugas dan toleransi waktu. Misalnya adalah
transmisi video. Gambar bisa sampai dalam keadaan terpatah-patah, tetapi itu
bisa ditolerir karena informasi yang disampaikan masih bisa dimengerti.
Sistem waktu
nyata keras 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.
Sistem waktu
nyata lembut 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.
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 ilusi 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.
Sistem
operasi komputer dapat juga mengadopsi berbagai macam strategi penjadwalan, yang secara garis
besar dapat dikategorikan sebagai berikut:
© Dalam sistem multi-program, pekerjaan yang sedang
diolah terus berjalan hingga membutuhkan suatu operasi yang memerlukan
interaksi dari luar. (e.g. membaca dari tape). Sistem multi-program didesain
untuk memaksimalkan penggunaan CPU.
© Dalam sistem time-sharing , pekerjaan yang sedang
diolah diharuskan melepaskan kerja CPU, baik secara sukarela atau dari
interaksi luar, seperti interupsi-perangkat-keras. Sistem Time-sharing didesain
untuk memperbolehkan beberapa program seolah diproses secara bersamaan.
© Dalam sistem real-time,
beberapa program yang sedang menunggu dijamin untuk mendapatkan pengolahan dari
CPU ketika interaksi luar terjadi. Sistem real-time didesain untuk melakukan
kontrol mekanik seperti robot-robot industri, yang memerlukan ketepatan
pemrosesan.
Dewasa ini,
penggunaan time-sharing jarang digunakan, dan digantikan dengan multitasking.
Contoh sistem
operasi jenis ini antara lain adalah linux. Linux
adalah sistem operasi yang multitasking dan multiuser seperti kebanyakan SO
yang ada pada saat ini. Multitasking pada linux artinya linux bisa atau mampu
menjalankan beberapa proses dalam waktu yang bersamaan.
Seperti
contoh pada saat kita menjalan kan aplikasi web browser kita juga bisa
menjalankan aplikasi kompresi file. Sedangkan multiuser pada linux adalah user
bisa login ke dalam sistem secara bersamaan, dengan artinya user bisa
menggunakan satu sistem secara bersamaan dalam satu waktu. Multitasking dan
multiuser pada sistem operasi merupakan satu keharusan dalam masa ini.
Keuntungan sistem ini
adalah :
© Suatu perintah dapat
dilaksanakan secara tuntas sampai berakhir dengan prioritas tertinggi.
© Mampu memproses lebih
dari satu perintah dalam waktu yang bersamaan.hal ini dapat terjadi karena
kemampuan membagi sumber daya yang tersedia. Jika suati perintah datang
membutuhkan sumber daya media simpan menyelesaikan perintah/pekerjaan yang
telah ditentukan, apabila datang perintah lain yang membutuhkan sumber daya memori
misalnnya, perintah tersebut dapat langsung dikerjakan tanpa menunggu perintah
sebelumnya selesai dierjakan.
Kelemahan
dari sistem ini adalah jika terdapat banyak perintah, maka akan terjadi antian
perintah yang cukup panjang. Pengguna harus menunggu perintah selesai
dilaksanakan untuk memasukkan perintah selanjutnya.
Manfaat
metode ini akan terasa ketika banyak terdapat perintah yang menggunakan sumber
daya yang berbeda, sehingga rangkaina perintah dapat diselesaikan dengan lebih
cepat.
No comments:
Post a Comment