Archive for Maret 2014
The conclution of Mobile Computing Effects to Education Computing Progress
In the mobile computing digital era has many roles in
improving the quality in world of education. Because it could help and
facilitate the day-to-day learning. The capabilities and characteristics of
mobile computing also allows the distance learning process to be more effective
and efficient and get better result. Even according to M. Mukhopadhay M., 1992
“Globalization has triggered a shift in education from to-face education conventional
to more open education.
Many developed countries already implementing mobile
computing technology in teaching and learning process. For example, mobile
computing in developed countries is learning together in their education, or
called collaborative learning, has been proven to improve test score and reduce
dropouts by 22%. Mobile technology has found a way to be able to perform
collaborative learning, in wich various students can discuss in the web forum
to make database together, about anything based their location each other. In
France, the project “Flexible Learning” has been applied to the system of
education. It is reminiscent of Ivan Illich forecast early 70s on “Education
without school (Deschooling Socieiy)”. Meanwhile in developing countries like
Malaysia, “Problem Based Learning” with mobile learning technology or
M-Learning is said still new in terms of its implementation. For Harvard
Medical School project, ArcStream Solutions was hired to develop solutions
based on the Palm OS mobile platform that facilitates communication between
students and faculty, and which provide detailed program information. Florida
State University College of Medicine is used to develop a solution ArcStream
Clinical Data Collection System ( CDC ) which allows students to take and edit
patient reports . But development continued in order to obtain good results for
the quality of education in Indonesia .
The advantages of mobile computing:
>> The use of e-books to be efficient in the learning process.
>> Being less expensive because of the lack of accommodation for buildings, school supplies, and transportation.
>> Academic students can be controlled by the parents.
>> The use of e-books to be efficient in the learning process.
>> Being less expensive because of the lack of accommodation for buildings, school supplies, and transportation.
>> Academic students can be controlled by the parents.
Disadvantages of mobile computing:
>> The storage capacity of mobile computing technology becomes a problem
>> Depending on the sophistication of the Internet and mobile devices
>> In terms of psychology, socialization or interaction of neighbor will be reduced this will result in people tend to be apathetic.
>> The storage capacity of mobile computing technology becomes a problem
>> Depending on the sophistication of the Internet and mobile devices
>> In terms of psychology, socialization or interaction of neighbor will be reduced this will result in people tend to be apathetic.
Multithreading Models
Beberapa
terminologi yang akan dibahas:
a. Thread
pengguna: Thread yang pengaturannya dilakukan oleh pustaka thread
pada tingkatan pengguna. Karena pustaka yang menyediakan fasilitas untuk
pembuatan dan penjadwalan thread, thread pengguna cepat dibuat
dan dikendalikan.
b. Thread Kernel: Thread
yang didukung langsung oleh kernel. Pembuatan, penjadwalan dan manajemen thread
dilakukan oleh kernel pada kernel space. Karena dilakukan oleh
sistem operasi, proses pembuatannya akan lebih lambat jika dibandingkan dengan thread
pengguna.
Model-model
Multithreading:
a. Model Many-to-One. Model
ini memetakan beberapa thread tingkatan pengguna ke sebuah thread.
tingkatan kernel. Pengaturan thread dilakukan dalam ruang pengguna
sehingga efisien. Hanya satu thread pengguna yang dapat mengakses thread
kernel pada satu saat. Jadi Multiple thread tidak dapat berjalan
secara paralel pada multiprosesor. Contoh: Solaris Green Threads dan GNU
Portable Threads.
b. Model One-to-One. Model
ini memetakan setiap thread tingkatan pengguna ke setiap thread.
Ia menyediakan lebih banyak concurrency dibandingkan model Many-to-One.
Keuntungannya sama dengan keuntungan thread kernel. Kelemahan model ini
ialah setiap pembuatan thread pengguna memerlukan tambahan thread kernel.
Karena itu, jika mengimplementasikan sistem ini maka akan menurunkan kinerja
dari sebuah aplikasi sehingga biasanya jumlah thread dibatasi dalam
sistem. Contoh: Windows NT/XP/2000 , Linux, Solaris 9.
c. Model Many-to-Many. Model
ini memultipleks banyak thread tingkatan pengguna ke thread kernel
yang jumlahnya sedikit atau sama dengan tingkatan pengguna. Model ini
mengizinkan developer membuat thread sebanyak yang ia mau tetapi concurrency
tidak dapat diperoleh karena hanya satu thread yang dapat
dijadwalkan oleh kernel pada suatu waktu. Keuntungan dari sistem ini ialah
kernel thread yang bersangkutan dapat berjalan secara paralel pada
multiprosessor.
Keuntungan dari
sistem yang menerapkan multithreading dapat kita kategorikan menjadi 4 bagian:
1. Responsif.
Aplikasi
interaktif menjadi tetap responsif meskipun sebagian dari program sedang diblok
atau melakukan operasi lain yang panjang. Umpamanya, sebuah thread dari web
browser dapat melayani permintaan pengguna sementara thread yang lain berusaha
menampilkan gambar.
2. Berbagi
sumber daya.
Beberapa thread yang melakukan proses yang sama akan berbagi
sumber daya. Keuntungannya adalah mengizinkan sebuah aplikasi untuk mempunyai
beberapa thread yang berbeda dalam lokasi memori yang sama.
3. Ekonomis.
Pembuatan sebuah proses memerlukan pengalokasian memori dan sumber daya.
Alternatifnya adalah dengan menggunakan thread, karena thread membagi memori
dan sumber daya yang dimilikinya sehingga lebih ekonomis untuk membuat thread
dan context switching thread. Akan susah mengukur perbedaan waktu antara thread
dan switch, tetapi secara umum pembuatan dan pengaturan proses akan memakan
waktu lebih lama dibandingkan dengan thread. Pada Solaris, pembuatan proses
memakan waktu 30 kali lebih lama dibandingkan pembuatan thread sedangkan proses
context switch 5 kali lebih lama dibandingkan context switching thread.
4. Utilisasi
arsitektur multiprosesor.
Keuntungan dari multithreading dapat sangat meningkat
pada arsitektur multiprosesor, dimana setiap thread dapat berjalan secara paralel
di atas procesor yang berbeda. Pada arsitektur processor tunggal, CPU menjalankan
setiap thread secara bergantian tetapi hal ini berlangsung sangat cepat sehingga
menciptakan ilusi paralel, tetapi pada kenyataanya hanya satu thread yang dijalankan
CPU pada satu-satuan waktu.
Pustaka Thread
Pustaka
Thread atau yang lebih familiar dikenal dengan Thread Library bertugas
untuk menyediakan API untuk programmer dalam menciptakan dan memanage thread.
Ada dua cara dalam mengimplementasikan pustaka thread :
a. Menyediakan API dalam level
pengguna tanpa dukungan dari kernel sehingga pemanggilan fungsi tidak melalui system
call. Jadi, jika kita memanggil fungsi yang sudah ada di pustaka, maka akan
menghasilkan pemanggilan fungsi call yang sifatnya lokal dan bukan system
call.
b. Menyediakan API di level kernel
yang didukung secara langsung oleh sistem operasi. Pemanggilan fungsi call akan
melibatkan system call ke kernel.
Ada
tiga pustaka thread yang sering digunakan saat ini, yaitu: POSIX
Pthreads, Java, dan Win32. Implementasi POSIX standard dapat dengan cara user
level dan kernel level, sedangkan Win32 adalah kernel level. Java API thread
dapat diimplementasikan oleh Pthreads atau Win32.
Pembatalan
Thread (Thread Cancellation)
Thread Cancellation ialah pembatalan thread
sebelum tugasnya selesai. Umpamanya, jika dalam program Java hendak
mematikan Java Virtual Machine (JVM). Sebelum JVM dimatikan, maka seluruh thread
yang berjalan harus dibatalkan terlebih dahulu. Contoh lain adalah di
masalah search. Apabila sebuah thread mencari sesuatu dalam database
dan menemukan serta mengembalikan hasilnya, thread sisanya akan
dibatalkan. Thread yang akan diberhentikan biasa disebut target
thread.
Pemberhentian target Thread dapat
dilakukan dengan 2 cara:
a. Asynchronous
cancellation. Suatu thread seketika itu juga membatalkan target
thread.
b. Deferred cancellation.
Suatu thread secara periodik memeriksa apakah ia harus batal, cara
ini memperbolehkan target thread untuk membatalkan dirinya secara
terurut.
Penjadwalan Thread
Begitu dibuat, thread baru dapat dijalankan dengan berbagai
macam penjadwalan. Kebijakan penjadwalanlah yang menentukan setiap proses, di
mana proses tersebut akan ditaruh dalam daftar proses sesuai proritasnya dan
bagaimana ia bergerak dalam daftar proses tersebut.
Untuk menjadwalkan thread,
sistem dengan model mulithreading many to many atau many to one menggunakan:
a. Process
Contention Scope (PCS). Pustaka thread menjadwalkan thread pengguna
untuk berjalan pada LWP (lightweight process) yang tersedia.
b. System Contention Scope
(SCS). SCS berfungsi untuk memilih satu dari banyak thread ,
kemudian menjadwalkannya ke satu thread tertentu(CPU / Kernel).
REFERENCE :
LIHAT JUGA :
Posted by Save Our Nature
Konsep object interface
Konsep
object interface
Pada
sistem yang terdistribusi memiliki sifat heteregonitas dalam semua hal seperti
system opersai, bahasa pemrograman dan aplikasi yang digunakan masing-masing
client sehingga akan membutuhkan sebuah middleware (objek request broker) untuk
menangani komunikasi antar objek-objek. pada prinsipnya, objek-objek pada
sistem dapat diimplementasikan dengan bahasa pemograman yang berbeda, dapat
berjalan pada platform yang berbeda dan namanya tidak perlu diketahui semua objek
lain pada sistem.
middleware untuk mendukung komputasi objek terdistribusi antara lain :
middleware untuk mendukung komputasi objek terdistribusi antara lain :
CORBA
CORBA
adalah sebuah arsitektur software yang berbasis pada teknologi berorientasi
obyek atau Object Oriented (OO) dengan paradigma client-server. Dalam
terminologi OO, sebuah obyek berkomunikasi dengan obyek lain dengan cara
pengiriman pesan (message passing). Konteks komunikasi ini kemudian dipetakan
ke dalam model client-server:
satu obyek berperan sebagai client (si pengirim pesan) dan yang lain
bertindak sebagai server (yang menerima pesan dan memroses
pesan yang bersangkutan). Sebagai contoh, dalam ilustrasi di awal tulisan ini,
jika si pasien memerlukan obat tertentu, maka obyek aplikasi di tempat
praktek dokter berlaku sebagai client dan mengirim pesan ke obyek
aplikasi di apotik guna mengetahui apakah obat yang diperlukan tersedia di
sana.
Keunikan
dari CORBA adalah kemampuannya dalam menangani heterogenitas antara client dan server (dalam
terminologi CORBA, obyek server dinamakan implementasi obyek (object
implementation). Keduanya dapat saja diimplementasikan dalam hardware, sistem
operasi, bahasa pemrograman, dan di lokasi yang berbeda, tetapi tetap bisa
saling berkomunikasi. Kuncinya ada pada sebuah lapisan software yang disebut
dengan ORB(Object Request Broker)
CORBA pada
dasarnya berbasis pada protokol yang dinamakan IIOP (Internet Inter-ORB
Protocol) untuk berkomunikasi dengan objek-objek yang ada di komputer server
yang lain (remoting object). Segala sesuatu yang ada di dalam
arsitektur CORBA pada prinsip-nya bergantung pada ORB (Object Request Broker),di
mana ORB ini bertindak sebagai sesuatu yang menghubungkan (bertindak sebagai bus)
masing-masing objek CORBA sehingga mereka dapat saling berinteraksi baik secara
lokal pada komputer yang sama (localhost) maupun berinteraksi secara jarak jauh
(remote)
CORBA
menggunakan interface definition languange (IDL) untuk menunjukkan interface
atau antarmuka yang dapat digunakan oleh program atau obyek lain. Dari IDL
tersebut CORBA akan memetakannya ke implementasi yang lebih spesifik dari
masing-masing bahasa pemrograman
RMI
Remote
Method Invocation (RMI) adalah sebuah teknik pemanggilan method remote yang
lebih secara umum lebih baik daripada RPC. RMI menggunakan paradigma
pemrograman berorientasi obyek (Object Oriented Programming). RMI memungkinkan
kita untuk mengirim obyek sebagai parameter dari remote method. Dengan
dibolehkannya program Java memanggil method pada remote obyek, RMI membuat
pengguna dapat mengembangkan aplikasi Java yang terdistribusi pada jaringan.
RMI
menyediakan mekanisme dimana server dan client berkomunikasi dan memberikan
informasi secara timbal balik. Aplikasi semacam ini seringkali disebut aplikasi
objek terdistribusi
Langkah-Langkah Pembuatan Program dengan RMI
Dalam RMI, semua informasi tentang satu pelayanan server disediakan dalam suatu definisi remote interface. Dengan melihat pada definisi interface, seorang pemrogram dapat memberitahukan method apa yang dapat dikerjakan oleh server, meliputi data apa yang diterima dan data apa yang akan dikirim sebagai tanggapan.
Definisi yang ada pada remote interface menentukan karakteristik methods yang disediakan server yang dapat dilihat oleh client. Client programmer harus dapat mengetahui methods apa yang disediakan server dan bagaimana memanggilnya langsung dengan melihat ke remote interface. Client mendapatkan referensi ke remote object melalui RMI registry.
Dalam RMI, semua informasi tentang satu pelayanan server disediakan dalam suatu definisi remote interface. Dengan melihat pada definisi interface, seorang pemrogram dapat memberitahukan method apa yang dapat dikerjakan oleh server, meliputi data apa yang diterima dan data apa yang akan dikirim sebagai tanggapan.
Definisi yang ada pada remote interface menentukan karakteristik methods yang disediakan server yang dapat dilihat oleh client. Client programmer harus dapat mengetahui methods apa yang disediakan server dan bagaimana memanggilnya langsung dengan melihat ke remote interface. Client mendapatkan referensi ke remote object melalui RMI registry.
COM
Component Object Model (COM) adalah teknologi yang diciptakan oleh Microsoft untuk memungkinkan komunikasi antaraplikasi. Teknologi ini sudah disediakan untuk beberapa platform tetapi kebanyakan digunakan untuk platform Windows. Teknologi ini sudah diperkenalkan oleh microsoft pada tahun 1993 tetapi baru populer pada tahun 1997. Perkembangan teknologi COM ini bermula dari teknologi OLE (Object Linking and Embedding) yang dibuat untuk memungkinkan aplikasi dapat saling bertukar data.
Component Object Model (COM) adalah teknologi yang diciptakan oleh Microsoft untuk memungkinkan komunikasi antaraplikasi. Teknologi ini sudah disediakan untuk beberapa platform tetapi kebanyakan digunakan untuk platform Windows. Teknologi ini sudah diperkenalkan oleh microsoft pada tahun 1993 tetapi baru populer pada tahun 1997. Perkembangan teknologi COM ini bermula dari teknologi OLE (Object Linking and Embedding) yang dibuat untuk memungkinkan aplikasi dapat saling bertukar data.
DCOM
Pada tahun 1996 diperkenalkan Distributed Component Object Model (DCOM) sebagai jawaban Microsoft atas CORBA. DCOM dibandingkan dengan COM memiliki kelebihan mampu untuk terdistribusi dan berkomunikasi antarkomponen melalui jaringan. DCOM dan CORBA saling berkompetisi untuk menjadi standar dalam distribusi komponen melalui internet. Namun dibalik kesulitan dalam hal keamanan, sebuah browser yang berjalan menggunakan teknologi http sudah dapat menggantikan teknologi tsb.
Pada tahun 1996 diperkenalkan Distributed Component Object Model (DCOM) sebagai jawaban Microsoft atas CORBA. DCOM dibandingkan dengan COM memiliki kelebihan mampu untuk terdistribusi dan berkomunikasi antarkomponen melalui jaringan. DCOM dan CORBA saling berkompetisi untuk menjadi standar dalam distribusi komponen melalui internet. Namun dibalik kesulitan dalam hal keamanan, sebuah browser yang berjalan menggunakan teknologi http sudah dapat menggantikan teknologi tsb.
- http://www.komputasi.lipi.go.id/utama.cgi?cetakartikel&1080002265
- https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=10&cad=rja&uact=8&ved=0CHAQFjAJ&url=http%3A%2F%2Fjsi.cs.ui.ac.id%2Findex.php%2Fjsi%2Farticle%2Fdownload%2F304%2F130&ei=gQUnU7btLcGKrQfczoDwAg&usg=AFQjCNGpGJNf3zJk70fC9v4CjKD8E0pQlw&sig2=ETjexWAW8Ffn8gOderzCEQ&bvm=bv.62922401,d.bmk
LIHAT JUGA :
PERMASALAHAN SISTEM TERDISTRIBUSI
Setelah dijelaskan oleh teman-teman saya sebelumnya mengenai sistem terdistribusi, kini saya akan menjelaskan tentang masalah-masalah yang biasanya ada pada sistem terdistribusi.
Setelah dijelaskan oleh teman-teman saya sebelumnya mengenai sistem terdistribusi, kini saya akan menjelaskan tentang masalah-masalah yang biasanya ada pada sistem terdistribusi.
Pada dasarnya sebuah sistem dibangun
agar memiliki kelebihan-kelebihan daripada sistem-sistem sebelumnya, namun
tidak dipungkiri jika sebuah sistem yang telah dibangun akan memiliki sebuah
masalah pada saat telah dibangun. Pada sistem terdistribusi ada beberapa
masalah yang hadir disegala kelebihan yang dimiliki yakni :
- SOFTWARE : pada saat membangun sebuah sistem terdistribusi, masalah awal ialah bagaimana kita merancang ( sistem operasi dan bahasa pemrograman yang digunakan ) dan mengatur software (software apa yang cocok dipakai) dalam distribusi sistem.
- KOMPLEKSITAS : sitem terdistribusi bersifat lebih kompleks daripada system sentral, sehingga dalam membangun sistem dibutuhkan tenaga yang ahli.
- KETERGANTUNGAN JARINGAN INFRASTRUKTUR : sistem terdistribusi sangat tergantung pada jaringan yang membentuknya, sehingga harus direncanakan dengan baik. Apabila tidak maka akan timbul gangguan yang akan mengganggu kinerja sistem.
- KEAMANAN : pada sistem terdistribusi, akses data yang dshare sangat mudah merupakan masalah yang besar, karena akan bisa terjadi penyadapan data dan pencurian data.
- PENGENDALIAN : computer yang terhubung pada sistem terdistribusi bisa terdiri dari berbagai jenis yang berbeda serta sistem operasi yang digunakan. jika terjadi kesalahan pada satu mesin akan bisa berakibat pada yang lain, sehingga diperliukan banyak usaha dalam pengendaliannya.
REFERENSI :
- http://elista.akprind.ac.id/upload/files/8891_BAB_X_ARS_SIST_TERDISTRB.pdf
- http://sitialiyah.staff.gunadarma.ac.id/Downloads/files/11435/Week1+Pengantar+SisTer.pdf
- http://networkedblogs.com/22g1T
- http://www.herowintolo.stta.ac.id/2011/09/sistem-terdistribusi-1-pendahuluan.htm