home.social

#переключение_контекста — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #переключение_контекста, aggregated by home.social.

fetched live
  1. ИИ заберёт тексты и код. Но это никогда не было главной работой человека. Часть 3

    В третьей части серии разбираем, почему такая универсальность не всегда помогает системе. На практике она может обернуться постоянным переключением контекста, размытыми зонами ответственности и задачами без понятного владельца. 🔎 Внутри: объединение ролей, цена переключения контекста, границы ответственности, ошибки на стыках команд, «спагетти-система» и разница между настоящей универсальностью и попыткой собрать несколько профессий в одном человеке. Заходите и делитесь в комментариях, где в вашей работе проходит граница между полезной универсальностью и перегрузом

    habr.com/ru/companies/X5Tech/a

    #универсальный_специалист #роли #itкоманды #зоны_ответственности #переключение_контекста #управление_разработкой #организационная_структура #системное_мышление #автоматизация #искусственный_интеллект

  2. 64 байта и одна константа: разбор переключения контекста в ядре на Rust

    В прошлый раз я писал про потерянное пробуждение и получил в комментариях справедливое замечание, что примитив там классический. Так и есть. Сегодня про место, где классики меньше: как в моём ядре устроено переключение контекста, и почему ассемблер там знает смещение поля в структуре Rust. Это неприятная связь. Ассемблеру нужен байтовый доступ к сохранённым регистрам, а раскладку структуры определяет компилятор. Если эти двое разойдутся во мнениях, вы не получите ошибку компиляции. Вы получите ядро, которое пишет регистры мимо и падает где-то далеко от места ошибки.

    habr.com/ru/articles/1068066/

    #rust #ассемблер #переключение_контекста #ядро #операционные_системы #системное_программирование #x8664 #no_std #fpu #xsave

  3. Эволюция подходов к написанию корутин от Си до С++20. Часть 2. Переходим от без стековых сопрограмм к стековым

    В прошлой статье был рассмотрен процесс создания без стековых сопрограмм на основе библиотеки прото потоков. При этом вся работа по хранению состояния сопрограммы и сохранению ее параметров полностью ложится на плечи программиста. В данной статье я хочу рассказать о том, как можно автоматизировать выполнение этих задач при помощи стековых корутин, рассмотрю 3 способа передачи управления от одной сопрограммы к другой, и опишу с какими проблемами приходиться сталкиваться при создании стековых корутин. Продолжим писать на языке Си и добавим ассемблер. Для начала вспомним сопрограмму для вычисления чисел Фибоначчи, рассмотренную в предыдущей статье. Для её корректной все переменные, необходимые для работы алгоритма, а также состояние выполнения сопрограммы приходилось хранить в отдельной структуре, передаваемой сопрограмме в качестве параметра. Теперь я хочу избавиться от этой структуры и хранить состояние корутины при помощи локальных переменных, как это делается в обычных функциях. Функции хранят локальные переменные в стеке, следовательно, нам также нужен стек. Под обычной я подразумеваю функцию, определённую синтаксисом языка, с указанием возвращаемого типа, имени функции, а также её параметров. Однако, использовать стек как это делается в обычных функциях мы не можем из-за того, что сопрограмма должна приостанавливать свое выполнение и передавать управление вызывающему коду, а при повторном вызове продолжать свою работу. Обычная функция в Си передает управление вызывающему коду при помощи оператора return. При этом область стековой памяти, хранящая локальные переменные, больше не принадлежит функции.

    habr.com/ru/articles/961852/

    #стековая_корутина #продолжение #переключение_контекста

  4. flowOn vs withContext: правильное переключение потоков в Flow в Kotlin

    Привет, Хабр! Сегодня мы рассмотрим, как правильно переключать контексты в Kotlin Flow и почему flowOn — это не то же самое, что withContext .

    habr.com/ru/companies/otus/art

    #kotlin #Kotlin_Flow #корутины_Kotlin #flowOn #withContext #переключение_контекста #CoroutineDispatcher #DispatchersIO #DispatchersDefault

  5. [Перевод] Переключение между контекстами убивает эффективность разработчиков на корню

    Я программист. Меня всё время отвлекают, и я хочу об этом поговорить. Вы когда-нибудь задумывались, что сильнее всего подрывает эффективность работы? Много чего. Но мы часто недооцениваем один фактор, который выделяется на фоне остальных. Каждое короткое сообщение, которое вы отправляете коллеге в Slack, отнимает у него 23 минуты продуктивной работы . И это далеко не всё. Я работаю с командами разработчиков вот уже десять лет, и мы постоянно недооцениваем вред, который нам причиняют такие отвлекающие факторы. В этой статье разбираемся, почему переключение между контекстами обходится так дорого и что с этим делать.

    habr.com/ru/companies/netology

    #таймменеджмент #состояние_потока #отвлечение #отвлекающие_факторы #концентрация #усталость #фокусировка #переключение_контекста #поток #хороший_код

  6. [Перевод] Xv6: учебная Unix-подобная ОС. Глава 7. Планирование процессов

    Глава расскажет, что такое мультиплексирование процессов, как xv6 переключает процессы, как xv6 синхронизирует процессы с помощью sleep и wakeup, как работает семафор, как работает канал (pipe), как случаются инверсии приоритетов и образуются конвои процессов, как правильно убить процесс и укротить грохочущее стадо процессов.

    habr.com/ru/articles/801567/

    #xv6 #семафор #переключение_контекста #мультиплексирование #условные_переменные #планировщик #sleep #wakeup #взаимоблокировки #каналы

Share on Mastodon

Enter the server where you have an account.