Запитання з тегом «fork»

7
Чому нам потрібно розщедритися для створення нових процесів?
У Unix, коли ми хочемо створити новий процес, ми розщеплюємо поточний процес, створюючи новий дочірній процес, який точно такий же, як і батьківський процес; то робимо системний виклик exec, щоб замінити всі дані з батьківського процесу на дані нового процесу. Чому ми створюємо копію батьківського процесу в першу чергу, а …

3
Чому я не можу розбити свою систему з вилковою бомбою?
Нещодавно я розкопував інформацію про процеси в GNU / Linux і зіткнувся з сумнозвісною форк-бомбою: :(){ : | :& }; : Теоретично, він повинен дублювати себе нескінченно, поки у системи не вистачить ресурсів ... Однак я спробував тестувати як на CLI Debian, так і на дистрибутив монетного двору GUI , …
54 linux  process  fork  ulimit 

4
Чому програма з fork () іноді друкує свій вихід кілька разів?
У програмі 1 Hello worldнадрукується лише один раз, але коли я виймаю \nі запускаю (програма 2), вихід надрукується 8 разів. Може хтось, будь ласка, пояснить мені значення \nтут і як це впливає на fork()? Програма 1 #include <sys/types.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> int main() { printf("hello world...\n"); fork(); …
50 c  fork 

2
Чому розвивається механізм створення процесу за замовчуванням?
Системний виклик UNIX для створення процесу fork () створює дочірній процес шляхом копіювання батьківського процесу. Я розумію, що за цим майже завжди супроводжується викликом до exec () для заміни дочірнього простору пам’яті (включаючи текстовий сегмент). Копіювання батьківського простору пам’яті у fork () для мене завжди здавалося марнотратним (хоча я розумію, …


4
Чи існує якийсь варіант UNIX, на якому дочірній процес помирає разом із батьком?
Я вивчаю поведінку ядра Linux вже досить давно, і мені завжди було зрозуміло, що: Коли процес вмирає, всі його діти повертаються до initпроцесу (PID 1), поки вони зрештою не загинуть. Однак нещодавно хтось із набагато більшим досвідом, ніж я, з ядром, сказав мені: Коли процес закінчується, всі його діти також …
41 process  init  exit  fork 

3
Створення потоків не вдається з "ресурсом тимчасово недоступним" з ядром 4.3
Я запускаю докер-сервер на Arch Linux (ядро 4.3.3-2) з кількома контейнерами. З моєї останньої перезавантаження і докер-сервер, і випадкові програми в контейнерах виходять з ладу з повідомленням про неможливість створення потоку або (рідше) для розщеплення. Повідомлення про конкретну помилку відрізняється в залежності від програми, але, здається, більшість із них згадує …
39 linux  docker  limit  fork  thread 

3
Fork vs Clone на 2.6 Kernel Linux
У мене є деяка плутанина щодо вилки та клону. Я бачив це: fork - це для процесів, а клон - для ниток fork просто викликає клон, клон використовується для всіх процесів і потоків Чи одна з цих точних? У чому полягає відмінність цих двох системних дзвінків з ядром 2.6 Linux?
37 linux  fork 

3
fork: tryry: ресурс тимчасово недоступний
Під час підключення до свого сервера я отримую, -bash: fork: retry: Resource temporarily unavailable -bash: fork: retry: Resource temporarily unavailable -bash: fork: retry: Resource temporarily unavailable -bash: fork: retry: Resource temporarily unavailable -bash: fork: Resource temporarily unavailable І я також намагаюся виконувати наступні команди, тоді результат такий же. -bash-4.1$ df …
31 linux  fork 

3
Чи fork () негайно копіює всю купу процесів в Linux?
fork()Системний виклик клонує дочірній процес від запущеного процесу. Два процеси однакові, за винятком їх PID. Природно, якщо процеси просто зчитуються з їх купи, а не пишуться на них, копіювання купи було б величезною тратою пам’яті. Чи скопійовано весь купі процесу? Чи оптимізовано таким чином, що лише написання запускає купі копію?
30 linux  fork 

3
Коли вам потрібен "nohup", якщо ви вже використовуєте "&"?
Спочатку це питання пов'язане, але, безумовно, не те саме, що це дуже приємне запитання: Різниця між nohup, disown і & Я хочу щось зрозуміти: коли я роблю '&', я розмовляю правильно? Чи корисно робити "nohup ... &" або просто і достатньо? Чи може хтось показати випадок, коли ви використовуєте "&" …
26 shell  nohup  fork 

3
Чи підтримує bash розгалуження, подібне до fork C ()?
У мене є сценарій, який я хотів би розщедрити в один момент, щоб дві копії одного сценарію працювали. Наприклад, я хотів би існувати наступний сценарій bash: echo $$ do_fork() echo $$ Якби цей сценарій bash справді існував, очікуваний результат буде: <ProcessA PID> <ProcessB PID> <ProcessA PID> або <ProcessA PID> <ProcessA …
25 shell  fork 

3
Як функція копіювання при записі fork () обробляє декілька форк?
Згідно з Вікіпедією (що може бути неправильним) Коли видається системний виклик fork (), створюється копія всіх сторінок, що відповідають батьківському процесу, завантажується в окреме місце пам'яті ОС для дочірнього процесу. Але це не потрібно в певних випадках. Розглянемо випадок, коли дитина виконує " exec" системний виклик (який використовується для виконання …
23 linux  c  fork 

1
Як працює вилка бомба?
ПОПЕРЕДЖЕННЯ НЕ намагайтеся запустити це на виробничій машині Читаючи сторінку Вікіпедії по цій темі, я, як правило, слідую за тим, що відбувається із наступним кодом: :(){ :|:& };: уривок опису Наступна вилка бомба була представлена ​​як мистецтво в 2002 році;56 його точне походження невідомо, але воно існувало на Usenet до …
22 bash  shell-script  zsh  fork 

4
Після fork (), де дитина починає його виконання?
Я намагаюся вивчити програмування UNIX і натрапив на питання щодо fork (). Я розумію, що fork () створює ідентичний процес поточного запущеного процесу, але з чого він починається? Наприклад, якщо у мене є код int main (int argc, char **argv) { int retval; printf ("This is most definitely the parent …
22 process  c  fork  api 

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.