LINUX.ORG.RU

История изменений

Исправление tz4678, (текущая версия) :

Смотри: ты когда-нибудь задумывался почему можно загрузить только одну операционную систему, а не несколько сразу? - BIOS, Загрузчик, Линукс или Винду… Вообщем проц может запускать только одно приложение и это приложения - Операционная система. Все остальные приложения - это процессы твоей операционки. Ну как в интерпретаторе с зелеными потоками, есть основной цикл и в нем контекст потоков переключается, выполняются разные опкоды… Ну так у тебя и операционка по очереди выполняет, например, по 10 инструкций каждого процесса… Там, конечно, все сложнее, процессоры стали многоядерными с реальной многозадачностью, но в приницпе оно верно… Так вот дальше с виртуалками. Твоя запущенная виртуалка - это всего лишь процесс, причем процесс этот будет с существенным оверхедом, потому как запускается ядро, оно там рулит своими процессами и это все рулится хостом. Оверхед этот где-то в виде большего расхода процессорного времени на 20-40%. С докером все несколько иначе, так как контейнеры используют ядро хоста, те это обычные процессы, а не эмуляция. Если ты когда-либо, например, при установке арча делала чрут чтобы потом обновить пакеты… ну все так же и работает. Оверхед в этом случае маленький. Все накладные расходы по сути в сотне другой мегабайт (в среднем около 30-60 без учета самого приложения, которое может жрать память гигами), загружаемых в оперативку. Тут и плюсы докера нарисовываются: ты можешь иметь раличные версии пакетов в системе, каких-то либ и тп (но не ядра). Какой вывод? - Докер использовать предпочтительнее всегда, а виртуалки нужны только чтобы запускать бздю илт венду

Исправление tz4678, :

Смотри: ты когда-нибудь задумывался почему можно загрузить только одну операционную систему, а не несколько сразу? - BIOS, Загрузчик, Линукс или Винду… Вообщем проц может запускать только одно приложение и это приложения - Операционная система. Все остальные приложения - это процессы твоей операционки. Ну как в интерпретаторе с зелеными потоками, есть основной цикл и в нем контекст потоков переключается, выполняются разные опкоды… Ну так у тебя и операционка по очереди выполняет, например, по 10 инструкций каждого процесса… Там, конечно, все сложнее, процессоры стали многоядерными с реальной многозадачностью, но в приницпе оно верно… Так вот дальше с виртуалками. Твоя запущенная виртуалка - это всего лишь процесс, причем процесс этот будет с существенным оверхедом, потому как запускается ядро, оно там рулит своими процессами и это все рулится хостом. Оверхед этот где-то в виде большего расхода процессорного времени на 20-40%. С докером все несколько иначе, так как контейнеры используют ядро хоста, те это обычные процессы, а не эмуляция. Если ты когда-либо, например, при установке арча делала чрут чтобы потом обновить пакеты… ну все так же и работает. Оверхед в этом случае маленький. Все накладные расходы по сути в сотне другой, загружаемых в оперативку. Тут и плюсы докера нарисовываются: ты можешь иметь раличные версии пакетов в системе, каких-то либ и тп (но не ядра). Какой вывод? - Докер использовать предпочтительнее всегда, а виртуалки нужны только чтобы запускать бздю илт венду

Исправление tz4678, :

Смотри: ты когда-нибудь задумывался почему можно загрузить только одну операционную систему, а не несколько сразу? - BIOS, Загрузчик, Линукс или Винду… Вообщем проц может запускать только одно приложение и это приложения - Операционная система. Все остальные приложения - это процессы твоей операционки. Ну как в интерпретаторе с зелеными потоками, есть основной цикл и в нем контекст потоков переключается, выполняются разные опкоды… Ну так у тебя и операционка по очереди выполняет, например, по 10 инструкций каждого процесса… Там, конечно, все сложнее, процессоры стали многоядерными с реальной многозадачностью, но в приницпе оно верно… Так вот дальше с виртуалками. Твоя запущенная виртуалка - это всего лишь процесс, причем процесс этот будет с существенным оверхедом, потому как запускается ядро, оно там рулит своими процессами и это все рулится хостом. Оверхед этот где-то в виде большего расхода процессорного времени на 20-40%. С докером все несколько иначе, так как контейнеры используют ядро хоста, те обычные процессы. Если ты когда-либо, например, при устьановке арча делала чрут чтобы потом обновить пакеты… ну все так же и работает. Оверхед в этом случае маленький. Все накладные расходы по сути в сотне другой, загружаемых в оперативку. Тут и плюсы докера нарисовываются: ты можешь иметь раличные версии пакетов в системе, каких-то либ и тп (но не ядра). Какой вывод? - Докер использовать предпочтительнее всегда, а виртуалки нужны только чтобы запускать бздю илт венду

Исходная версия tz4678, :

Смотри: ты когда-нибудь задумывался почему можно загрузить только одну операционную систему, а не несколько сразу. BIOS, Загрузчик, Линукс или Винду… Вообщем проц может запускать только одно приложение и это приложения - Операционная система. Все остальные приложения - это процессы твоей операционки. Ну как в интерпретаторе с зелеными потоками, есть основной цикл и в нем контекст потоков переключается, выполняются разные опкоды… Ну так у тебя и операционка по очереди выполняет, например, по 10 инструкций каждого процесса… Там, конечно, все сложнее, процессоры стали многоядерными с реальной многозадачностью, но в приницпе оно верно… Так вот дальше с виртуалками. Твоя запущенная виртуалка - это всего лишь процесс, причем процесс этот будет с существенным оверхедом, потому как запускается ядро, оно там рулит своими процессами и это все рулится хостом. Оверхед этот где-то в виде большего расхода процессорного времени на 20-40%. С докером все несколько иначе, так как контейнеры используют ядро хоста, те обычные процессы. Если ты когда-либо, например, при устьановке арча делала чрут чтобы потом обновить пакеты… ну все так же и работает. Оверхед в этом случае маленький. Все накладные расходы по сути в сотне другой, загружаемых в оперативку. Тут и плюсы докера нарисовываются: ты можешь иметь раличные версии пакетов в системе, каких-то либ и тп (но не ядра). Какой вывод? - Докер использовать предпочтительнее всегда, а виртуалки нужны только чтобы запускать бздю илт венду