powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
12 сообщений из 12, страница 1 из 1
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38409148
В википедии пишут:
Переключение контекста
авторВо многих случаях ядро располагается в том же адресном пространстве, что и пользовательский процесс . При переключении контекста между user-space и kernel-space (и обратно), что, например, происходит при выполнении системных вызовов, ядро не трогает регистр CR3, тем самым сохраняя TLB
Это как?
А если у нас на системе несколько процессов, каждый с изолированным виртуальным адресным пространством, то как ядро может располагаться в каждом из них?
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38409161
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в той статье слегка наоборот написано.
Не ядро располагается в адресном пространстве процесса, а адресное пространство процесса принадлежит пространству ядра. В итоге процесс видит ядро, ядро видит все процессы, но процессы друг-друга не видят.
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38409163
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на мейнфреймах (z/OS) нет переключения контекста
там внутри адрес спейса есть все - и ядро и приложения и шаред память
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38409802
White Owlв той статье слегка наоборот написано.
Не ядро располагается в адресном пространстве процесса, а адресное пространство процесса принадлежит пространству ядра. В итоге процесс видит ядро, ядро видит все процессы, но процессы друг-друга не видят.
Хорошо, тогда если несколько процессов в адресном пространстве ядра, то как эти процессы не могут видеть друг друга если они все в одном адресном пространстве ядра?
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38409806
Новый Годна мейнфреймах (z/OS) нет переключения контекста
там внутри адрес спейса есть все - и ядро и приложения и шаред память
Т.е. там просто нет изоляции адресных пространств или вообще нет виртуальной памяти?
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38409865
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ядро в адресном пространстве проНовый Годна мейнфреймах (z/OS) нет переключения контекста
там внутри адрес спейса есть все - и ядро и приложения и шаред память
Т.е. там просто нет изоляции адресных пространств или вообще нет виртуальной памяти?

есть, некоторые диапазоны адресов просто не изолированы
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38409972
Новый Годядро в адресном пространстве пропропущено...

Т.е. там просто нет изоляции адресных пространств или вообще нет виртуальной памяти?

есть, некоторые диапазоны адресов просто не изолированы
А имеете ввиду в эти "некоторые диапазоны адресов" входят адреса mutex/cond_var/events и шаред памяти для IPC?

Ну переключение контекста все равно будет, просто реже - только при переключении потоков.
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38410174
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ядро в адресном пространстве проА если у нас на системе несколько процессов, каждый с изолированным виртуальным адресным пространством, то как ядро может располагаться в каждом из них?
Ну для начала, никто не запрещает замапить сто "виртуальных адресных пространств" на один и тот же участок оперативной памяти.
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38410270
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ядро в адресном пространстве проНовый Годпропущено...
есть, некоторые диапазоны адресов просто не изолированы
А имеете ввиду в эти "некоторые диапазоны адресов" входят адреса mutex/cond_var/events и шаред памяти для IPC?

нет, память которая доступна вообще всем "процессам" в системе
там терминология немножно другая

mutex/cond_var/events -- слишком высокоуровневые вещи в данном контексте
доступ к этой памяти обычно синхронизируется через CAS инструкцию

ядро в адресном пространстве проНу переключение контекста все равно будет, просто реже - только при переключении потоков.

"потоки" все в одном адресс спейсе
переключение контекста будет только при переключении адрес спейсов

а при системном вызове переключения контекста не будет
ядро "мапится" на один и тот же участок памяти в каждом адрес спейсе
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38410385
softwarerядро в адресном пространстве проА если у нас на системе несколько процессов, каждый с изолированным виртуальным адресным пространством, то как ядро может располагаться в каждом из них?
Ну для начала, никто не запрещает замапить сто "виртуальных адресных пространств" на один и тот же участок оперативной памяти.
И тогда будет "ядро располагается в том же адресном пространстве, что и пользовательский процесс ... тем самым сохраняя TLB ", исходный вопрос читали?
"сто "виртуальных адресных пространств"" - это сто раз обновить TLB.
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38410391
Новый Годядро в адресном пространстве пропропущено...

А имеете ввиду в эти "некоторые диапазоны адресов" входят адреса mutex/cond_var/events и шаред памяти для IPC?

нет, память которая доступна вообще всем "процессам" в системе
там терминология немножно другая
А что конкретно например содержится в этой памяти?

Новый Годядро в адресном пространстве проНу переключение контекста все равно будет, просто реже - только при переключении потоков.

"потоки" все в одном адресс спейсе
переключение контекста будет только при переключении адрес спейсов

а при системном вызове переключения контекста не будет
ядро "мапится" на один и тот же участок памяти в каждом адрес спейсе
А, т.е. не то, что в каждом виртуальном пространстве некая виртуальная область мапится на одну и ту же физическую область, а одна и та же виртуальная область мапится на одну и туже физическую область в разных процессах, т.е. одна и та же часть Page Table состоящая из ряда PTE используется сразу для нескольких виртуальных пространств?
Вообще интересная затея, а почему же это для x86 не сделали?
...
Рейтинг: 0 / 0
Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
    #38410470
Фотография Новый Год
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ядро в адресном пространстве проА что конкретно например содержится в этой памяти?

это так называемая CSA/ECSA
http://pic.dhe.ibm.com/infocenter/zos/v1r11/index.jsp?topic=/com.ibm.zos.r11.ieae100/iea2e16012.htm

данные приложений там хранятся
какие-нибудь контрол блоки
приложения эти обычно от вендора, типа субд

затея это конечно интересная, только очень опасная
например утечка памяти в CSA, или запись чего-нибудь по неверному адресу приведет к краху системы

а под x86 вообще пишет кто угодно, нет никакого шанса что все будут писать программы корректно
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Как можетядро располагаться в том же адресном пространстве,что и пользовательский процесс?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]