Konsep Dasar Name Service

Posted on Selasa, 17 April 2012
Filed under | Leave a Comment

Name Service dalam Sistem Terdistribusi merupakan layanan penamaan yang berfungsi untuk menyimpan naming context, yakni kumpulan binding nama dengan objek, tugasnya untuk me-resolve nama.

Pengaksesan resource pada sistem terdistribusi yang memerlukan:
- Nama resource (untuk pemanggilan),
- Alamat (lokasi resource tsb),
- Rute (bagaimana mencapai lokasi tsb).
Name Service memiliki konsentrasi pada aspek penamaan dan pemetaan antara nama & alamat, bukan pada masalah rute, yang dibahas di Jaringan Komputer. Resource yang dipakai dalam Name Service adalah: komputer, layanan, remote object, berkas, pemakai.

Contoh penamaan pada aplikasi sistem terdistribusi:
– URL untuk mengakses suatu halaman web.
– Alamat e-mail utk komunikasi antar pemakai.

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 dr suatu obyek.
– Address: atribut kunci dari sebuah entitas dalam sistem terdistribusi.
─ Attribute: nilai suatu object property.

Tujuan atau manfaat penamaan antara lain adalah:
• 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.
• Pure name : nama yang tidak perlu di terjemahkan, karena pada nama tersebut sudah 
   menunjuk alamat objek langsung.
   – Contoh : IP
• non-pure name : dalam nama mengandung suatu informasi (atribut misalnya) tentang
  suatu objek.
  – Contoh : URL, alamat email, X.500 Directory Service, IOR (Interoperability Object
             Reference).

Kebutuhan terhadap name service
• penamaan unik yang standard
• scalability
• Consistency
• performance dan availability
• mudah menyesuaikan terhadap perubahan perlindungan kegagalan

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:

-  http://shara9128.blogspot.com/2012/04/konsep-dasar-name-service.html 
http://sisterfrisca.blogspot.com/ 
-  
http://teg849.wordpress.com/2011/04/27/name-service/ 
-  
http://blogerahman.staff.unisbank.ac.id/files/2011/07/Sist-Terdistribusi-Anton-Pres10.pdf

These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google
  • Furl
  • Reddit
  • Spurl
  • StumbleUpon
  • Technorati

Komponen Inti Sistem Operasi (OS) dan Fungsi Kernel

Posted on Selasa, 10 April 2012
Filed under | Leave a Comment

Komponen Inti Sistem Operasi (OS)
   
   Pengertian dari Sistem Operasi sendiri adalah seperangkat program yang mengelola sumber daya perangkat keras komputer, dan menyediakan layanan umum untuk aplikasi perangkat lunak. Sistem operasi adalah jenis yang paling penting dari perangkat lunak sistem dalam sistem komputer. Tanpa sistem operasi, pengguna tidak dapat menjalankan program aplikasi pada komputer mereka, kecuali program aplikasi boot diri.

   Komponen dari suatu sistem operasi yang ada adalah untuk membuat bagian-bagian berbeda yang bekerja dari sebuah komputer. Seiring dengan berkembangnya Sistem Operasi, semakin banyak lagi layanan yang menjadi layanan inti umum. Kini, sebuah OS mungkin perlu menyediakan layanan network dan koneksitas internet, yang dulunya tidak menjadi layanan inti umum.

Secara garis besar Sistem Operasi mempunyai 2 tugas utama, yaitu sebagai :

a. Pengelola Seluruh Sumber Daya Pada Sistem Komputer (Resource Manager).

Yang dimaksud dengan sumber daya pada sistem komputer adalah semua komponen yang memberikan fungsi (manfaat) atau dengan pengertian lain adalah semua yang terdapat atau
terhubung ke sistem komputer yang dapat untuk memindahkan, menyimpan, dan memproses data, serta untuk mengendalikan fungsi-fungsi tersebut.

Sumber daya pada sistem komputer, antara lain :

1) Sumber daya fisik

