Fork bomb: تفاوت بین نسخه‌ها

از ویکی فارسی اوبونتو
پرش به: ناوبری، جستجو
 
(۱ نسخهٔ میانی ویرایش شده توسط ۱ کاربر نشان داده نشده)
سطر ۱: سطر ۱:
Fork Bomb مجموعه‌ی چند دستور است که در نهایت منجر به کرش کردن سیستم می‌شود.
+
Fork Bomb مجموعه‌ی چند دستور است که در نهایت منجر به فروپاشی سیستم می‌شود.
  
 
ساخت و اجرای این بمب بسیار ساده است، کافی است دستور زیر را در پایانه وارد کنید:
 
ساخت و اجرای این بمب بسیار ساده است، کافی است دستور زیر را در پایانه وارد کنید:
سطر ۱۰: سطر ۱۰:
 
در این بمب '''”:”''' نام یک تابع است که پس از آن علامت‌های '''”()”''' می‌آیند. علامت‌های '''”}”''' و '''”{”''' نشان دهنده‌ی آغاز و پایان بدنه‌ی تابع است، بدنه‌ی تابع نیز '''”<code dir="ltr">:|:&</code>”''' می‌باشد، درون بدنه تابع '''”<code dir="ltr">:|:</code>”''' بدین معنی است که تابع '''”:”''' را اجرا کن و خروجی آن را دوباره به '''”:”''' بفرست. علامت '''“&”''' نیز باعث اجرای تمام این دستورات در پس‌زمینه سیستم می‌فرستد، در نتیجه دیگر با '''Ctrl+C''' نمی‌توان جلوی این عملیات را گرفت. '''”:;”''' هم که در انتها آمده است، به این معنی است که تعریف تابع تمام شده و تابع باید اجرا شود.
 
در این بمب '''”:”''' نام یک تابع است که پس از آن علامت‌های '''”()”''' می‌آیند. علامت‌های '''”}”''' و '''”{”''' نشان دهنده‌ی آغاز و پایان بدنه‌ی تابع است، بدنه‌ی تابع نیز '''”<code dir="ltr">:|:&</code>”''' می‌باشد، درون بدنه تابع '''”<code dir="ltr">:|:</code>”''' بدین معنی است که تابع '''”:”''' را اجرا کن و خروجی آن را دوباره به '''”:”''' بفرست. علامت '''“&”''' نیز باعث اجرای تمام این دستورات در پس‌زمینه سیستم می‌فرستد، در نتیجه دیگر با '''Ctrl+C''' نمی‌توان جلوی این عملیات را گرفت. '''”:;”''' هم که در انتها آمده است، به این معنی است که تعریف تابع تمام شده و تابع باید اجرا شود.
  
{{نکته|شما می‌توانید بهجای نام تابع '''”:”''' از هرچیز دیگری نیز استفاده کنید. مثلا:
+
{{نکته|شما می‌توانید به‌جای نام تابع '''”:”''' از هرچیز دیگری نیز استفاده کنید. مثلا:
 
<pre language="bash">
 
<pre language="bash">
 
bomb() {  
 
bomb() {  
سطر ۱۶: سطر ۱۶:
 
}; bomb
 
}; bomb
 
</pre>}}
 
</pre>}}
پس اجرای این بمب، سیستم شروع به کند شدن می‌کند و پس از مدت زمانی سیستم کاملاً کرش می‌کند. اینکه این مدت زمان چقدر است بستگی به سخت‌افزار شما دارد. تعداد هسته های CPU، حجم RAM و حتی گاهی Swap تأثیر گذار خواهند بود.
+
پس اجرای این بمب، سیستم شروع به کند شدن می‌کند و پس از مدت زمانی سیستم کاملاً کرش می‌کند. اینکه این مدت زمان چقدر است بستگی به سخت‌افزار شما دارد. تعداد هسته های CPU، حجم RAM و حتا گاهی Swap تأثیر گذار خواهند بود.
 +
 
 +
 
 +
[[رده:مقاله‌های کاربران]]

نسخهٔ کنونی تا ‏۲۴ مرداد ۱۴۰۰، ساعت ۱۱:۵۳

Fork Bomb مجموعه‌ی چند دستور است که در نهایت منجر به فروپاشی سیستم می‌شود.

ساخت و اجرای این بمب بسیار ساده است، کافی است دستور زیر را در پایانه وارد کنید:

اخطار:

استفاده از این بمب به دقت نیاز دارد. با دقت از آن استفاده کنید
:(){ :|:& };:

نحوه‌ی عملکرد

در این بمب ”:” نام یک تابع است که پس از آن علامت‌های ”()” می‌آیند. علامت‌های ”}” و ”{” نشان دهنده‌ی آغاز و پایان بدنه‌ی تابع است، بدنه‌ی تابع نیز :|:& می‌باشد، درون بدنه تابع :|: بدین معنی است که تابع ”:” را اجرا کن و خروجی آن را دوباره به ”:” بفرست. علامت “&” نیز باعث اجرای تمام این دستورات در پس‌زمینه سیستم می‌فرستد، در نتیجه دیگر با Ctrl+C نمی‌توان جلوی این عملیات را گرفت. ”:;” هم که در انتها آمده است، به این معنی است که تعریف تابع تمام شده و تابع باید اجرا شود.


نکته: شما می‌توانید به‌جای نام تابع ”:” از هرچیز دیگری نیز استفاده کنید. مثلا:
bomb() { 
 bomb | bomb &
}; bomb

پس اجرای این بمب، سیستم شروع به کند شدن می‌کند و پس از مدت زمانی سیستم کاملاً کرش می‌کند. اینکه این مدت زمان چقدر است بستگی به سخت‌افزار شما دارد. تعداد هسته های CPU، حجم RAM و حتا گاهی Swap تأثیر گذار خواهند بود.