172 похожих чатов

Чет меня тут спросили, работает ли nginx в user или

kernel спейсе и я поплыл :/

Вот что я нагуглил (это вообще релевантный источник?):
http://www.haifux.org/lectures/217/netLec5.pdf

На 5 и 6 странице написано, что все что с 5 уровня OSI, это находится в user space.
Но тут же пишут, что чтобы создать сокет (который на 5 уровне), нужен системный вызов...
Разве системный вызов это уже не уровень ядра? Или системный вызовы могут и не использовать kernel space?
Ну вот я создам без ядра этот сокет, а толку с него, если через него нужно передавать данные (tcp и ip, уровень 4 и 3) через ядро?

Что вообще значит "работает в kernel space"? Когда я запустил приложение, судя по этой картинке:
https://thecustomizewindows.cachefly.net/wp-content/uploads/2012/07/Kernel-of-Operating-System.jpg
оно будет в user space, а если я начну в нем использовать файлы и всякие copy(), это будет значит что приложение перешло на уровень ядра или я какую-то глупость говорю? Как вообще понять, на уровне ядра или нет работает какое-то приложение?

9 ответов

21 просмотр

Юзерспейс конечно. С чего ему в кернелспейсе быть?

Terrifin- Автор вопроса
Elenhil
Юзерспейс конечно. С чего ему в кернелспейсе быть?

Он же сокеты использует для подключения пользователей, разве для сокетов не нужен уровень ядра?

а это не то, у nginx есть главный процесс, который работает от рута, благодаря которому он может открыть привилегированный порт, и порождает чилдренов под пользаком nginx? lkz j,hf,jnrb pfghjcjd? ghbktnf.ob[ yf gjhn&

Я предполагаю, что приложение, которое работает в kernel space — это приложение, которое требует установки модулей ядра для работоспособности.

Terrifin
Он же сокеты использует для подключения пользовате...

вовсе нет, кернелспейс это модули ядра, расширяющие его функциональность (например драйверы, ну или модули, кто как называет), весь прикладной софт работает в userspace

Terrifin
Он же сокеты использует для подключения пользовате...

У него для этого есть способность дёрнуть сисколл как раз. А софту, которое работает в kernel space, нет необходимости дёргать сисколлы — софт, работающий в ядре, скорее именно даёт возможность софту из юзерспейса сисколл дёрнуть. То есть он не является чем-то использующим сисколлы — софт в кёрнел-спейсе это и есть сисколл. В энном приближении, сильно упрощая — примерно так. Говоря практическим языком — софт работающий в кёрнел спейсе нельзя неправильно скорее чаще не надо докеризировать. Если для чего-то есть докер-контейнер на докерхабе — скорее всего, это самое чего-то работает в юзерспейсе

Terrifin
Он же сокеты использует для подключения пользовате...

Говоря ещё одним практическим гуманитарным языком — после запуска софта в kernel space можно сделать ps ax и найти в нём новый процесс, завёрнутый в "[]"

А ты не сдаешься прям. Но вообще-то было такой кernel-space веб-сервер Tux . Умер или уничтожен за кулисами публичного шоу в конце девяностых.

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
53
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Компания Elif ищет менеджера проектов, который будет заниматься поиском и ведением новых проектов. Прежде чем приступить к работе, вам нужно пройти наш недельный курс, где вы ...
Elif
1
Святости? Когда дотумкаешь что открытое лучше закрытого - кастани
zamtmn
9
я имею в виду официально интегрированный в телегу? в том плане что не сливает переписку с пользователем?
Andrey
9
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
19
Кто-нибудь решал проблему с автоматическим скроллингом к выбранной ячейке в TDBGrid в Lazarus? Проблема в том, что есть допустим 3 столбца, третий столбец виден наполовину, вк...
Дмитрий Логинов
1
Приветствуем всех! Устали без проектов? Если вы программист и хотите получать стабильные заказы, компания Elif предлагает вам недельный курс по поиску проектов и их ведению. ...
Elif
1
ты вот так хотел? а пурджить arg бесполезно это не макрос, вот рестроить arg смысл есть, но в конце области видимости, а не перед началом новой области видимости.
ProMiNick
7
Карта сайта