Wednesday, April 18, 2012

retweet : Think twice before you speak

Tuesday, April 17, 2012

name service pada sistem terdistribusi



Dalam sistem terdistribusi, name service digunakan untuk menunjuk ke suatu sesumber yang beragam dan tersebar seperti komputer, layanan (services), file, remote object, use yang dapat memudahkan pengguna.
Contoh penamaan pada aplikasi sistem terdistribusi:
– URL untuk mengakses suatu halaman web.
– Alamat e-mail utk komunikasi antar pemakai.
– Rute (bagaimana mencapai lokasi tsb).


Konsentrasi pada aspek penamaan, dan pemetaan antara nama & alamat, bukan pada masalah rute, yg dibahas di Jaringan Komputer. Yang dimaksud dengan resource adalah : komputer, layanan, remote object, berkas, pemakai.
Berikut contoh naming pd aplikasi sistem terdistribusi:
• URL utk mengakses suatu halaman web.
• Alamat e-mail utk komunikasi antar pemakai.
Naming sering dianggap remeh, tapi mendasar dlm sistem terdistribusi. Karena dalam hal ini name berfungsi sebagai identifier (pengenal) pada system.


Tujuan penamaan

• Identifikasi:
Seorang pemakai menginginkan obyek/layanan A, bukan obyek/layanan B.
• Memungkinkan terjadinya sharing
Lebih dari satu pemakai dapat mengindentifikasikan resource dengan nama yang sesuai (tidak harus nama yang sama).
• Memungkinkan location independence:
Perubahan lokasi tidak menuntut perubahan nama, asalkan lokasi tidak menjadi bagian dari nama resource tsb.
• Memberikan kemampuan keamanan (security)
 Jika sebuah nama dipilih secara acak dari himpunan besar interger, maka nama tsb hanya bisa diketahui dari legitimate source, bukan dari menebak.
 Jadi jika seseorang mengetahui nama obyek tsb, maka dia memang diberitahu, karena sulit sekali menebak nama tsb.


Jenis nama

User names:
• Dibuat oleh pemakai (user).
• Merujuk pada suatu obyek atau layanan.
• Terdiri dari strings of characters.
Contoh: hp201 untuk pencetak, ~bettyp/tmp/test.c untuk berkas.
System names:
 Terdiri dari bit string.
 Internal untuk sistem, tidak ditujukan untuk manusia.
 Lebih compact dari user names, shg dapat dibandingkan dengan lebih efisien.


Struktur nama

Primitive/‡at names (Unique Identi…ers = UIDs)
a. Tanpa struktur internal, hanya string of bits.
b. Digunakan utk perbandingan dengan UID lain.
c. Tidak membawa informasi lain -> pure names.
d. Sangat berguna & banyak digunakan karena:
• Location & application independent, shg tidak menjadi masalah bagi mobilitas obyek.
• Seragam, fixed size.
• Compact: mudah disimpan, di-pass, & jika cukup besar menjadi sulit ditebak.
a) Partitioned Names (PN)
 Komposisi dari beberapa nama primitif, biasanya disusun secara hirarkis. Contoh: www.gunadarma.ac.id/cs/docs/akademik/SisDis/naming.ppt.
 Membawa informasi -> impure names.
 Biasanya tidak secara unik mengidenti…kasikan obyek, beberapa nama bisa dipetakan ke satu obyek (e.g. UNIX file links).
b) Descriptive names (DN)
 Daftar atribut yang secara bersama-sama mengidentifikasikan obyek secara unik.
 Membawa informasi -> impure names.
 DN adalah superset dari PN.


Tujuan fasilitas Penamaan

a. Efisien, karena fasilitas penamaan merupakan dasar pada sisdis & digunakan secara terus menerus.
b. Terdistribusi. Renungkan jika UIDs dibangkitkan oleh centralized generator.
• Bottleneck.
• Node tempat generator tsb mengalami kegagalan.
c. Tampak seperti global space, tidak tergantung konekti…tas, topologi, dan lokasi obyek.
d. Mendukung pemetaan 1:many antara nama & obyek, untuk memungkinkan multicast.
e. Mendukung dynamic relocation of objects, jika obyek/proses potensial untuk mobile (berpindah-pindah). Jadi diperlukan dynamic binding antara nama & alamat, juga antara alamat & rute.
f. Memungkinkan local aliases, shg pemakai dapat mengekspresikan interpretasi semantik mereka thdp suatu obyek. Tentu saja diperlukan pemetaan antara aliases dan full names.