Contoh dari sumber daya fisik diantaranya keyboard, bar-code reader, mouse, joystick, lightpen, track-ball, touchscreen, pointing devices, floppy disk drive, hard-disk, tape drive,
optical disk, CD ROM drive, CRT, LCD, printer, modem, ethernet card, PCMCIA, RAM,
cache memory, register, kamera, sound card, radio, digitizer, scanner, plotter, dan
sebagainya. Salah satu sasaran yang harus dicapai sistem operasi adalah dapat memanfaatkan
seluruh sumber daya agar dapat digunakan secara efektif dan efisien mungkin.

2) Sumber daya abstrak

Terdiri dari :
  Data, misalnya :Semaphore untuk pengendalian sinkronisasi proses-proses, PCB
(Process Control Block) untuk mencatat dan mengendalikan proses, tabel segmen,
tabel page, i-node, FAT, file dan sebagainya.
 Program yang berupa kumpulan instruksi yang dapat dijalankan oleh sistem
komputer, yang dapat berupa utilitas dan program aplikasi pengolahan data tertentu.

b. Penyedia layanan (extended/virtual machine)

Secara spesifik berfungsi :

- Memberi abstaksi mesin tingkat tinggi yang lebih sederhana dan menyembunyikan
kerumitan perangkat keras. Sistem operasi menyediakan system call (API=Application Programming Interface) yang berfungsi menghindarkan kompleksitas pemograman dengan
memberi sekumpulan instruksi yang mudah digunakan.

- Basis untuk program lain. Program aplikasi dijalankan di atas sistem operasi yang bertujuan
untuk memanfaatkan dan mengendalikan sumber daya sistem komputer secara benar,
efisien, dan mudah dengan meminta layanan sistem operasi.

Komponen Inti Sistem Operasi

Komponen sistem operasi terdiri dari:

 manajemen proses,
 manajemen memori utama,
 manajemen berkas,
 manajemen sistem I/O,
 manajemen penyimpanan sekunder,
 sistem proteksi,
 jaringan dan
 Command-Interpreter System.

Manajemen Proses

Proses adalah keadaan ketika sebuah program sedang di eksekusi. Sebuah proses
membutuhkan beberapa sumber daya untuk menyelesaikan tugasnya. sumber daya tersebut dapat
berupa CPU time, memori, berkas-berkas, dan perangkat-perangkat I/O.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen proses seperti:
·         Pembuatan dan penghapusan proses pengguna dan sistem proses.
·         Menunda atau melanjutkan proses.
·         Menyediakan mekanisme untuk proses sinkronisasi.
·         Menyediakan mekanisme untuk proses komunikasi.
·         Menyediakan mekanisme untuk penanganan deadlock.

Manajemen Memori Utama

Memori utama atau lebih dikenal sebagai memori adalah sebuah array yang besar dari word atau byte, yang ukurannya mencapai ratusan, ribuan, atau bahkan jutaan. Setiap word atau byte mempunyai alamat tersendiri. Memori Utama berfungsi sebagai tempat penyimpanan yang akses datanya digunakan oleh CPU atau perangkat I/O. Memori utama termasuk tempat penyimpanan data yang sementara (volatile), artinya data dapat hilang begitu sistem dimatikan.
Sistem operasi bertanggung jawab atas aktivitas-aktivitas yang berkaitan dengan manajemen
memori seperti:

·         Menjaga track dari memori yang sedang digunakan dan siapa yang menggunakannya.
·         Memilih program yang akan di-load ke memori.
·         Mengalokasikan dan meng-dealokasikan ruang memori sesuai kebutuhan.

Manajemen Penyimpanan Sekunder

Data yang disimpan dalam memori utama bersifat sementara dan jumlahnya sangat kecil.
Oleh karena itu, untuk meyimpan keseluruhan data dan program komputer dibutuhkan secondarystorage yang bersifat permanen dan mampu menampung banyak data. Contoh dari secondarystorage adalah harddisk, disket, dll.
Sistem operasi bertanggung-jawab atas aktivitas-aktivitas yang berkaitan dengan diskmanagement seperti: free-space management, alokasi penyimpanan, penjadualan disk.

Manajemen Sistem I/O
Sering disebut device manager. Menyediakan "device driver" yang umum sehingga operasi I/O dapat seragam (membuka, membaca, menulis, menutup). Contoh: pengguna menggunakan operasi yang sama untuk membaca berkas pada hard-disk, CD-ROM dan floppy disk.

