Konsep Dasar Name Service

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.

Selain itu name service juga merupakan layanan penamaan yang berfungsi untuk menyimpan naming context, yakni kumpulan binding nama dengan objek, tugasnya untuk me-resolve nama. Kebutuhan akan penamaan juga memicu munculnya layanan penamaan (Naming Services) yang menyediakan mekanisme dan struktur penamaan objek itu sendiri. Contohnya DNS (Domain Name Service), X.500, COBRA, dan GNS.

Name Resolution, Binding, Attributes
• Name resolution: Nama ditranslasikan ke data ttg resource/object tsb.
• Binding: Asosiasi antara nama & obyek. Dan biasanya nama diikat (bound) ke
attributes dari suatu obyek.
• Address: atribut kunci dari sebuah entitas dalam sistem terdistribusi
• Attribute: nilai suatu object property.

Didalam setiap name objek terdapat juga beberapa atribut yang merupakan properti suatu
objek. Contoh :
  • DNS : memetakan dari nama ke atribut alamat IP host
  • X.500 : memetakan suatu nama seseorang ke beberapa atribut, seperti email, telepon, dsb.
  • CORBA Naming Service yang memetakan nama remote objek ke remote object reference.


Name Service and the Domain Name System
Suatu name service dapat menyimpan kumpulan satu atau lebih kontek penamaan yaitu sehimpunan keterkaitan antara nama dan atribut objek, seperti user, komputer, services dan remote object.

Yang dibutuhkan dari suatu Name Services adalah :
– penamaan unik yang standard
– scalability
– consistency
– performance dan availability
– mudah menyesuaikan terhadap perubahan
– perlindungan kegagalan

Dalam rangka memenuhi kebutuhan tersebut, sebuah name server setidaknya dapat menerapkan mekanisme berikut :
o Partitioning
- Tidak ada satu name server yang dapat menyimpan seluruhnama dan atribut untuk seluruh jaringan.
- Data nama dipartisi berdasarkan domain.

o Replication
- Sebuah domain biasanya memiliki lebih dari satu name server
- Untuk meningkatkan availability dan performance

o Caching
- Sebuah name server dapat melakukan mekanisme caching terhadap data nama dari name server lain
- Hal ini dilakukan untuk mencegah operasi permintaan sama berulangulang

Name servers and navigation
Navigasi dan name servers di sini memiliki arti petunjuk pengaksesan nama data dari lebih dari satu name server untuk menyelesaikan suatu pemetaan nama (resolve a name). Yang didalamnya terdapat 3 metode, yaitu:
- Iterative Navigation
- Non-recursive, server-controlled
- recursive, server-controlled

1. Iterative Navigation

Agent tetap memegang kendali proses resolusi sebuah nama. Serve mengembalikan status resolusi dan alamat server yang harus dihubungi selanjutnya. Agent bekerja lebih keras dari cara pertama, dan perlu sedikit pintar.


Transitive Navigation hampir sama dengan resolusi rekursif. Return address dari agent diteruskan oleh server, sehingga jika informasi lokasi obyek ditemukan, informasi tersebut langsung diteruskan ke agent. Kelebihan : berkurangnya pengiriman pesan, server tidak perlu menyimpan status on going resolution. Kekurangan: pengirim tidak menerima ACK.

2. Non-recursive and Recursive server-controlled navigation

3. Rekursif

Adalah aktifitas berpindah dari server ke server, shg nama selalu di-resolve dalam konteks yang baru. Multiple servers transparan bagi name agent. Agent tidak sibuk. Servers harus menyimpan return address untuk setiap outgoing lookup, dan secara keseluruhan bekerja keras.

id.wikipedia.org/wiki/Sistem_Penamaan_Domain
deris.unsri.ac.id/materi/jarkom/domain&DNS.pdf
te.ugm.ac.id/~risanuri/distributed/ringk/bab09.pdf

Definisi Proses dan Thread

Proses

Satu selingan pada diskusi kita mengenai sistem operasi yaitu bahwa ada sebuah pertanyaan mengenai apa untuk menyebut semua aktivitas CPU. Sistem batch mengeksekusi jobs, sebagaimana suatu sistem time-shared telah menggunakan program pengguna, atau tugas-tugas/ pekerjaan-pekerjaan. Bahkan pada sistem tunggal, seperti Microsoft Windows dan Macintosh OS, seorang pengguna mampu untuk menjalankan beberapa program pada saat yang sama: sebuah Word Processor, Web Browser, dan paket e-mail. Bahkan jika pengguna dapat melakukan hanya satu program pada satu waktu, sistem operasi perlu untuk mendukung aktivitas program internalnya sendiri, seperti managemen memori. Dalam banyak hal, seluruh aktivitas ini adalah serupa, maka kita menyebut seluruh program itu proses-proses (processes).

