Model-Model MultiThreading

Pendahuluan
Thread merupakan cara dari komputer untuk menjalankan dua atau lebih task dalam waktu bersamaan, sedangkan multithreading adalah cara komputer untuk membagi-bagi pekerjaan yang dikerjakan sebagian-sebagian dengan cepat sehingga menimbulkan efek seperti menjalankan beberapa task secara bersamaan walaupun otaknya hanya satu.


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. Kekurangannya adalah ketika ada
satu blocking systemc call, semua akan menjadi terblok juga. 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, OS/2.



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 dan lebih efisien. Contoh : Solaris 2, IRIX, HPUX.



sumber :
http://www.scribd.com/doc/50650931/136/Thread-Pengguna-dan-Kernel
http://bebas.vlsm.org/v06/Kuliah/SistemOperasi/2008/240/11_Konsep_Thread.pdf

Read More..

Komputasi Modern

Komputasi modern adalah cara untuk menemukan pemecahan masalah/solusi dari data input dengan menggunakan suatu algoritma tertentu. Komputasi merupakan suatu sub-bidang dari ilmu komputer dan matematika.

Sejarah Singkat
Komputasi Modern pertama kali digagasi oleh John Von Neumann. Beliau di lahirkan di Budapest, ibukota Hungaria pada 28 Desember 1903 dengan nama Neumann Janos. Karya – karya yang dihasilkan adalah karya dalam bidang matematika, teori kuantum, game theory, fisika nuklir, dan ilmu komputer. Beliau juga merupakan salah seorang ilmuwan yang sangat berpengaruh dalam pembuatan bom atom di Los Alamos pada Perang Dunia II lalu. Kepiawaian John Von Neumann teletak pada bidang teori game yang melahirkan konsep automata, teknologi bom atom dan komputasi modern yang kemudian melahirkan komputer.

Model Komputasi
Komputasi memiliki 3 model, yaitu
1.Mesin Mealy
2.Mesin Moore
3.Petri net

Mesin Mealy
Dalam teori komputasi sebagai konsep dasar sebuah komputer, mesin Mealy adalah otomasi fasa berhingga (finite state automaton atau finite state tranducer) yang menghasilkan keluaran berdasarkan fasa saat itu dan bagian masukan/input. Dalam hal ini, diagram fasa (state diagram) dari mesin Mealy memiliki sinyal masukan dan sinyal keluaran untuk tiap transisi. Prinsip ini berbeda dengan mesin Moore yang hanya menghasilkan keluaran/output pada tiap fasa.
Nama Mealy diambil dari “G. H. Mealy” seorang perintis mesin-fasa (state-machine) yang menulis karangan “A Method for Synthesizing Sequential Circuits” pada tahun 1955.

Mesin Moore
Dalam teori komputasi sebagai prinsip dasar komputer, mesin Moore adalah otomasi fasa berhingga (finite state automaton) di mana keluarannya ditentukan hanya oleh fasa saat itu (dan tidak terpengaruh oleh bagian masukan/input). Diagram fasa (state diagram) dari mesin Moore memiliki sinyal keluaran untuk masing-masing fasa. Hal ini berbeda dengan mesin Mealy yang mempunyai keluaran untuk tiap transisi.
Nama Moore diambil dari “Edward F. Moore” seorang ilmuwan komputer dan perintis mesin-fasa (state-machine) yang menulis karangan “Gedanken-experiments on Sequential Machines”.

Petri net
Petri net adalah salah satu model untuk merepresentasikan sistem terdistribusi diskret. Sebagai sebuah model, Petri net merupakan grafik 2 arah yang terdiri dari place, transition, dan tanda panah yang menghubungkan keduanya. Di samping itu, untuk merepresentasikan keadaan sistem, token diletakkan pada place tertentu. Ketika sebuah transition terpantik, token akan bertransisi sesuai tanda panah.

sumber:
http://lautansemesta.blogdetik.com/donwload/perkembangan-komputasi-modern/
http://ilhamsk.com/pengantar-komputasi-modern/

Read More..

Komputasi Modern, Paralel processing dan Bioinformatika

Komputasi Modern
1.Apa yang kamu ketahui tentang komputasi modern ?
Komputasi modern pengertian nya adalah cara untuk menemukan pemecahan masalah/solusi dari data input dengan menggunakan suatu algoritma tertentu. Komputasi merupakan suatu sub-bidang dari ilmu komputer dan matematika.

2.Jelaskan sejarah komputasi modern !
Komputasi Modern pertama kali digagasi oleh John Von Neumann. Beliau di lahirkan di Budapest, ibukota Hungaria pada 28 Desember 1903 dengan nama Neumann Janos. Karya – karya yang dihasilkan adalah karya dalam bidang matematika, teori kuantum, game theory, fisika nuklir, dan ilmu komputer. Beliau juga merupakan salah seorang ilmuwan yang sangat berpengaruh dalam pembuatan bom atom di Los Alamos pada Perang Dunia II lalu. Kepiawaian John Von Neumann teletak pada bidang teori game yang melahirkan konsep automata, teknologi bom atom dan komputasi modern yang kemudian melahirkan komputer.

3.Sebutkan macam-macam komputasi modern !
Komputasi memiliki 3 model, yaitu
a.Mesin Mealy
b.Mesin Moore
c.Petri net


Paralel Processing
1.Apa yang kamu ketahui tentang komputasi ?
Komputasi sebetulnya bisa diartikan sebagai cara untuk menemukan pemecahan masalah dari data input dengan menggunakan suatu algoritma.

2.Apa yang kamu ketahui tentang paralel processing ?
penggunakan lebih dari satu CPU untuk menjalankan sebuah program secara simultan. Idealnya, parallel processing membuat program berjalan lebih cepat karena semakin banyak CPU yang digunakan.

