Внутренности Linux - КИТ 2024

  Рет қаралды 2,990

Young&&Yandex

Young&&Yandex

6 күн бұрын

Спикер: Андрей Мичурин, руководитель группы разработки компонентов Деплоя
Рассмотрим, как работают планировщик процессов и подсистема виртуальной памяти. Проговорим, для чего нужны прерывания. И узнаем, что такое cgroup и namespace.

Пікірлер: 11
@user-yo8wm5bd6z
@user-yo8wm5bd6z 4 күн бұрын
Спасибо за очень интересную лекцию!
@michurinandrey
@michurinandrey Күн бұрын
Спасибо за просмотр и интерес к технологиям. Хочу отметить, что в данной лекции я допустил несколько неточностей, ошибок и опечаток. * 17:02 clone() будет видно, если трейсить bash из которого я запускаю strace * 25:01 обрабатывать нельзя только kill * 42:49 Stopped обозначается T * 44:33 Terminated обозначается X * 40:54 LA учитывает не только R, но процессы с D стейтом. * 2:44:21 utc namespace - про имя хоста Будьте внимательны!
@ep4sh
@ep4sh Күн бұрын
17:02 немного тут Вас не понял - "этот вызов имел под собой и fork и exec" - мы запускаем strace, который также создаёт child процесс. Чтобы увидеть желаемый вызов нужно запустить второй bash (в соседнем pty, например), в котором запустить strace c аттачем по pid на первый баш (strace -p $PID) - то системный вызов (clone, все же это Linux) будет видно.
@michurinandrey
@michurinandrey Күн бұрын
Очень крутое замечание! Без clone() никуда, действительно надо стрейсить баш из которого вызываем, что бы поймать clone()! Тут главная мысль, что все пишут про fork() && exec(), а по факту, мы видим другое clone && execve.
@ep4sh
@ep4sh 11 сағат бұрын
2:02:56 где-нибудь тут можно было упомянуть про TLB, наверно про него и был вопрос (косвенно, если я верно понял..)
@user-xz6mo6wn4d
@user-xz6mo6wn4d 2 күн бұрын
40:54 LA - это не количество процессов, исполняющихся на CPU (в состоянии Running). Это отношение всех процессов (с состояниями R и D) к имеющимся ресурсам CPU
@michurinandrey
@michurinandrey 2 күн бұрын
Спасибо ! Я это подсветил в своем комментарии выше. Ошибки опечатки и неточности описываю там .
@fish9370
@fish9370 14 сағат бұрын
Будто Роберта Лава перечитал. Конечно поверхностно, но для студентов наверно глубже пока и не надо
@michurinandrey
@michurinandrey 12 сағат бұрын
Я в лекции прям явно упоминал, что это краткий пересказ Роберта Лава, в моей интерпретации и с моими ошибками. Спасибо за просмотр.
@user-rb6fv4fe2v
@user-rb6fv4fe2v 3 күн бұрын
Нельзя так нагло обманывать неокрепшие умы детей про load average. Когда в Linux впервые появились средние значения нагрузки, они отражали только потребность в ресурсах процессора, как и в других ОС. Но позднее они претерпели изменения, в них включили не только выполняемые задачи, но и те, что находятся в непрерываемом состоянии (TASK_UNINTERRUPTIBLE или nr_uninterruptible). Это состояние используется ветвями кода, которые хотят избежать прерывания по сигналам, в том числе задачами, блокированными дисковым вводом/выводом, и некоторыми блокировками. Вы могли уже сталкиваться с этим состоянием: оно отображается как состояние "D" в выходных данных ps и top. На странице ps(1) его называют «uninterruptible sleep (usually IO)».
@michurinandrey
@michurinandrey 3 күн бұрын
Спасибо за уточнение! Действительно, похоже сейчас это так работает.
Основы Linux: процессы и их свойства
1:26:49
Increíble final 😱
00:37
Juan De Dios Pantoja 2
Рет қаралды 107 МЛН
МАМА И STANDOFF 2 😳 !FAKE GUN! #shorts
00:34
INNA SERG
Рет қаралды 3,6 МЛН
Чего ожидать от HTTP/3 + Go
51:07
Нина Пакшина
Рет қаралды 83
КАК УСТРОЕН ИНТЕРНЕТ. НАЧАЛО
41:58
Alek OS
Рет қаралды 481 М.
КАК НАЧАТЬ ПОНИМАТЬ LINUX (2024)
21:10
PLAFON - Канал о линуксе
Рет қаралды 80 М.
Структура файлов и каталогов в Linux
20:28
Aleksey Samoilov
Рет қаралды 364 М.
Я 20 лет писал код и вот что я думаю
31:01
Sergey Nemchinskiy
Рет қаралды 29 М.