Вопросы по теме 'context-switch'
Действительно ли потоки из нескольких процессов выполняются одновременно?
В операционной системе Windows с 2 физическими процессорами x86/amd64 (P0 + P1), запущенными 2 процессами (A + B), каждый с двумя потоками (T0 + T1), возможно (или даже часто) увидеть следующее:
P0:A:T0 работает одновременно с P1:B:T0
затем,...
1288 просмотров
schedule
31.03.2022
Process.Start() не создает новый процесс под тем же пользователем
У меня всегда было впечатление, что когда вы запускаете процесс как (domain\user) mydomain\myuser , при использовании Process.Start() он запускает этот новый процесс, используя те же учетные данные - mydomain\myuser .
Проблема, с которой я...
4082 просмотров
schedule
29.04.2022
в ядре linux структура данных thread_struct содержит как поля esp0, так и esp, в чем разница?
Это мое предположение:
esp0 инициализируется с помощью верхнего адреса стека ядра. когда стек ядра выделен и используется во время переключения процесса для инициализации tss->esp0, чтобы при переключении контекста из пользовательского режима в...
1862 просмотров
schedule
04.03.2024
VMM типа 1 и кольцо 1
Недавно я делаю домашнее задание по виртуализации. У меня вопрос, как VMM передает управление гостевому ядру и запускает этот код в кольце 1?
VMM типа 1: это классический VMM с ловушкой и эмуляцией. VMM работает непосредственно на оборудовании,...
626 просмотров
schedule
25.07.2023
Предотвратить переключение контекста в синхронизированном разделе кода (или измерить, а затем вычесть время, фактически не потраченное в потоке)
У меня многопоточное приложение, и в определенном разделе кода я использую Stopwatch для измерения времени операции:
MatchCollection matches = regex.Matches(text); //lazy evaluation
Int32 matchCount;
//inside this bracket program should not...
4501 просмотров
schedule
21.02.2024
Ленивое объединение FPU в Cortex-M4F
Я пишу код многопоточности для Cortex M4F. Все работает, и теперь я пытаюсь сделать переключение контекста FPU более эффективным с помощью ленивого стекирования.
Я прочитал AN298 и I. реализовал альтернативный подход, основанный на отключении...
2168 просмотров
schedule
16.06.2022
Возможно ли, чтобы ЦП выполнял переключение контекста после запуска исходного кода графического процессора (ядра cuda), который не был завершен?
По сути, при взаимодействии ЦП и ГП, если процесс, работающий на ЦП, инициирует ядро cuda, процесс все равно может выдавать свой код, если он не зависит от результата ядра cuda.
Но возможно ли, чтобы процесс, работающий над процессором, выполнял...
195 просмотров
schedule
28.09.2022
Почему регистры FPU не сохраняются и не восстанавливаются при «переключении контекста»?
Насколько я знаю, при переключении контекста некоторые регистры сохраняются и восстанавливаются, но почему регистры FPU не сохраняются? Нет ли огромного риска потерять их контент, если расписание появится в неподходящий момент?
740 просмотров
schedule
03.11.2022
Точность clock_gettime() в сценарии переключения контекста
Я пытаюсь «примерно» рассчитать время переключения контекста потока в системе Linux. Я написал программу, которая использует каналы и многопоточность для достижения этой цели. При запуске программы расчетное время явно неверно (см. вывод ниже). Я...
277 просмотров
schedule
26.07.2023
Почему Golang сохраняет только %rsp, %rip и %rbp (никаких других регистров, сохраняемых вызываемым пользователем) при переключении контекста?
В общих реализациях переключения контекста пользовательского потока (например, setjmp/longjmp и способ function return ) мы сохраняем и восстанавливаем регистры, сохраненные вызываемым пользователем, но golang сохраняет и восстанавливает только...
313 просмотров
schedule
10.02.2024
Как компьютеры переключаются между различными процессами (в основном это связано с ОС)?
How do computers switch between different processes (is it mainly an OS thing)?
c5f104380d2f4c4bf0c587f790a21817 Ранние компьютеры, такие как ENIAC, должны были вручную изменять свою программную память (также известную как память инструкций) для...
32 просмотров
schedule
30.05.2024