Я хотел бы знать, как контейнеры Docker управляются операционной системой.Я мог бы найти некоторые объяснения здесь: https://stackoverflow.com/a/47784145/11377751,, но я не могу хорошо понять.
Я знаю основы операционной системы (понятия о PCB, ram, CPU, ядре, syscall и т. Д.).
Но я не понимаю, как ОС управляет контейнерами:
- Процессы контейнеров или они "эмулируются" механизмом Docker (который будет единственным процессомсо своими нитками)?Как я могу представить контейнер в оперативной памяти?
- Если в моем контейнере я запускаю приложение C, содержащее «fork ();», которое выполняет вызов ядра: контейнер или Docker Engine.?Кто дублирует печатную плату?Или "malloc (..);"?
- Какова концепция пространства имен в ядре?в баран?Эти таблицы определяют права доступа или что-то еще?Почему в википедии говорится, что это понятие необходимо для контейнеров, зная, что в схемах Docker Engine представлен между контейнерами и ядром?
image:
Thisэто изображение, которое я нашел здесь: https://stackoverflow.com/a/42111368/11377751
заранее большое спасибо