Dari atas paling atas yang include include an itu. Maksudnya apa ? itu menandakan library apa aja yang perlu dibuka di program ini, dan untuk daemon ada 9 itu yang wajib supaya bisa jalan. untuk kegunaan dari masing masing library mohon google saja. untuk fungsi umask() itu gunanya supaya dalam setiap pembuatan file ga ada file file yang tidak aman dari user prioritas tinggi (super user). ya untuk int main nya ya semua juga pasti uda ngerti buat apa kan ya ?
Lanjut ke berikutnya
Untuk pengaplikasian daemon itu dibutuhkan teknik namanya forking. apa itu forking ? forking itu mematikan parent process dan melanjutkan process itu di child process, gunanya adalah agar sistem operasi mengira process sudah berhenti (karena parent processnya udah "mati").
Selanjutnya
itu setsid() gunanya buat session ID baru. buat apa ? karena daemon itu proses independen jadi ga boleh bekerja di bawah proses lain (makanya tadi parentnya di "mati" in). Daemon kan selalu bekerja di balik layar jadi dia harus bekerja di direktori yang selalu hidup, maksudnya itu direktori tetap yang ga boleh ilang. di contoh ini direktorinya itu di root (paling aman karena ga bisa ilang).
Dan yang terakhir
itu tuh yang 3 close yang di atas itu gunanya supaya proses daemon yang jalan di background tadi ga di ganggu sama descriptor yang sengaja ataupun ga sengaja di lakukan user. STDIN untuk descriptor input, STDOUT untuk descriptor output, STDERR untuk desciptor output. nutup descriptor ini sebenarnya optional karena jika program yang ingin kamu daemon itu butuh input atau output descriptornya ga boleh di close. Nah yang paling penting dari yang terpenting itu while(1) dan isinya. itu infinite loop supaya program yang lu tulis di dalem sono itu jalan terus diulang ulang, dan hanya berhenti kalo di kill lewat terminal atau tombol dewa (Power).




mantap sekali gan, tutorialnya sangat membantu :v
BalasHapusGabut ta dek sampe ngestalking segala ?
Hapus