Dari Slashdot, Survey Says C dominated New '08 Open-Source Projects, C adalah bahasa programming yang mendominasi proyek open-source tahun 2008 dari laporan The Register (UK). Menurut Black Duck Software yang memonitor 180000 proyek pada hampir 4000 website, hampir setengah - 47% - 17000 dari proyek open-source yang baru ditulis dalam bahasa C. Setelah itu Java sebesar 28%. Untuk bahasa scripting JavaScript menempati posisi teratas sebesar 20%, lalu Perl 18%, PHP sebesar 11% dan Ruby hanya sebesar 6%. PHP banyak lebih banyak digunakan untuk development website ketimbang Ruby.
Dari kutipan diatas, C adalah bahasa yang paling universal. Bahasa ini bisa untuk hampir semua level pemrograman. Kernel Linux sebagian besarnya ditulis dengan bahasa C, untuk GUI ada toolkit GTK+ di UNIX dan WinAPI di Windows. C dengan GTK+ tercapai karena implementasi sistem obyek pada level C yang disebut dengan GObject. Ini adalah inti C dan GTK+ di desktop GNOME. Saya sangat menyukai C tapi ingin mempelajari bahasa-bahasa yang baru lebih dalam juga. Python dan C# (mono) adalah pilihan yang baik.
Friday, January 23, 2009
Tuesday, January 20, 2009
Kepalaku Pusing
Akhir-akhir ini kepalaku sering pusing sehabis bangun pagi, saya telah mancari-cari sumber rasa sakit ini di internet, bisa jadi penyakit seperti Vertigo yang artinya adalah gangguan keseimbangan kepala (gak ngertilah apa itu). Bisa juga karena sistem peredaran darah di kepala yang terganggu, kurang tidur/istirahat dan penyebab lainnya.
Saya selalu tidur dengan sembarang penyangga kepala (bantal), favorit saya adalah buku manual Linux - The Advance Reference sebagai bantal karena buku ini sangat tebal sekitar 30 cm. Dulu hal ini tidak terasa, tidak ada rasa pusing atau sakit yang saya rasakan. Kira-kira 2 minggu lalu, diselingi dengan kurang tidur dan istirahat yang tidak banyak. Akhirnya drop juga. Sekarang rasa pusing seperti berputar-putar selalu saya rasakan ketika tidur dengan condong ke kapala bagian kanan, saya ingin memeriksakan ke dokter jika terus berlanjut.
Saya selalu tidur dengan sembarang penyangga kepala (bantal), favorit saya adalah buku manual Linux - The Advance Reference sebagai bantal karena buku ini sangat tebal sekitar 30 cm. Dulu hal ini tidak terasa, tidak ada rasa pusing atau sakit yang saya rasakan. Kira-kira 2 minggu lalu, diselingi dengan kurang tidur dan istirahat yang tidak banyak. Akhirnya drop juga. Sekarang rasa pusing seperti berputar-putar selalu saya rasakan ketika tidur dengan condong ke kapala bagian kanan, saya ingin memeriksakan ke dokter jika terus berlanjut.
Thursday, January 15, 2009
Debian Networking
Konfigurasi network debian, konfigurasi ini seharusnya bisa diterapkan juga untuk distro-distro turunan. File konfigurasi ethernet debian berada di /etc/interface/network dengan format seperti berikut:
auto eth0Script untuk kontrol interface berada di /etc/init.d/network, file ini sama saja dengan file-file .rc lainnya (System V).
iface eth0 inet static
address 10.0.0.10
netmask 255.0.0.0
network 10.0.0.0
broadcast 10.255.255.255
gateway 10.0.0.20
Sunday, January 11, 2009
File Locking
File locking di UNIX menggunakan system call flock( ). Di Linux fungsi ini di panggil dengan cara mendefinisikan mode lock yang akan di gunakan.
LOCK_SH: Shared lock, lock bisa dipunya oleh beberapa proses (lebih dari satu).
LOCK_EX: Exclusive lock, lock hanya dimiliki oleh satu proses.
LOCK_UN: Menonaktifkan lock.
flock( ) akan diturunkan ke proses turunan yang bisa dibuat seperti fork( ) atau dup( ) system call. EAGAIN akan di set sebagai errno jika file tersebut sedang dalam status lock dengan return value -1 (UNIX way bro ;)).
Fungsi ini juga bisa mengakibatkan block pada file descriptor, gunakan nonblocking mode dengan ORing LOCK_NB misalnya:
%man 2 flock -> Complete resources.
int flock (int fd, int operation);Fungsi ini didefinisikan di sys/file.h, fd adalah file descriptor yang telah diakses dengan open( ), operation adalah parameter operasi yang akan diberlakukan, ini bisa berupa salah satu perintah di bawah ini:
LOCK_SH: Shared lock, lock bisa dipunya oleh beberapa proses (lebih dari satu).
LOCK_EX: Exclusive lock, lock hanya dimiliki oleh satu proses.
LOCK_UN: Menonaktifkan lock.
flock( ) akan diturunkan ke proses turunan yang bisa dibuat seperti fork( ) atau dup( ) system call. EAGAIN akan di set sebagai errno jika file tersebut sedang dalam status lock dengan return value -1 (UNIX way bro ;)).
Fungsi ini juga bisa mengakibatkan block pada file descriptor, gunakan nonblocking mode dengan ORing LOCK_NB misalnya:
int op = LOCK_NB | LOCK_EX;Sory, ga ada code.
%man 2 flock -> Complete resources.
Subscribe to:
Posts (Atom)