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

6
Обробляють нащадків
Я намагаюся створити контейнер для процесів. Контейнер запустить інші програми. Наприклад - bash-скрипт, який запускає запущені фонові завдання із використанням '&'. Важливою особливістю, яку я переслідую, є така: коли я вбиваю контейнер, все, що було породжене під ним, повинно бути вбито. Не просто спрямовують дітей, а й їхніх нащадків. Коли …

4
Як передати пароль до дочірнього процесу?
Передача пароля в командному рядку (дочірньому процесу, розпочатому з моєї програми), як відомо, є небезпечним (тому що його можуть бачити навіть інші користувачі з командою ps). Чи правильно передавати це як змінну середовища? Що ще я можу використати для передачі? (За винятком змінної середовища) найпростішим рішенням, здається, є використання труби, …

4
Як працюють виделка та виконати?
Я не маю великого досвіду, просто намагаюся долучитися до процесів, як вони інтерпретують обладнання на рівні користувача. Отже, коли команда випускається з оболонки, fork()успадковує дочірній процес від неї та exec()завантажує дочірній процес у пам'ять та виконує. Якщо дочірній процес містить усі атрибути батьківського процесу (що є оригінальним процесом), то в …
17 fork  exec 

1
Чому ці бомбовидні бомби працюють по-різному і яке значення & в ньому?
Я розумію, як працює звичайна вилка бомба, але я не дуже розумію, для чого потрібна & в кінці загальної бомби вилка бомба і чому ці сценарії поводяться по-різному: :(){ (:) | (:) }; : і :(){ : | :& }; : Перший викликає сплеск використання процесора перед тим, як повернути …

3
Чому fork () повинен бути розроблений для повернення дескриптора файлу?
На своїй веб-сторінці про трюк з самовідводу Дан Бернштейн пояснює стан перегонів select()та сигналів, пропонує вирішення та робить висновок, що Звичайно, правильною річчю було б fork()повернути дескриптор файлу, а не ідентифікатор процесу. Що він має на увазі під цим - це щось про те, щоб дозволити select()дочірнім процесам обробляти зміни …

1
Як саме типова оболонка «вилка бомба» називає себе двічі?
Переглянувши відомі питання Fork Bomb на Askubuntu та багатьох інших сайтах Stack Exchange, я не зовсім розумію, що всі говорять, як це очевидно. Багато відповідей ( найкращий приклад ) говорять про це: " {:|: &}означає запустити функцію :і знову надіслати її результат :функції" Ну, що саме є результатом :? Що …

2
Дескриптор файлу та виделка
Якщо дитина роздвоєна, вона успадковує дескриптори файлів батьків, якщо дитина закриє дескриптор файлу, що буде? Якщо дитина починає писати, що трапиться з файлом наприкінці батьків? Хто керує цими невідповідностями, ядром чи користувачем? коли процес викликає closeфункцію закриття певного відкритого файлу через дескриптор файлу. У таблиці файлів процесу кількість посилань зменшується …


1
fork () і як сигнали надходять до процесів
Я програму, яку я написав у C fork (), вийшов із дочірнього процесу. Жоден процес не припиниться. Якщо я запускаю програму з командного рядка і натискаю control-c, який процес (и) отримає сигнал переривання?
13 process  signals  fork 

5
Як повністю розщедрити команду оболонки, яка використовує перенаправлення
Я написав досить багато скриптів оболонки протягом багатьох років (але я, звичайно, не системний адміністратор), і є щось, що завжди спричиняло мені проблеми: як я можу розщедрити команду оболонки, захищену від зависання на задньому плані зі сценарію Bash ? Наприклад, якщо у мене це є: command_which_takes_time input > output Як …
13 bash  scripting  nohup  fork 

2
Яка різниця між fork () та vfork ()?
Я хотів би детально розібратися в різниці між fork () та vfork (). Я не зміг повністю перетравити сторінку людини. Я також хотів би уточнити коментар одного з моїх колег: " У поточному Linux немає vfork (), навіть якщо ви його зателефонуєте, він буде внутрішньо викликати fork () ."


3
Коли вилки процесу копіюють його віртуальну або резидентну пам'ять?
Стандартний спосіб створення нових процесів в Linux полягає в тому, що слід пам'яті батьківського процесу копіюється і стає середовищем дочірнього процесу, поки не execvбуде викликано. Про який слід пам’яті ми говоримо, віртуальну (що вимагає процес) або резидентну (що насправді використовується)? Мотивація: у мене є пристрій з обмеженим простором підкачки та …

4
Чому дитина vfork або fork повинен викликати _exit () замість exit ()?
З чоловічої сторінки vfork(): vfork () відрізняється від fork () тим, що батько призупиняється, поки дитина не викличе виконувати (2) або _exit (2). Дитина ділиться всією пам’яттю зі своїм батьком, включаючи стек, доки дитина не видасть execve (). Дитина не повинна повертатися з поточної функції або виклику виходу (), але …
12 c  system-calls  fork  exit 

4
Коли самостійно викликати fork () та exec ()?
Я дізнаюся про команди fork () та exec (). Схоже, fork () і exec () зазвичай називаються разом. (fork () створює новий дочірній процес, а exec () замінює поточне зображення процесу новим.) Однак у яких сценаріях ви можете викликати кожну функцію самостійно? Чи є такі сценарії?

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