|
-23 / 0 / 2
Регистрация: 15.03.2013
Сообщений: 328
|
|
Реализация функции wait13.12.2013, 21:34. Показов 3306. Ответов 11
Метки нет (Все метки)
Где можно найти реализацию ф-ии wait в исходных текстах ядра? У меня стоит задание найти реализацию функции wait, которая ожидает завершение дочернего процесса и объяснить как она релизована, но я слышал что её реализации может и не оказаться, тогда будет необходимо пояснить почему её нет.
Простым поиском по ядру удалось найти файлы wait.c и несколько с таким же именем, но нигде нет реализации конкректно функции wait.
0
|
|
| 13.12.2013, 21:34 | |
|
Ответы с готовыми решениями:
11
pid_t wait |
|
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
|
|
| 14.12.2013, 01:09 | |
|
танкист34, Перед созданием процесса создаётся структура PCB (process control block), которая содержит список идущих подряд команд CPU, текущий стейт самого процесcа, поинтер на такюже структуру parent процесса, и если есть child процесса (организовано в виде обычного linked list, т.к. чалдов может быть много), и т.д. Что касается поля стейт процесса, то он может быть в 5 состояниях: started, ready, work, wait, terminated. Когда child процесс переходит в стейт terminated, он просто дёргает по поинтеру своего parenta, и извещает ему о том, чтоб он освободил ресурсы выделенные для этого child. Я думаю, что именно так организована функция wait.
0
|
|
|
-23 / 0 / 2
Регистрация: 15.03.2013
Сообщений: 328
|
|
| 14.12.2013, 02:12 [ТС] | |
|
0
|
|
|
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
|
|
| 14.12.2013, 02:43 | |
|
танкист34, это всё на самом деле
0
|
|
|
-23 / 0 / 2
Регистрация: 15.03.2013
Сообщений: 328
|
|
| 14.12.2013, 03:17 [ТС] | |
|
0
|
|
|
-23 / 0 / 2
Регистрация: 15.03.2013
Сообщений: 328
|
|
| 15.12.2013, 08:28 [ТС] | |
|
тема актуальна
0
|
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
||||||
| 15.12.2013, 08:34 | ||||||
|
Ну можно выкачать исходники ядра и сделать что-то типа
1
|
||||||
|
-23 / 0 / 2
Регистрация: 15.03.2013
Сообщений: 328
|
|
| 15.12.2013, 12:12 [ТС] | |
|
0x10, а почему реализация хранится не, например, в wait.c, а в exit.c ? можете пояснить.. Запутался между реализациями функций в библиотеках и в ядре
0
|
|
|
3258 / 2060 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|||||||
| 15.12.2013, 12:23 | |||||||
0
|
|||||||
|
-23 / 0 / 2
Регистрация: 15.03.2013
Сообщений: 328
|
|
| 15.12.2013, 12:48 [ТС] | |
|
0x10, я по-моему распутал кашу в голове, благодая этому
Каждая конкретная Linux система создается для работы одного или нескольких приложений. Однако, кода самого приложения недостаточно, чтобы извлечь необходимый пользователям сервис из аппаратуры. Большинство приложений использует в своей работе обращения к функциям библиотек. Стандарт LSB Core 3.1 определяет следующие системные библиотеки: libc, libcrypt, libdl, libm, libpthread, librt, libutil, libpam, libz, libncurses. В современных Linux системах интерфейсы этих системных библиотек реализуются реальными библиотеками glibc, Linux-PAM, zlib и ncurses, которые на самом деле предоставляют большее число интерфейсов, чем 1532 функции, определенные в LSB Core (т.е. LSB Core специфицирует некоторое подмножество интерфейсов реальных библиотек). Функции системных библиотек можно классифицировать следующим образом по степени взаимодействия с ядром Linux. 1)Реализация функции полностью содержится в библиотеке и ядро не используется (например strcpy, tsearch). 2)В библиотеке реализуется тривиальная “обертка” (wrapper) для вызова соответствующего интерфейса ядра (например read, write). 3)Реализация функции содержит как вызовы системных интерфейсов ядра (причем возможно нескольких разных), так и часть кода в самой библиотеке (например pthread_create, pthread_cancel).
0
|
|
|
интересующийся
311 / 282 / 93
Регистрация: 25.09.2010
Сообщений: 1,056
|
|
| 15.12.2013, 13:37 | |
|
0x10, Это всего лишь сигнал usermoda (простая инструкция с параметрами). А вот как реагирует на него ядро, надо смотреть в сорцах ядра.
0
|
|
|
-23 / 0 / 2
Регистрация: 15.03.2013
Сообщений: 328
|
|
| 15.12.2013, 14:46 [ТС] | |
|
xtorne21st , вы про какой именно его пост говорите?
0
|
|
| 15.12.2013, 14:46 | |
|
Помогаю со студенческими работами здесь
12
Sleep or Wait WAIT на CODESYS 2.3 Функция wait Блокировка на Wait Proc.wait Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2.
Задача: вывести данные из ТЧ нетипового документа. . .
|