Istilah job dan proses digunakan hampir dapat dipertukarkan pada tulisan ini. Walau kami pribadi lebih mneyukai istilah proses, banyak teori dan terminologi sistem-operasi dikembangkan selama suatu waktu ketika aktivitas utama sistem operasi adalah job processing. Akan menyesatkan untuk menghindari penggunaan istilah umum yang telah diterima bahwa memasukkn kata job (seperti penjadualan job) hanya karena proses memiliki job pengganti/ pendahulu.

Konsep Dasar dan Definisi Proses

Secara informal; proses adalah program dalam eksekusi. Suatu proses adalah lebih dari kode program, dimana kadang kala dikenal sebagai bagian tulisan. 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.

Kami tekankan bahwa program itu sendiri bukanlah sebuah proses; suatu program adalah satu entitas pasif; seperti isi dari sebuah berkas yang disimpan didalam disket, sebagaimana sebuah proses dalam suatu entitas aktif, dengan sebuah program counter yang mengkhususkan pada instruksi selanjutnya untuk dijalankan dan seperangkat sumber daya/ resource yang berkenaan dengannya.

Walau dua proses dapat dihubungkan dengan program yang sama, program tersebut dianggap dua urutan eksekusi yang berbeda. Sebagai contoh, beberapa pengguna dapat menjalankan copy yang berbeda pada mail program, atau pengguna yang sama dapat meminta banyak copy dari program editor. Tiap-tiap proses ini adakah proses yang berbeda dan walau bagian tulisan-text adalah sama, data section bervariasi. Juga adalah umum untuk memiliki proses yang menghasilkan banyak proses begitu ia bekerja.

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.

Nama-nama tersebut adalah arbitrer/ berdasar opini, istilah tersebut bervariasi disepanjang sistem operasi. Keadaan yang mereka gambarkan ditemukan pada seluruh sistem. Namun, sistem operasi tertentu juga lebih baik menggambarkan keadaan/ status proses. Adalah penting untuk menyadari bahwa hanya satu proses dapat berjalan pada prosesor mana pun pada waktu kapan pun. Namun, banyak proses yang dapat ready atau waiting. Keadaan diagram yang berkaitan dangan keadaan tersebut dijelaskan pada Gambar 2-1.

Gambar 2-1. Keadaan Proses. Sumber: . . .

Process Control Block

Tiap proses digambarkan dalam sistem operasi oleh sebuah process control block (PCB) - juga disebut sebuah control block. Sebuah PCB ditunjukkan dalam Gambar 2-2. PCB berisikan banyak bagian dari informasi yang berhubungan dengan sebuah proses yang spesifik, termasuk ini:

  • Keadaan proses: Keadaan mungkin, new, ready, running, waiting, halted, dan juga banyak lagi.
  • Program counter: Counter mengindikasikan address dari perintah selanjutnya untuk dijalankan untuk proses ini.
  • CPU register: Register bervariasi dalam jumlah dan jenis, tergantung pada rancangan komputer. Register tersebut termasuk accumulator, index register, stack pointer, general-puposes register, ditambah code information pada kondisi apa pun. Besertaan dengan program counter, keadaan/ status informasi harus disimpan ketika gangguan terjadi, untuk memungkinkan proses tersebut berjalan/ bekerja dengan benar setelahnya (lihat Gambar 2-3).
  • Informasi managemen memori: Informasi ini dapat termasuk suatu informasi sebagai nilai dari dasar dan batas register, tabel page/ halaman, atau tabel segmen tergantung pada sistem memori yang digunakan oleh sistem operasi .
  • Informasi pencatatan: Informasi ini termasuk jumlah dari CPU dan waktu riil yang digunakan, batas waktu, jumlah akun, jumlah job atau proses, dan banyak lagi.
  • Informasi status I/O: Informasi termasuk daftar dari perangkat I/O yang di gunakan pada proses ini, suatu daftar open berkas dan banyak lagi.
  • PCB hanya berfungsi sebagai tempat menyimpan/ gudang untuk informasi apa pun yang dapat bervariasi dari prose ke proses.

Gambar 2-2. Process Control Block. Sumber: . . .

Gambar 2-3. CPU Register. Sumber: . . .

Threads

Model proses yang didiskusikan sejauh ini telah menunjukkan bahwa suatu proses adalah sebuah program yang menjalankan eksekusi thread tunggal. Sebagai contoh, jika sebuah proses menjalankan sebuah program Word Processor, ada sebuah thread tunggal dari instruksi-instruksi yang sedang dilaksanakan.

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 multithreads, agar dapat dapat secara terus menerus mengetik dalam karakter dan menjalankan pengecek ejaan didalam proses yang sama. Maka sistem operasi tersebut memungkinkan proses untuk menjalankan lebih dari satu tugas pada satu waktu.

Description: Linkhttp://ikc.unimal.ac.id/umum/ibam/ibam-os-html/i2.html

http://www.idfreelance.net/pemrograman/proses-threading-dalam-pemrograman/

http://ekohandoyo.blog.undip.ac.id/2009/12/08/proses-dan-thread/

Software, Technology, dan Komunikasi Antar Agent

Perangkat lunak adalah istilah umum untuk data yang diformat dan disimpan secara digital, termasuk program komputer, dokumentasinya, dan berbagai informasi yang bisa dibaca dan ditulis oleh komputer. Dengan kata lain, bagian sistem komputer yang tidak berwujud. Istilah ini menonjolkan perbedaan dengan perangkat keras komputer.

Di bawah ini ada beberapa contoh macam perangkat lunak, yaitu:

  • Perangkat lunak aplikasi (application software) seperti pengolah kata, lembar tabel hitung, pemutar media, dan paket aplikasi perkantoran seperti OpenOffice.org.
  • Sistem operasi (operating system) misalnya Ubuntu.
  • Perkakas pengembangan perangkat lunak (software development tool) seperti Kompilator untuk bahasa pemrograman tingkat tinggi seperti Pascal dan bahasa pemrograman tingkat rendah yaitu bahasa rakitan.
  • Pengendali perangkat keras (device driver) yaitu penghubung antara perangkat perangkat keras pembantu dan komputer adalah software yang banyak dipakai di swalayan dan juga sekolah, yaitu penggunaan barcode scanner pada aplikasi database lainnya.
  • Perangkat lunak menetap (firmware) seperti yang dipasang dalam jam tangan digital dan pengendali jarak jauh.
  • Perangkat lunak bebas (free ‘libre’ software) dan Perangkat lunak sumber terbuka (open source software)
  • Perangkat lunak gratis (freeware)
  • Perangkat lunak uji coba (shareware / ‘trialware)
  • Perangkat lunak perusak (malware)

Teknologi adalah metode ilmiah untuk mencapai tujuan praktis; ilmu pengetahuan terapan atau dapat pula diterjemahkan sebagai keseluruhan sarana untuk menyediakan barang-barang yg diperlukan bagi kelangsungan dan kenyamanan hidup manusia.

Dalam memasuki Era Industrialisasi, pencapaiannya sangat ditentukan oleh penguasaan teknologi karena teknologi adalah mesin penggerak pertumbuhan melalui industri.

Sebagian beranggapan teknologi adalah barang atau sesuatu yang baru. namun, teknologi itu telah berumur sangat panjang dan merupakan suatu gejala kontemporer. Setiap zaman memiliki teknologinya sendiri.

Teknologi adalah metode ilmiah untuk mencapai tujuan praktis; ilmu pengetahuan terapan atau dapat pula diterjemahkan sebagai keseluruhan sarana untuk menyediakan barang-barang yg diperlukan bagi kelangsungan dan kenyamanan hidup manusia.

Dalam memasuki Era Industrialisasi, pencapaiannya sangat ditentukan oleh penguasaan teknologi karena teknologi adalah mesin penggerak pertumbuhan melalui industri.

Sebagian beranggapan teknologi adalah barang atau sesuatu yang baru, namun, teknologi itu telah berumur sangat panjang dan merupakan suatu gejala kontemporer. Setiap zaman memiliki teknologinya sendiri.


Komunikasi Antar Agent

Komunitas jaringan sosial pada agent merupakan aspek penting dalam berbahasa. Jejaring sosial dapat diartikan sebagai struktur sosial yang menghubungkan agent yang satu dengan agent yang bersifat sama. Jadi pada intinya, jika sebuah agent akan berkomunikasi, maka ia secara otomatis membentuk kelompok-kelompok tertentu yang memiliki kesamaansifat, baru kemudian agent itu akan saling berkomunikasi. Jejaring sosial ini dapat kita gambarkan seperti Linksebuah pohon.



http://id.wikipedia.org/

lipi

http://harajes.com