3.Jelaskan hubungan antara komputasi modern dengan paralel processing !
Dengan paralel processing kita dapat melakukan komputasi modern secara bersamaan.

BioInformatika
1.Apa yang dimaksud dengan BioInformatika ?
metode matematika, statistik dan komputasi yang bertujuan
untuk menyelesaikan masalah-masalah biologi dengan menggunakan sekuen DNA dan
asam amino dan informasi-informasi yang terkait dengannya.

2.Sebutkan bidang-bidang yang terkait dengan BioInformatika !
-Biophysics
-Computational Biology
-Medical Informatics
-Cheminformatics
-Genomics
-Mathematical Biology
-Proteomics
-Pharmacogenomics
-Pharmacogenetics

sumber :
http://www.scribd.com/doc/32982265/Parallel-Processing
http://lautansemesta.blogdetik.com/donwload/perkembangan-komputasi-modern/
http://ilhamsk.com/pengantar-komputasi-modern/
http://kambing.ui.ac.id/bebas/v06/Kuliah/SistemOperasi/2003/50/Bioinformatika.pdf

Read More..

Remote Procedure Call (RPC)

Remote Procedure Call (RPC) adalah sebuah metode yang memungkinkan kita untuk mengakses sebuah prosedur yang berada di komputer lain. Untuk dapat melakukan ini sebuah server harus menyediakan layanan remote procedure. Pendekatan yang dilakuan adalah sebuah server membuka socket, lalu menunggu client yang meminta prosedur yang disediakan oleh server. Bila client tidak tahu harus menghubungi port yang mana, client bisa me-request kepada sebuah matchmaker pada sebuah RPC port yang tetap. Matchmaker akan memberikan port apa yang digunakan oleh prosedur yang diminta client.

Kelebihan RPC:
•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.
•Robust (Sempurna): Sejak th 1980-an RPC telah banyak digunakan dlm pengembangan mission-critical application yg memerlukan scalability, fault tolerance, & reliability.
Kekurangan RPC
•Tidak fleksibel terhadap perubahan: Static relationship between client & server at run-time.
•Berdasarkan prosedural/structured programming yang sudah ketinggalan jaman dibandingkan OOP.

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 client

sumber:http://blog.uad.ac.id/andex/2010/10/07/rpc-dan-rmi-2/


Read More..

Pengertian Sistem Terdistribusi dan Contohnya


Sistem terdistribusi adalah Sebuah sistem yg komponennya berada pada jaringan komputer. Komponen tersebut saling berkomunikasi & melakukan koordinasi hanya dengan pengiriman pesan (message passing)baik melalui Local Area Network ataupun melalui Wide Area Network.


Ada empat alasan utama untuk membangun sistem terdistribusi, yaitu:
1.Resource Sharing
Dalam sistem terdistribusi, situs-situs yang berbeda saling terhubung satu sama lain melalui jaringan sehingga situs yang satu dapat mengakses dan menggunakan sumber daya yang terdapat dalam situs lain. Misalnya, user di situs A dapat menggunakan laser printer yang dimiliki situs B dan sebaliknya user di situs B dapat mengakses file yang terdapat di situs A.
2.Computation Speedup
Apabila sebuah komputasi dapat dipartisi menjadi beberapa subkomputasi yang berjalan bersamaan, maka sistem terdistribusi akan mendistribusikan subkomputasi tersebut ke situs-situs dalam sistem. Dengan demikian, hal ini meningkatkan kecepatan komputasi (computation speedup).
3.Reliability
Dalam sistem terdistribusi, apabila sebuah situs mengalami kegagalan, maka situs yang tersisa dapat melanjutkan operasi yang sedang berjalan. Hal ini menyebabkan reliabilitas sistem menjadi lebih baik.
4.Communication
Ketika banyak situs saling terhubung melalui jaringan komunikasi, user dari situs-situs yang berbeda mempunyai kesempatan untuk dapat bertukar informasi.

Tantangan-tantangan yang harus dipenuhi oleh sebuah sistem terdistribusi:
1.Keheterogenan perangkat/multiplisitas perangkat. Suatu sistem terdistribusi dapat dibangun dari berbagai macam perangkat yang berbeda, baik sistem operasi, H/W maupun S/W.
2.Keterbukaan. Setiap perangkat memiliki antarmuka (interface) yang di-publish ke komponen lain. Perlu integrasi berbagai komponen yang dibuat oleh programmer atau vendor yang berbeda
3.Keamanan. Shared resources dan transmisi informasi/data perlu dilengkapi dengan enkripsi.
4.Penangan kegagalan. Setiap perangkat dapat mengalami kegagalan secara independen. Namun, perangkat lain harus tetap berjalan dengan baik.
5.Concurrency of components. Pengaksesan suatu komponen/sumber daya secara bersamaan oleh banyak pengguna.
6.Transparansi. Bagi pemakai, keberadaan berbagai perangkat (multiplisitas perangkat) dalam sistem terdistribusi tampak sebagai satu sistem saja.

Contoh Sistem Terdistribusi :
1. Sistem Telepon
- ISDN, PSTN

2. Manajemen Jaringan
- Adminstrasi ke sumber jaringan
3. Network File System (NFS)
- Arsitektur untuk mengakses sistem file melalui jaringan

4. WWW (World Wide Web)
- Arsitektur client/server yang diterapkan di atas infrastruktur internet
- Shared Resource (melalui URL)

Sumber :
http://nurmanto.com/pengertian-sistem-terdistribusi/
http://hifdzirizqi.files.wordpress.com/2007/09/sistem-terdistribusasi.ppt
http://sistemterdistribusipradityo.wordpress.com/2011/01/14/1-2-contoh-sistem-terdistribusi/

Read More..