sumber:
https://docs.google.com/viewer?a=v&q=cache:cqb2Q2G9cvYJ:te.ugm.ac.id/~risanuri/distributed/ringk/bab09.pdf+&hl=id&gl=id&pid=bl&srcid=ADGEESgXbjtLRAjxsJfVGUpPksC1g6UxMXNkmYJZuStmHiRwvcVjjXn4ROxIvyweTB8LFStJXbBtrMSbK9mOTTVXaAX9F8KYpZQ5XFNtUnJnUhFiElkdpC8oah0UJ4a9g_UMMFG8ux8p&sig=AHIEtbQDP-_k7Q62AAp-BW0KcVlkY0MxPg


https://docs.google.com/viewer?a=v&q=cache:ra7he9PUuhQJ:images.kolongstasiun.multiply.multiplycontent.com/attachment/0/SuxsEwoKCmgAAGlOj0g1/tugas%2520sistem%2520terdistribusi.pdf%3Fnmid%3D294188033+&hl=id&gl=id&pid=bl&srcid=ADGEESg7FzK7Eky5FkcCDi9S_ySBezL6U55hM0Cjl5Mrosrbwk5MRAWxK8C_OkUm0goFepmiKXCwYhwJHofDkAXvaCCl5i21jwb-l_fR-vlF2VnTK7g9IxlOfjRPCTKG_CUG4MMoRdLC&sig=AHIEtbTIqc_hd5UN3lkPljR-k5cF3u5XKg


http://sisterfrisca.blogspot.com/


http://viqih2307qiecky.blogspot.com/2012/04/ayo-cari-tau-model-name-service-dalam.html

Thursday, April 12, 2012

grafkom 2 : OGRE pertemuan 2

ini listing OGRE yang menggunakan 2 buah objek dan skydome sebagai background :










ingat!

tiap orang harus ada 2 buah objek, objeknya ga boleh sama tiap orang. backgroundnya juga ga boleh sama.

buat ganti objek, ganti nama objek meshnya. pilih sama objek yang ada di
C:\OgreSDK\media\models

buat ganti background, ganti 
"Examples/MorningCubeMap" di baris no.23. untuk pilihan backgroundnya cek di C:\OgreSDK\media\materials\scripts, buka file example.material. bisa dipilih dari nama-nama material yang ada di dalem file example.material itu.

untuk LP pertemuan 3 nya:

1. apa yang kamu ketahui tentang particle dalam OGRE?
2. tuliskan skrip untuk menampilkan particle dalam OGRE!

    Wednesday, April 11, 2012

    proses dan thread

    sebelum membahas tentang proses dan thread itu sendiri, ada baiknya pahami terlebih dahulu kalau thread dan proses itu merupakan dua bagian yang saling berhubungan.

    pengertian proses: suatu program yang sedang dieksekusi. Proses juga termasuk aktivitas yang sedang terjadi, sebagaimana digambarkan oleh nilai pada program counter dan isi dari daftar prosesor/ processor's register. Suatu proses umumnya juga termasuk process stack, yang berisikan data temporer (seperti parameter metoda, address yang kembali, dan variabel lokal) dan sebuah data section, yang berisikan variabel global.
    Sedangkan thread merupakan unit dasar dari penggunaan CPU yang terdiri dari thread ID, Program Counter, Register Set dan Stack.  

    sebagai contoh, kalau suatu proses itu lagi menjalankan sebuah program word prosessor, maka ada sebuah thread tunggal dari instruksi-instruksi yang sedang dilaksanakan.

    biasanya kontrol thread tunggal itu hanya memungkinkan proses untuk menjalankan satu tugas pada suatu waktu. tapi banyak sistem operasi modern yang sudah memiliki konsep yang dikembangkan, sehingga memungkinkan sebuah proses memiliki eksekusi multithread.
    sedangkan Multithread adalah suatu proses thread yang dapat mengerjakan lebih dari suatu tugas pada suatu satuan waktu.

    Keadaan Proses

    Sebagaimana proses bekerja, maka proses tersebut merubah state (keadaan statis/ asal). Status dari sebuah proses didefinisikan dalam bagian oleh aktivitas yang ada dari proses tersebut. Tiap proses mungkin adalah satu dari keadaan berikut ini:


    • New: Proses sedang dikerjakan/ dibuat.
    • Running: Instruksi sedang dikerjakan.
    • Waiting: Proses sedang menunggu sejumlah kejadian untuk terjadi (seperti sebuah penyelesaian I/O atau penerimaan sebuah tanda/ signal).
    • Ready: Proses sedang menunggu untuk ditugaskan pada sebuah prosesor.
    Terminated: Proses telah selsesai melaksanakan tugasnya/ mengeksekusi.


    Pemrograman dari multithreading yang dapat meningkatkan sebuah solusi thread
    tunggal antara lain Dalam web browser yang multithreading, sebuah thread dapat melayani permintaan pengguna sementara thread lain berusaha menampilkan gambar. 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.


    Dua level thread, User Thread dan Kernel Thread. User thread didukung di atas penjadwalan jangka pendek (short term scheduler), mempunyai tugas untuk menjadwalkan alokasi pemroses di antara proses ready di memori utama. Penjadwalan dijalankan setiap terjadi di pengalihan proses untuk memilih proses berikut yang harus dijalankan. Penjadwalan jangka panjang (long term scheduler), Penjadwalan ini bekerja terhadap antrian batch dan memilih batch berikutnya yang harus dieksekusi.. batch biasanya adalah proses- proses dengan penggunaan sumber daya yang intensif, program ini berprioritas rendah, digunakan sebagai pengisi selama periode aktivitas job-job interaktif rendah.


    Penjadwal CPU adalah basis dari multi programming sistem operasi. Dengan men-switch CPU diantara proses. Akibatnya sistem operasi bisa membuat komputer produktif. Penjadwal adalah fungsi dasar dari suatu sistem operasi. Hampir semua sumber komputer dijadual sebelum digunakan. CPU salah satu sumber dari komputer yang penting yang menjadi sentral dari sentral penjadual di sistem operasi. Jenis-jenis algoritma penjadwalan:
    Algoritma Nonpreemptive adalah Proses diberi jatah waktu oleh pemroses, maka pemroses tidak dapat diambil alih oleh proses lain sampai proses itu selesai.
    Dan Algoritma Preemptive, yaitu Proses diberi jatah waktu oleh pemroses, maka pemroses dapat diambil ali 
    oleh proses lain, sehingga proses disela sebelum selesai dan harus dilanjutkan menunggu jatah waktu pemroses tiba kembali pada proses itu.



    sumber:
    https://docs.google.com/viewer?a=v&q=cache:NECBljiWVMkJ:file.unsri.ac.id/index.php?dir%3DFasilkom/Sistem_Komputer/Candra_Setiawan/Sistem_Operasi/%26file%3DTugas3_SO_Afdhal%2520Akrom_Sk4B.pdf+&hl=id&gl=id&pid=bl&srcid=ADGEESiKUNQHEWgQ38sy8Iq5DCtw7Rm-a8ADQwLFnCpjXVmzQs66MIhkbAC7EhFO-8nIMRIxJ6iHMel3bAt2rFFmX95H6_ZZECYw3Glb85AhMYzkAVHlvPKXKzK-Knr5AiA7OLEVlaVW&sig=AHIEtbQ7KPhOEb_Pm2KxpVrlKjxoARVRwg&pli=1
    http://ikc.unimal.ac.id/umum/ibam/ibam-os-html/i2.html
    https://docs.google.com/viewer?a=v&q=cache:lssFzZndF70J:lecturer.eepis-its.edu/~arna/Modul_SO/Teori4.pdf+&hl=id&gl=id&pid=bl&srcid=ADGEESgQ80Oblu1xMNA3tFZENCRTKIFuOjAexAvl7cAQFD9i7EvTjfj1to9AVfMiCVPX3JtVwyCYfvWbAepJCMu328hxYDAtRHspZWEB8T9HAClIi1JrpYD7_pU5kWB3VBg82S5t8J8W&sig=AHIEtbRfHjkVp8VLNAV5_GwkmrGhibukuA

    Tuesday, April 03, 2012

    software, teknologi dan bahasa komunikasi agent

    Definisi Software Agent
    Pertama-tama mari kita mulai mendefinisikan agent dari arti kamus. Di dalam kamus Webster’s New World Dictionary [Guralnik, 1983], agent didefinisikan sebagai:
    A person or thing that acts or is capable of acting or is empowered to act, for another.

    Disini ada dua point yang bisa kita ambil:
    •Agent mempunyai kemampuan untuk melakukan suatu tugas/pekerjaan.
    • Agent melakukan suatu tugas/pekerjaan dalam kapasitas untuk sesuatu, atau untuk orang lain.

    Ditarik dari point-point diatas Caglayan mendefinisikan software agent sebagai: Suatu entitas software komputer yang memungkinkan user (pengguna) untuk mendelegasikan tugas kepadanya secara mandiri (autonomously).

    Kemudian beberapa peneliti lain menambahkan satu point lagi, yaitu bahwa agent harus bisa berjalan dalam kerangka lingkungan jaringan (network environment) [Brenner et. al., 1998].
    Definisi agent dari para peneliti lain pada hakekatnya adalah senada, meskipun ada yang menambahkan atribut dan karakteristik agent ke dalam definisinya. Secara lengkap definisi agent dan komparasinya, dirangkumnkan oleh Franklin dalam makalahnya [Franklin et. al.,1996].


    KLASIFIKASI SOFTWARE AGENT
    Klasifikasi Software Agent Menurut Karakteristik Yang Dimiliki
    Teknik klasifikasi agent menurut karakteristik dipelopori oleh Nwana [Nwana, 1996]. Menurut Nwana, agent bisa diklasifikasikan menjadi delapan berdasarkan pada karakteristiknya.




    1. Collaborative Agent: Agent yang memilik kemampuan melakukan kolaborasi dan koordinasi antar agent dalam kerangka Multi Agent System (MAS).
    2. Interface Agent: Agent yang memiliki kemampuan untuk berkolaborasi dengan user, melakukan fungsi monitoring dan learning untuk memenuhi kebutuhan user.
    3. Mobile Agent: Agent yang memiliki kemampuan untuk bergerak dari suatu tempat ke tempat lain, dan secara mandiri melakukan tugas ditempat barunya tersebut, dalam lingkungan jaringan komputer.
    4. Information dan Internet Agent: Agent yang memiliki kemampuan untuk menjelajah
    internet untuk melakukan pencarian, pemfilteran, dan penyajian informasi untuk user, secara mandiri. Atau dengan kata lain, memanage informasi yang ada di dalam jaringan Internet.
    5. Reactive Agent: Agent yang memiliki kemampuan untuk bisa cepat beradaptasi dengan lingkungan baru dimana dia berada
    6. Hybrid Agent: Kita sudah mempunyai lima klasifikasi agent. Kemudian agent yang memiliki katakteristik yang merupakan gabungan dari karakteristik yang sudah kita sebutkan sebelumnya adalah masuk ke
    dalam hybrid agent.
    7. Heterogeneous Agent System: Dalam lingkungan Multi Agent System (MAS), apabila terdapat dua atau lebih hybrid agent yang memiliki perbedaan kemampuan dan karakteristik, maka sistem MAS tersebut
    kita sebut dengan heterogeneous agent system.


    Klasifikasi Software Agent Menurut Lingkungan Dimana Dijalankan
    1.Desktop Agent: Agent yang hidup dan bertugas dalam lingkungan Personal Computer (PC), dan berjalan diatas suatu Operating System (OS). Termasuk dalam klasifikasi ini adalah:
    • Operating System Agent
    • Application Agent
    • Application Suite Agent
    2. Internet Agent: Agent yang hidup dan bertugas dalam lingkungan jaringan Internet, melakukan tugas memanage informasi yang ada di Internet. Termasuk dalam klasifikasi ini adalah:
    • Web Search Agent
    • Web Server Agent
    • Information Filtering Agent
    • Information Retrieval Agent
    • Notification Agent
    • Service Agent
    • Mobile Agent
    3.Intranet Agent: Agent yang hidup dan bertugas dalam lingkungan jaringan Intranet, melakukan tugas memanage informasi yang ada di Intranet. Termasuk dalam klasifikasi ini adalah:
    • Collaborative Customization Agent
    • Process Automation Agent
    • Database Agent
    • Resource Brokering Agent
    Bahasa Pemrograman
    Pada bagian ini akan dibahas tentang bahasa pemrograman yang banyak dipakai untuk
    tahap implementasi dari software agent:

    1. Object-Orientedness: Karena agent adalah berhubungan dengan obyek, bahkan beberapa peneliti menganggap agent adalah obyek yang aktif, maka bagaimanapun juga agent harus diimplementasikan kedalam pemrorgaman yang berorientasi obyek (object-oriented programming language).

    2. Platform Independence: Seperti sudah dibahas pada bagian sebelumnya, bahwa agent hidup dan berjalan diatas berbagai lingkungan. Sehingga idealnya bahasa pemrograman yang dipakai untuk implementasi adalah yang terlepas dari platform, atau dengan kata lain program tersebut harus bisa dijalankan di platform apapun (platform independence).

    3. Communication Capability: Pada saat berinteraksi dengan agent lain dalam suatu lingkungan jaringan (network environment), tentu saja diperlukan kemampuan untuk melakukan komunikasi secara fisik. Sangat lebih baik seandaianya bahasa pemrograman mensupport pemrograman untuk network dan komunikasinya.

    4. Security: Faktor keamanan (security) juga hal yang harus diperhatikan dalam memilih bahasa pemrorgaman untuk implementasi software agent. Terutama untuk mobil agent, diperlukan bahasa pemrograman yang
    mensupport level-level keamanan yang bisa membuat agent bergerak dengan aman.

    5. Code Manipulation: Beberapa aplikasi software agent memerlukan manipulasi kode program secara runtime. Bahasa pemrograman untuk software agent sebaiknya juga harus bisa memberikan support terhadap masalah ini.

    sumber: