-> On Mon, 21 Dec 1998 14:50:13 +0700,
  -> [EMAIL PROTECTED] (carlos)
  -> in message ::: Re: [id-linux] linux BISA hang? ::: wrote,

  >> kalau packet bombing, si linux langsung hang, 

Ngomong2 ini ngirim packetnya pake protocol apa ?
Hangnya itu gimana ?

Saya pernah test kirim packet pake UDP/IP ke mesin Solaris, dan
nggak apa2. Memang karena kalau kirim pake UDP, jika buffer dari
receivernya penuh, packetnya bakal di-discarded saja. Jadi nggak
nyebabin akibat fatal. Mungkin kalau pakai non-blocking TCP, 

  >> sedang di bsdi mesinnya masih bisa jalan dengan baik, 
  >> tapi gak bisa ditelnet.
  >> 
  >> Kalau forking bomb, baik linux dan bsdi langsung hang ...

Ini yang nyebabin "hang" nya karena process tablenya penuh.
Saya coba jalanin program dibawah ini. Dan pada saat program terhenti
karena nggak bisa fork lagi, saya nggak bisa kill process tsb dengan
"kill" command. pesannya "fork: Resource temporarily unavailable".
Ini juga pernah saya coba di Solaris dan hasilnya sama. 

WARNING : buat yang mau coba jalanin program ini, waktu executenya
pastikan jalan di foreground, supaya bisa di-kill dengan Ctrl-C.
JANGAN jalankan di background (misalnya : % ./a.out &), karena nanti
nggak bisa di-kill.

#include <stdio.h>
#include <unistd.h>

int main(){
  int pid, counter = 0;
  while(1){
    pid = fork();
    if(pid >0){
      counter++;
      printf("%3d pid = %d\n", counter, pid);
    }
    else if(pid <0){
      break;
    }
    else{
      pause();
    }
  }
  printf("no of 1st level child processes = %d\n", counter);
  pause();
}

______________________________________________________________________
Utk berhenti langganan kirim email ke [EMAIL PROTECTED] 
Sudah cari di arsip? http://www.linux.or.id/milis.php3#arsip-id-linux
Utk info netiket, kirim email kosong ke [EMAIL PROTECTED]


Reply via email to