Пишем рантайм Golang на чистом C | Часть №1 | Планировщик Go

preview_player
Показать описание

Репозиторий с кодом:

Консультации:

Таймкоды:
00:00 - Введение
00:14 - Процессы в ОС
00:32 - Ресурсы процессов
00:52 - Потоки в ОС
01:09 - Контекст потоков
01:16 - Планировщик ОС
01:44 - Context switching в ОС
02:38 - Проблемы context switching
03:36 - Context switching в приложении
04:58 - Совместный context switching
05:23 - Планировщик в приложении
05:46 - Отдельный контекст планирования
06:05 - Процесс планирования корутин
06:32 - Сопрограммы и подпрограммы
07:05 - Сообщество на Boosty
07:25 - Реализация примитивного планировщика
16:32 - Заключение

Golang планировщик. Golang рантайм Golang runtime. Golang внутренности. Golang под капотом. Golang внутри. Горутины. Горутины golang. Горутины внутреннее устройство. Golang уроки. Рантайм Golang. Golang собеседование. Собеседование golang. Очереди в планировщике go. Потоки операционной системы. Concurrency в golang. Райнтайм go. Scheduler go. Goroutine. Горутины в go. Планировщик golang. Горутины и каналы. Golang concurrency. Golang горутины. Корутины. Sysmon. Планировщик ос.

#айти #программирование #программист #golang #concurrency
Рекомендации по теме
Комментарии
Автор

Видос кайф, на одном дыхании посмотрел и наконец понял как корутины работают. Было бы круто от тебя увидеть видос про gRPC и микросервисы

DotaPsihopat
Автор

Большое спасибо, за такие видео. Очень ценю Вашу работу, сильно мне помогаете.

mikhaildiesperov
Автор

Спасибо! Как всегда отличный материал!

wildjoe
Автор

Очень интересно, спасибо. Всегда было интересно, как это работает. Оказалось, что все не так сложно. Успехов :)

alexanderommm
Автор

Сразу вспомнился крутой и сложный курс Романа Липовского из МФТИ по concurrency, назывался вроде Теория и практика многопоточной синхронизации

MIKITAMITSIUSHOU
Автор

Круто! Продолжай пожалуйста, не забрасывай)

qrthack
Автор

Что писать следующим шагом - netpoller или возможность масштабирования на несколько потоков ОС?

vladimir_balun_programming
Автор

8:29 Дело в том, что 2 << 20 -- это не 2 килобайта стека.
Или из-за инфляции это теперь -- как 2 килобайта раньше?
И потом, так макросы не пишут, -- выражение всё-таки, требуется в скобки взять, а то разорвёт приоритетами, если я приплюсовать решу: #define STACK_SIZE (2 << 20)
Это, по всей видимости, из-за влияния Golang'а?

billjohnes
Автор

присоединяюсь к вопросу, где можно почитать и узнать про источники (книги, видео, статьи) на тему создания рантайма гошного и какими источниками Владимир руководствовался.

было очень интересно посмотреть, спасибо за труды!

sergiusnovikov
Автор

Где можно почитать или посмотреть про выгрузку виртуальных страниц на жесткий диск 3:23? и вообще про оптимизации в linux, и оптимизации в железе (например кэши у процессоров)

Cake-tues
Автор

Спасибо, очень интересно! С нетерпением жду продолжения!

sovrinfo
Автор

Спасибо, интересное видео!
Я только не смог найти ответ на вопрос - а зачем писать планировщик Go на С)?

hurricane-rus
Автор

Я правильно понимаю, что если я планирую стать backend разработчиком, я жолжен во всем этом разбираться? Если да - то с чего начать ? Есть path какой нибудь ? При этом получения высшего образования не рассматривается

nnnabbot
Автор

Не самая лучшая идея использовать POXIX setcontext, getcontext и прочее для переключения.
Хотя как пример для ютуба подойдет.

k_morozov
Автор

Привет! Какую литературу использовали? Поделитесь источниками пожалуйста:)

BaatarSanzhiev
Автор

Добрый день! Если я напишу не функцию print, а какую-то другую реализацию чего-то - то я так понимаю мне нужно самому контролировать и расставлять в нужные места для дергания вызов sheduler_park_coroutine. Но если это такой же рантайм как в Golang, то в какой момент времени в Golang происходит дергание sheduler_park_coroutine или его подобия? И как на уровне go происходт вставка этой скрытой чудо функции?

hack-cpp
Автор

Владимир а ты все помнишь что ты в видео раньше рассказывал? я просто столько не могу помнить. что то да вылетает

helloworld-fvkx
Автор

Ссылка на boosty не валидная (последние символы)

ilsaffff
Автор

Ага, всё таки есть у тебя контекст свичинг.

onkelen
Автор

Прикольный чел. И материал топ. Жалко что скуф или(и) гей.

brucewayne