Selasa, 01 April 2014
Selasa, 25 Maret 2014
The conclution of Mobile Computing Effects to Education Computing Progress.
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.
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.
Proses Thread
Thread
Thread adalah sebuah alur kontrol dari sebuah proses. Kontrol thread tunggal
ini hanya memungkinkan proses untuk menjalankan satu tugas pada satu waktu.
Banyak sistem operasi modern telah memiliki konsep yang dikembangkan agar
memungkinkan sebuah proses untuk memiliki eksekusi multi-threads, agar
dapat secara terus menerus mengetik dan menjalankan pemeriksaan ejaan didalam
proses yang sama, maka sistem operasi tersebut memungkinkan proses untuk
menjalankan lebih dari satu tugas pada satu waktu. Suatu proses yang multithreaded
mengandung beberapa perbedaan alur kontrol dengan ruang alamat yang sama.
Keuntungan dari multithreaded meliputi
peningkatan respon dari pengguna, pembagian sumber daya proses, ekonomis, dan
kemampuan untuk mengambil keuntungan dari arsitektur multiprosesor. Thread merupakan
unit dasar dari penggunaan CPU, yang terdiri dari Thread_ID, program counter,
register set, dan stack. Sebuah thread berbagi code
section, data section, dan sumber daya sistem operasi dengan Thread
lain yang dimiliki oleh proses yang sama. Thread juga sering disebut lightweight
process. Sebuah proses tradisional atau heavyweight process mempunyai
thread tunggal yang berfungsi sebagai pengendali.
Perbedaan antara proses dengan thread
tunggal dan proses dengan thread yang banyak adalah proses dengan thread
banyak dapat mengerjakan lebih dari satu tugas pada satu satuan waktu.
Gambar 3.1. Thread
Banyak perangkat lunak yang
berjalan pada PC modern dirancang secara multi-threading. Sebuah
aplikasi biasanya diimplementasi sebagai proses yang terpisah dengan beberapa thread
yang berfungsi sebagai pengendali. Contohnya sebuah web browser mempunyai
thread untuk menampilkan gambar atau tulisan sedangkan thread yang
lain berfungsi sebagai penerima data dari network.
Kadang kala ada situasi dimana
sebuah aplikasi diperlukan untuk menjalankan beberapa tugas yang serupa.
Sebagai contohnya sebuah web server dapat mempunyai ratusan klien yang
mengaksesnya secara concurrent. Kalau web server berjalan sebagai
proses yang hanya mempunyai thread tunggal maka ia hanya dapat melayani
Proses Hal. 1 Sistem Terdistribusi
satu klien pada pada satu satuan waktu. Bila
ada klien lain yang ingin mengajukan permintaan maka ia harus menunggu sampai
klien sebelumnya selesai dilayani. Solusinya adalah dengan membuat web
server menjadi multi-threading. Dengan ini maka sebuah web server
akan membuat thread yang akan mendengar permintaan klien, ketika
permintaan lain diajukan maka web server akan menciptakan thread lain
yang akan melayani permintaan tersebut.
Keuntungan Thread
Keuntungan dari program yang multithreading
dapat dipisah menjadi empat kategori:
1.
Responsi: Membuat aplikasi yang interaktif menjadi multithreading dapat
membuat sebuah program terus berjalan meski pun sebagian dari program tersebut
diblok atau melakukan operasi yang panjang, karena itu dapat meningkatkan respons
kepada pengguna. Sebagai contohnya dalam web browser yang multithreading,
sebuah thread dapat melayani permintaan pengguna sementara thread lain
berusaha menampilkan image.
2.
Berbagi sumber daya: thread berbagi memori dan sumber daya dengan
thread lain yang dimiliki oleh proses yang sama. Keuntungan dari berbagi
kode adalah mengizinkan sebuah aplikasi untuk mempunyai beberapa thread yang
berbeda dalam lokasi memori yang sama.
3.
Ekonomi: dalam pembuatan sebuah proses banyak dibutuhkan pengalokasian
memori dan sumber daya. Alternatifnya adalah dengan penggunaan thread,
karena thread berbagi memori dan sumber daya proses yang memilikinya
maka akan lebih ekonomis untuk membuat dan context switch thread. Akan
susah untuk mengukur perbedaan waktu antara proses dan thread dalam hal
pembuatan dan pengaturan, tetapi secara umum pembuatan dan pengaturan proses
lebih lama dibandingkan thread. Pada Solaris, pembuatan proses lebih
lama 30 kali dibandingkan pembuatan thread, dan context switch proses
5 kali lebih lama dibandingkan context switch thread.
4. Utilisasi
arsitektur multiprocessor: Keuntungan dari multithreading dapat
sangat meningkat pada arsitektur multiprocessor, dimana setiap thread
dapat berjalan secara pararel di atas processor yang berbeda. Pada
arsitektur processor tunggal, CPU menjalankan setiap thread secara
bergantian tetapi hal ini berlangsung sangat cepat sehingga menciptakan ilusi
pararel, tetapi pada kenyataannya hanya satu thread yang dijalankan CPU
pada satu-satuan waktu (satu-satuan waktu pada CPU biasa disebut time slice atau
quantum). source:
http://naeli.staff.gunadarma.ac.id/Downloads/folder/0.1
http://www.itinfopoint.com/contentsimages/20130603-multithread.png
http://dee-x-cisadane.webs.com/apps/blog/show/10299581-perbedaan-proses-dan-thread-perbedaan-file-service-file-system-dan-file-server-beserta-contohnya-
link terkait:
1
2
3
4
Senin, 17 Maret 2014
Remote Procedure Call
Definisi RPC
RPC adalah suatu protokol yang menyediakan suatu mekanisme
komunikasi antar proses yang mengijinkan suatu program untuk
berjalan
pada suatu komputer tanpa terasa adanya eksekusi kode pada
sistem yang
jauh (remote system). RPC mengasumsi keberadaan dari
low-level protokol
transportasi seperti TCP atau UDP untuk membawa pesan data
dalam
komunikasi suatu program. Protokol RPC dibangun diatas
protokol eXternal
Data Representation (XDR), yang merupakan standar dari
representasi data
dalam komunikasi remote. Protokol XDR mengubah parameter dan
hasil dari
tiap servis RPC yang disediakan.
Protokol RPC mengijinkan pengguna (users) untuk bekerja
dengan
prosedur remote sebagaimana bekerja dengan prosedur lokal.
Prosedur
panggilan remote (remote procedure calls) didefinisikan
melalui rutin yang
terkandung didalam protokol RPC. Tiap message dari panggilan
akan
disesuaikan dengan message balikan. Protokol RPC sendiri
sebenarnya adalah
suatu protokol untuk ”meneruskan pesan” yang
mengimplemntasikan
protokol non-RPC lain seperti panggilan remote batching dan
broadcasting.
Protokol ini juga mendukung adanya prosedur callback dan
select subroutine pada sisi server.
Kelebihan dan Kekurangan RPC
Kelebihan RPC
-Relatif mudah digunakan : Pemanggilan remote procedure tidak jauh berbeda
dibandingkan pemanggilan local procedure. Sehingga pemrogram dapat
berkonsentrasi pada software logic, tidak perlu memikirkan low level details seperti
socket, marshalling & unmarshalling.Kelebihan RPC
-Robust (Sempurna): Sejak th 1980-an RPC telah banyak digunakan dlm pengembangan mission-critical application yg memerlukan scalability, fault tolerance, & reliability.
- Tidak fleksibel terhadap perubahan: hubungan anatara client dan server bersifat static.
- Berdasarkan prosedural/structured programming yang sudah ketinggalan jaman dibandingkan OOP.
Prinsip Dasar RPC
Skema RPC ini dilakukan juga pada proses-proses
Langkah-langkah dalam RPC
1. Prosedur client memanggil client stub
2. Client stub membuat pesan dan memanggil OS client
3. OS client mengirim pesan ke OS server
4. OS server memberikan pesan ke server stub
5. Server stub meng-unpack parameter-parameter untuk memanggil server
6. Server mengerjakan operasi, dan mengembalikan hasilnya ke server stub
7. Server stub mem-pack hasil tsb dan memanggil OS server
8. OS server mengirim pesan (hasil) ke OS client
9. OS client memberikan pesan tersebut ke client stub
10. Client stub meng-unpack hasil dan mengembalikan hasil tersebut ke Clientyang running di komputer berlainan
Sebelum mekanisme RPC digunakan, data harus di-packaging ke dalam format transimisi. Langkah ini dinamakan marshalling. Proxy bertanggung jawab untuk marshalling data, kemudian mengirimkan data dan meminta instans dari komponen (remote). Stub menerima request, unmarshall data, dan memanggil method yang diminta. Kemudian proses mengembalikan nilai yang diinginkan (Stub adalah kode untuk mengkonversi parameter yang dipassing saat RPC berjalan).
source:
http://en.wikipedia.org/wiki/Remote_procedure_call
Link Terkait:
1
2
3
4
Selasa, 11 Maret 2014
Model Sistem Terdistribusi
Pengantar
Model
Menyediakan
sebuah gambaran abstrak aspek yang relevan dengan sistem
Tujuan
Menyediakan
sebuah kerangka kerja untuk memahami permasalahan dan pemecahannya
Model Arsitektural
Hubungan dan
interkoneksi seperti apa antara komponenkomponen dari sistem terdistribusi
Model Fundamental
Karakteristik
apa yang mempengaruhi dependability sistem terdistribusi?
Dependability
: correctness, reliability, security
KESULITAN DAN ANCAMAN
Mode pemakaian
Variasi yang
beragam terhadap karakteristik pemakaian
Contoh :
berapa banyak halaman di kunjungi
Masalah Internal
o
Masalah concurrency
o
Masalah clock
o
Mode kegagalan
Lingkungan Sistem
o
Sistem terdistribusi harus mengakomodasi
heterogenitas hardware, sistem operasi dan jaringan
o
Contoh : berapa banyak versi SO?
Ancaman Eksternal
o
Serangan terhadap kesatuan data dan keamanannya
Model
Arsitektur Sistem Terdistribus Mendefinisikan:
- Komponen
software (proses, object)
- Cara
berinteraksi antar komponen
- Pemetaan
komponen pada sistem jaringan utama
Dibutuhkan
untuk:
- menangani
lingkungan dan penggunaan yang beragam
- menjamin
unjuk kerja
Tipe utama
model arsitektur
- Client-Server
: pertama dan paling banyak digunakan,
- Multiple
Server: meningkatkan unjuk kerja dan reliabilitas (mis search engine: google,
yahoo, vivisimo, metdrawler)
- Proxy
servers: mengurangi load jaringan dengan menyediakan akses melalui firewall.
- Peer
process: untuk kebutuhan repon interaktif yang cepat (dedicated)
Sistem yang
terdiri dari kumpulan - kumpulan proses disebut dengan server, dan memberikan
layanan kepada user yang disebut dengan client.
Model
client-server biasanya berbasiskan protokol request/reply. Contoh implementasinya
antara lain: RPC (Remote Procedure Calling) dan RMI (Remote Method Invocation).
Ø
Client: proses untuk mengakses data, menggunakan
sesumber atau melakukan operasi pada komputer yang berbeda
Ø
Server: proses yang mengatur data dan semua
sesumber yang di share di antara server dan client, memungkinkan client
mengakses sesumber dan melakukan komputasi
Ø
Interaction: pasangan pesan pemanggilan
(invocation) / hasil (result)
Ø
Example
-
http server: client (browser) meminta dokumen,
server mengirimkan dokumen yang diminta
Ø
Caching of services (proxy servers)
-
caching terhadap halaman web yang sering
digunakan
Ø
Peer processes (not client-server)
-
proses-proses yang secara fungsional identik
Ø
Service disediakan oleh beberapa server
Ø
Contoh : sebagian besar layanan web komersial
diterapkan melalui server fisik yang berbeda
Ø
Motivasi :
–
Unjuk kerja (contoh : cnn.com, download server,
dll)
–
kehandalan
Ø
Server menggunakan replikasi atau database
terdistribusi
Proxy server menyediakan hasil copy (replikasi) dari resource yang diatur oleh server lain. Biasanya proxy server dipakai untuk menyimpan hasil copy web resources. ketika client melakukan request ke server, hal pertama yang dilakukan adalah memeriksa proxy server apakah yang diminta oleh client terdapat pada proxy server.
Proxy server dapat diletakan pada setiap client atau dapat dipakai bersama oleh beberapa client. Tujuannya adalah meningkatkan performance dan availibity dengan mencagah frekuensi akses server.
Ø
Server dengan duplikasi informasi yang melayani
sebagai proxy
Ø
Caching :
–
Penyimpan lokal untuk item-item yang sering
digunakan
–
Mengurangi beban pada server
Ø
Biasanya digunakan pada search engine
Bagian dari
model sistem terdistribusi dimana sistem dapat sekaligus berfungsi sebagai
client maupun server. Sebuah arsitektur di mana tidak terdapat mesin khusus
yang melayani suatu pelayanan tertentu atau mengatur sumber daya dalam jaringan
dan semua kewajiban dibagi rata ke seluruh mesin, yang dikenal sebagai peer.
Pola komunikasi yang digunakan berdasarkan aplikasi yang digunakan.
Peer-to-peer merupakan model yang paling general dan fleksible.
• Peer
processes
– menjaga
konsistensi sesumber
–
sinkronisasi aksi
• contoh:
Whiteboard
–
menggunakan central server
–
menggunakan peer processes
source:
–
http://lecturer.ukdw.ac.id
–
DISTRIBUTED SYSTEMS Principles and Paradigms
Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN, Chapter 1,
Introduction
–
Model Sistem Terdistribusi, Budi Susanto,
–
budsus@ukdw.ac.id, budsus@yahoo.com
–
Software Enginering, Chapter 6
Selasa, 05 November 2013
Langganan:
Postingan (Atom)