Retourner au contenu associé (journal : Aloras là, scié, le mec (support carte WiFi Am1771))
Posté par ccomb (site web personnel) le 03 mars 2004 à 12:03. En réponse au journal Aloras là, scié, le mec (support carte WiFi Am1771). Évalué à 7.
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
[^] # Re: mes stats sont meilleurs que les tiennes ...
Posté par ccomb (site web personnel) . En réponse au journal Aloras là, scié, le mec (support carte WiFi Am1771). Évalué à 7.
Explication de la chose :
On définit une fonction qui s'appelle ":".
Si on change le nom de la fonction ca devient plus clair :
fonction() { fonction | fonction& }; fonction
la fonction est d'abord définie par la syntaxe suivante :
fonction() { ... }
Puis on termine la ligne par ";" et on l'execute.
Le probleme est que le contenu de la fonction est la commande suivante :
"fonction | fonction&"
c'est à dire que la fonction s'appelle elle-même, puis redirige sa sortie vers elle-même ce qui crée un fork récursif.
On ajoute le "&" pour mettre en tache de fond mais ce n'est pas necessaire, ca marche aussi bien avec ça : :(){ :|:;};:
Ca s'appelle du fork bomb, et en C ca s'écrit : main() {for(;;)fork();}
Pour éviter ça il suffit de limiter le nombre de processus par utilisateur avec je sais plus quelle commande, peut-etre sysctl ou bien ulimit.