Komponen Sistem Operasi untuk sistem I/O:
·         Buffer: menampung sementara data dari/ ke perangkat I/O.
·         Spooling: melakukan penjadualan pemakaian I/O sistem supaya lebih efisien (antrian dsb.).
·         Menyediakan driver untuk dapat melakukan operasi "rinci" untuk perangkat keras I/O
·         tertentu.

Manajemen Berkas

Berkas adalah kumpulan informasi yang berhubungan sesuai dengan tujuan pembuat berkas tersebut. Berkas dapat mempunyai struktur yang bersifat hirarkis (direktori, volume, dll.).
Sistem operasi bertanggung-jawab:
·         Pembuatan dan penghapusan berkas.
·         Pembuatan dan penghapusan direktori.
·         Mendukung manipulasi berkas dan direktori.
·         Memetakan berkas ke secondary storage.
·         Mem-backup berkas ke media penyimpanan yang permanen (non-volatile).

Sistem Proteksi

Proteksi mengacu pada mekanisme untuk mengontrol akses yang dilakukan oleh program, prosesor, atau pengguna ke sistem sumber daya.
Mekanisme proteksi harus:
membedakan antara penggunaan yang sudah diberi izin dan yang belum.
·         specify the controls to be imposed.
·         provide a means of enforcement.

Jaringan

Sistem terdistribusi adalah sekumpulan prosesor yang tidak berbagi memori atau clock. Tiap prosesor mempunyai memori sendiri. Prosesor-prosesor tersebut terhubung melalui jaringan
komunikasi Sistem terdistribusi menyediakan akses pengguna ke bermacam sumber-daya
sistem.
·         Increased data availability.
·         Enhanced reliability.
·         Computation speed-up.
·         Increased data availability.
·         Enhanced reliability.

Command-Interpreter System
Sistem Operasi menunggu instruksi dari pengguna (command driven). Program yang membaca instruksi dan mengartikan control statements umumnya disebut: control-card interpreter, commandline interpreter, dan UNIX shell. Command-Interpreter System sangat bervariasi dari satu system operasi ke sistem operasi yang lain dan disesuaikan dengan tujuan dan teknologi I/O devices yang ada. Contohnya: CLI, Windows, Pen-based (touch), dan lain-lain.

Fungsi Kernel

Dalam sebuah perangkat komputer, kernel merupakan komponen inti dari Sistem
Operasi yang berjalan dalam perangkat tersebut. Kernel bertugas untuk mengatur
pembagian sumber daya sistem; komunikasi antara komponen hardware dan software.



Kernel menghubungkan antara software aplikasi dan hardware komputer. Ia menyediakan abstraction layer pada level terendah untuk resource-resource seperti memori, prosesor dan perangkat I/O di mana suatu software aplikasi harus mengontrol resource-resource tersebut agar dapat berfungsi. Kernel mampu menyediakan fasilitas seperti ini bagi proses-proses aplikasi melalui mekanisme IPC (Inter Process
Communication) dan System call.

Tugas sistem operasi dilakukan secara berbeda oleh kernel yang berbeda pula, tergantung pada desain dan implementasi. Meskipun kernel monolitik mengeksekusi semua kode sistem operasi di ruang alamat yang sama untuk meningkatkan kinerja sistem, microkernels menjalankan sebagian besar layanan pengguna sistem operasi di ruang sebagai server, yang bertujuan untuk meningkatkan pemeliharaan dan modularitas dari sistem operasi. 
Fungsi utama kernel adalah untuk mengelola sumber daya komputer dan memungkinkan program lain untuk menjalankan dan menggunakan sumber daya koputer tersebut. Biasanya, sumber daya komputer terdiri dari:

