Skip navigation

Monthly Archives: Januari 2009


Melanjutkan postingan tentang modul kernel yang dulu.

Biasanya untuk melakukan pemindahan data antara dua buah program cukup dengan menggunakan sebuah file yang dibaca bersama (selain dengan menggunakan IPC). Hal ini cukup sulit untuk dilaksanakan pada modul kernel karena pada dasarnya modul tidak disediakan fungsi file I/O layaknya system call open(). Menulis file pada kernel space menjadi cukup sulit.

Salah satu cara yang mudah melakukan komunikasi antara sebuah kernel module dan user space program adalah dengan menggunakan procfs. Procfs adalah sebuah filesystem yang menyediakan informasi mengenai process-process dalam kernel. Procfs ini dapat dibuka di folder /proc.

$cd /proc
$ls -l | less
dr-xr-xr-x  6 root       root               0 2009-01-07 15:07 1
dr-xr-xr-x  6 root       root               0 2009-01-07 15:07 119
dr-xr-xr-x  6 root       root               0 2009-01-07 15:07 120
dr-xr-xr-x  6 root       root               0 2009-01-07 15:07 121
dr-xr-xr-x  6 root       root               0 2009-01-07 15:07 1369
dr-xr-xr-x  6 root       root               0 2009-01-07 15:07 1372
dr-xr-xr-x  6 root       root               0 2009-01-07 15:07 1385
dr-xr-xr-x  6 root       root               0 2009-01-07 15:07 1392
dr-xr-xr-x  6 root       root               0 2009-01-07 15:07 2

Di sana tersimpan data-data mengenai process yang sedang dijalankan. Folder-folder yang memiliki nama berupa angka merepresentasikan process dengan process ID (PID) yang  sama dengan nama folder tersebut. Di dalam folder tersebut tersimpan data-data mengenai process yang bersangkutan.

Read More »


Sistem terdistribusi adalah sebuah koleksi dari entitas-entitas yang saling independen dan bekerja sama untuk menyelesaikan sebuah masalah yang tidak mampu diselesaikan oleh sebuah entitas sendiri.

Karakteristik dari sebuah sistem terdistribusi adalah

  1. Tidak memiliki pemrosesan fisik (physical clock) yang sama.
  2. Tidak saling membagi memory (shared memory)
  3. Terpisah secara geografi.
  4. Autonomity dan Heterogenity.

Sistem distribusi digunakan karena ada banyak sekali motivasi

  1. Kebutuhan akan komputasi terdistribusi secara natural. Misalnya perhitungan transfer uang dari dua buah komputer milik dua bank yang berbeda.
  2. Berbagi sumber daya (resource sharing). Contohnya adalah berbagi data di dalam basis data.
  3. Akses ke data yang terpisah secara geografis.
  4. Meningkatkan reliabilitas.  Sebuah sistem terdistribusi meningkatkan reliabilitas karena adanya replikasi sumber daya sehingga jika sebuah sumber daya mengalami crash terdapat back up dari sumber daya lain. Reliabilitas dinilai dari
    1. Availability. Sumber daya dapat diakses kapan pun.
    2. Integrity.  Nilai dari sebuah data tetap benar sesuai yang diharapkan secara semantik selama pengaksesan secara konkuren dari banyak prosesor.
    3. Fault-tolerant. Kemampuan untuk mengembalikan diri dari kegagalan sistem.
  5. Meningkatkan rasio performa/biaya.
  6. Skalabilitas. Karena prosesor biasanya terkoneksi pada wide area network, maka menambahkan sebuah prosesor tidak akan menyebabkan bottleneck.
  7. Modularitas dan expandibility. Prosesor dapat dengan mudah ditambahkan ke dalam sistem yang sedang berjalan selama prosesor tersebut berjalan dengan algoritma middleware yang sama dengan prosesor lain. Prosesor yang telah ada juga dapat diganti dengan prosesor lain.
%d blogger menyukai ini: