Berkencan dengan /proc :)

Di Linux, kernel merupakan inti sistem operasi yang bekerja dibelakang layar. Istilah 'keren'nya untuk lingkup kerja kernel adalah kernel space . Sedang KDE/GNOME yang nonggol di depan mata alias beraksi di monitor berada di area user space dimana langsung berinteraksi dengan user.

Apakah ada relasi diantara keduanya ? Tentu ada. Kernel berkomunikasi dengan dunia luar lewat /proc Dimana para program di user space menjalin relasi dengan kernel.Ternyata Kernel juga mau kok memberikan informasi dan dipengaruhi oleh dunia luar :) Tentu mereka yang berhak bisa memperolehnya.

Contoh 1:

    uptime : Coba browse direktori /proc dan cari uptime View dengan editor Anda. Oke, saya menggunakan slackware64 dan isi file uptime sbb :

    1206643.52 51.90 Jika dibagi 3600 detik dan 24 jam, maka PC saya sudah jalan 13 hari lebih.

Contoh 2:

    cpuinfo : Ingin tahu info tentang cpu ? Coba cari dan view file cpuinfo

      processor : 0
      vendor_id : GenuineIntel
      cpu family : 6
      model : 15
      model name : Intel(R) Xeon(R) CPU X3220 @ 2.40GHz
      stepping : 11
      cpu MHz : 2394.226
      cache size : 4096 KB
      physical id : 0
      siblings : 4
      core id : 0
      cpu cores : 4
      apicid : 0
      initial apicid : 0
      fpu : yes
      fpu_exception : yes
      cpuid level : 10
      wp : yes
      flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2$
      bogomips : 4788.45
      ..................
      ....saya potong :)

Contoh 3: /proc/sys/net/ipv4 ...Sekarang sedikit intervensi :)

    Kernel dapat dipengaruhi langsung 'on the fly' Semisal saya ingin mendevelop server dan ingin mengurangi efek synflood maka saya memodifikasi file syn_cookies Caranya :
    # echo "1" > /proc/sys/net/ipv4/tcp_syncookies Maka nilai pada tcp_syncookies dari sebelumnya 0 akan menjadi 1.

Antara user space dan kernel space.

    Semisal saya ingin menjadikan PC saya agar bisa jadi dhcp server sehingga 3 kartu NIC 10/100M Dlink yang nancap bisa jalan.Intinya wajib mengaktifkan ip_forward. Karena saya menggunakan slackware, maka tinggal merubah ijin rc.ip_forward dari 644 ke 755 sehingga saat boot ip_forward aktif. Atau bisa juga lewat pkgtool untuk cara yang lebih manusiawi :)
    Tapi coba kita lihat isi dari rc.ip_forward
    .....
    echo 1 > /proc/sys/net/ipv4/ip_forward
    .....
    Ternyata (sebenarnya) saya bisa mengaktifkan ip forward langsung dengan memodifikasi isi ip_forward pada /proc kernel tanpa kebanyakan prosedur :)
    Kesimpulan: Isi /proc mencerminkan kerja dari kernel itu sendiri. Entah informasi, pesan sponsor,parameter yang dapat diatur, semuanya dikomunikasikan lewat /proc

Semoga bermanfaat :)