Central Processing Unit (CPU/prosesor)
Ini adalah bagian paling sentral dari sebuah sistem komputer, bertanggung jawab untuk menjalankan atau mengeksekusi program di atasnya. Kernel bertanggung jawab untuk memutuskan setiap saat dimana banyak program yang berjalan serta harus dialokasikan ke prosesor (yang biasanya masing-masing prosesor hanya dapat menjalankan satu program pada satu waktu)
Memori komputer. 
Memori digunakan untuk menyimpan instruksi program baik dan data. Biasanya, berdua harus hadir dalam memori agar program untuk mengeksekusi. Seringkali beberapa program akan menginginkan akses ke memori, sering menuntut memori lebih dari komputer telah tersedia. Kernel bertanggung jawab untuk menentukan memori memilih proses yang dapat menggunakan, dan menentukan apa yang harus dilakukan bila tidak cukup kapasitas memori yang tersedia.
Input / Output (I / O)
Perangkat-perangkat komputer I/O, seperti keyboard, mouse, disk drive, printer, monitor, dll kernel mengalokasikan permintaan dari aplikasi untuk melakukan I/O ke perangkat yang sesuai (atau pemilihan perangkat, misal dalam kasus pemilihan file pada disk atau menampilakan windows pada monitor) dan memberikan metode mudah untuk menggunakan perangkat (biasanya diabstraksikan ke titik di mana aplikasi tidak perlu tahu rincian pelaksanaan perangkat).
Kernel juga biasanya menyediakan metode untuk sinkronisasi dan komunikasi antara proses (disebut antar-proses komunikasi atau IPC inter-process communication).
Kernel dapat mengimplementasikan fitur-fitur ini sendiri, atau bergantung pada beberapa proses dijalankan untuk menyediakan fasilitas untuk proses lainnya, meskipun dalam hal ini harus menyediakan beberapa cara untuk memungkinkan proses IPC untuk mengakses fasilitas yang disediakan oleh masing-masing lain.
Akhirnya, kernel harus memberikan program yang berjalan dengan metode untuk membuat permintaan untuk mengakses fasilitas ini. from http://en.wikipedia.org

Sumber:



These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google
  • Furl
  • Reddit
  • Spurl
  • StumbleUpon
  • Technorati

Model Arsitektur Client

Posted on Selasa, 03 April 2012
Filed under | Leave a Comment

Arsitektur jaringan Client Server merupakan model konektivitas pada jaringan yang membedakan fungsi computer sebagai Client dan Server. Arsitektur ini menempatkan sebuah komputer sebagaiServerServer ini bertugas memberikan pelayanan kepada terminal-terminal lainnya tang terhubung dalam system jaringan atau yang kita sebut sebagai ClientServer juga dapat bertugas untuk memberikan layanan berbagi pakai berkas (file server), printer (printer server), jalur komunikasi (server komunikasi).
Pada model arsitektur ini, Client tidak dapat berfungsi sebagai Server, tetapi Server dapat berfungsi menjadi Client (server non-dedicated). Prinsip kerja pada arsitektur ini sangat sederhana, dimanaServer akan menunggu permintaan dari Client, memproses dan memberikan hasil kepada Client, sedangkan Client akan mengirimkan permintaan ke Server, menunggu proses dan melihat visualisasi hasil prosesnya.
Arsitektur Client Server Pada Jaringan Internet
Model arsitektur Client-Server dapat terlihat secara jelas pada jaringan internet. Oleh karenanya saya akan membahas lebih khusu mengenai model arsitektur Client-Server pada jaringan internet.
Internet juga menggunakan arsitektur client server. Komputer Anda menjalankan sebuah program yang disebut dengan client dan program tersebut berinteraksi dengan program yang lain yang disebut sebagai server yang diletakkan di remote computer. Client biasanya merupakan sebuah browser seperti Internet Explorer, Netscape Navigator atau Mozila. Browser berinteraksi dengan server dengan menggunakan sekumpulan instruksi yang disebut dengan protokol. Protokol ini lah yang membantu dalam hal akurasi transfer data melalui request yang dikirimkan oleh browser dan response yang dikirim oleh server. Terdapat banyak protokol yang tersedia untuk Internet. World Wide Web, yang merupakan bagian dari Internet menggunakan semua protokol ini dalam satu atap, yaitu HTTP, FTP, Telnet, email, dan lain sebagainya dari satu platform sistem - hingga akhirnya ke browser Anda.
Beberapa Protokol Internet yang Sering Digunakan :
  • HTTP (HyperText Transfer Protocol), digunakan dalam World Wide Web (WWW) yang berfungsi untuk transfer halaman web dan seluruh file yang terletak dalam halaman web seperti gambar, multimedia, attachment file, dan lain sebagainya.
  • FTP (File Transfer Protocol), berfungsi untuk transfer file dari server ke client atau sebaliknya.
  • SMTP (Simple Mail Transfer Protocol), digunakan untuk pengiriman email.
  • Telnet Protocol, digunakan untuk membuka sesi telnet, yaitu sesi koneksi remote login dari satu komputer ke computer yang lain.

Web menggunakan protokol yang bersifat connection-less. Artinya setiap setelah terjadi interaksi antara client dan server, koneksi antara keduanya akan terputus, demikian seterusnya. Alur proses pada arsitektur Client-Server pada jaringan internet dapat dilihat pada gambar dibawah ini
Pada model arsitektur jaringan internet juga terdapat beberapa model komunikasi yang digunakan. Berikut ini adalah komunikasi antar client server dengan 3 model:

Model #1 Arsitektur Client Server - Halaman Web dengan HTML Statis

Client (browser) mengirim request (permintaan layanan) berupa file HTML yang tersimpan dalam server melalui aplikasi pada server. Server menanggapi request ini kemudian mengirimkan file yang diminta ke client. Client kemudian menampilkan file ini melalui komputernya. Dalam kasus ini, halaman HTML bersifat statis. Halaman-halaman statis ini tidak akan berubah hingga developernya sendiri yang mengubahnya.


Model #2 Arsitektur Client Server - Teknologi CGI Script

Skenarionya sedikit berbeda dengan aplikasi CGI. Di sini server harus bekerja lebih banyak dikarenakan program-program CGI memakai tenaga pemrosesan mesin server. Contohnya, misal kita dihadapkan pada sebuah halaman web yang menyediakan sebuah form searching yang menjalankan program CGI, kemudian kita masukkan kata "komputer" dalam form tersebut sebagai query pencarian. Browser mengirimkan request tersebut ke server, kemudian server memeriksa header dari request tersebut dan memanggil program CGI yang dibutuhkan untuk memproses data request tersebut. Program CGI
memproses data request tersebut dan mengeluarkan hasilnya (output) ke server. Server kemudian mengirimkan output tersebut dalam format HTML ke browser yang akan menampilkan hasilnya sebagai halaman HTML. Program CGI men-generate halaman-halaman web secara dinamis. Content halaman web dinamis bergantung pada query yang di-passing ke dalam program CGI.
Model #3 Arsitektur Client Server - Teknologi Server Side Script

Kasus ketiga ini juga menerapkan respon dinamis, yang di-generate oleh penggunaan teknologi server side. Terdapat banyak teknologi server side script yang populer saat ini, di antaranya yaitu:
  • Active Server Pages (ASP), merupakan teknologi Microsoft. Halaman-halaman web ASP biasanya memiliki ekstensi .asp atau .aspx.
  • PHP Hypertext Preprocessor (PHP), merupakan teknologi open source. Halaman-halaman web PHP memiliki ekstensi .php atau .php3.
  • Java Server Pages (JSP), merupakan teknologi Java - Sun, yang berisikan kode-kode Java dalam mengenerate halaman web dengan ekstensi file .jsp

Dengan teknologi server side script ini, kita lebih dimudahkan untuk memelihara, updating dan mengembangkan halaman-halaman web secara dinamis terutama untuk pengelolaan website yang dalam skala besar. Para developer perlu menyisipkan kode-kode program server-side ke dalam halaman HTML. Kode ini di-passing ke dalam interpreter yang akan memproses instruksi-instruksi di dalamnya dan men-generate HTML final yang akan ditampilkan di layar browser. Perlu diketahui bahwa kode-kode server-side script yang disisipkan dalam halaman HTML tidak dapat ditampilkan (invisible) oleh
client walaupun client menampilkan source halaman web tersebut, dikarenakan server hanya mengirimkan kode HTML.

Sumber:


These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google
  • Furl
  • Reddit
  • Spurl
  • StumbleUpon
  • Technorati