Процессы и потоки в операционной системе

Поделиться
HTML-код
  • Опубликовано: 17 мар 2024
  • Последовательность действий, направленная на достижение поставленной цели - это наш процесс!
    #МГТУ кафедра ИУ9
    #operatingsystem #операционнаясистема

Комментарии • 138

  • @stepankins4451
    @stepankins4451 3 месяца назад +119

    Минута молчания в конце как всегда прекрасна😅

    • @user-fv1fh4ze1q
      @user-fv1fh4ze1q 3 месяца назад +5

      Это прям стиль!

    • @timur-yusipov
      @timur-yusipov 3 месяца назад +4

      Взгляд в душу))

    • @vadimf6328
      @vadimf6328 3 месяца назад +16

      Это он через экран смотрит на зрителей и определяет для себя зашла ли тема)

    • @timandr7540
      @timandr7540 3 месяца назад +19

      К тому моменту просто уже все данные прочитаны и воспроизведены, а исполняемая программа ещё не завершена... Вот и получается пауза.

    • @vadimf6328
      @vadimf6328 3 месяца назад

      @@timandr7540 system_pause();

  • @user-wu3vd7dd2r
    @user-wu3vd7dd2r 3 месяца назад +33

    закончил физтех в далеком 2016м, весь материал на этот момент приходится знать по работе и так. Но структурированность и подача материала не оставляют шанса на пропуск новых видео. Поделился каналом со всеми кому могло быть релевантно)

    • @abragin
      @abragin  3 месяца назад +3

      Огромное спасибо! Очень приятно, что растёт не просто число просмотров, а количество подписчиков

  • @skiramish
    @skiramish 3 месяца назад +23

    мне кажется или лектор становится чуть улыбчивее с каждым видео ? это или весна так радует или поглощенные души с весенним настроением отражаются на лице этого некроманта?)

  • @Optimagorix
    @Optimagorix 3 месяца назад +14

    Концовки шедевр

  • @user-go2ni5oe9k
    @user-go2ni5oe9k 3 месяца назад +13

    Это Т-1000, мимикрирующий под доктора Брагина

  • @user-xq4ft9yu2c
    @user-xq4ft9yu2c 3 месяца назад +23

    Сделайте под финальное молчание еще плавное погашение света в комнате....
    Спасибо за познавательный контент, ждём продолжения

    • @skiramish
      @skiramish 3 месяца назад +2

      и в темноте только желтизна темных в ночи глаз ночного зверя что медленно высасывает твою душу

    • @user-xq4ft9yu2c
      @user-xq4ft9yu2c 3 месяца назад

      @@skiramish желтизна глаз - это плохо, печень лечить надо

    • @SuperArt1st
      @SuperArt1st 3 месяца назад +1

      Уходя гасите всех

    • @u2bear377
      @u2bear377 3 месяца назад

      @@user-xq4ft9yu2c Это если жёлтые склеры.
      А если радужка --- то просто такой цвет глаз.

  • @validationerror3830
    @validationerror3830 2 месяца назад +6

    Лично мне не хватает какой-то визуализации - это кратно увеличит кол-во зрителей и кол-во тех, кто досмотрел до конца. Как пример - видео Alek OS, или же вариант попроще - курс по сетям от Андрея Созыкина - поток слов тут же отражается в некоторой визуализации - схемы, таблицы, и это очень сильно улучшает восприятие, особенно учитывая что речь о технической области

    • @user-qe9lo1xl8f
      @user-qe9lo1xl8f 2 месяца назад

      плюсую, не хватает визуализации

  • @rkc137
    @rkc137 3 месяца назад +12

    в конце стало страшно, но от того менее качественным контент не стал так что с ходу лайк

  • @user-st3ns6fb7x
    @user-st3ns6fb7x 3 месяца назад +10

    Еслиб еще докинули по мьютексы и семафоры былобы просто бомба!!!
    Спасибо за видое, отличная подача материала!

    • @abragin
      @abragin  3 месяца назад +6

      Так ведь обязательно, у меня целый отдельный видосик под это запланирован

  • @egorshiryaev6058
    @egorshiryaev6058 Месяц назад +2

    Спасибо за проделланную работу, все по сути и без воды.

  • @schwarzbrotundwasser14
    @schwarzbrotundwasser14 2 месяца назад +4

    Спасибо Вам огромное! С огромным удовольствием учился у такого преподавателя!!!

  • @ilya_anatolych
    @ilya_anatolych 3 месяца назад +10

    концовки -- огонь

  • @yodude2493
    @yodude2493 Месяц назад +3

    Браво маэстро!

  • @VRchitecture
    @VRchitecture 3 месяца назад +6

    Ein code, ein daten, ein zugriffsrechten… Sehr gut!

  • @Andymit
    @Andymit 3 месяца назад +4

    Доктор Брагин, Вы - изумруд!

  • @andreyblokhin6195
    @andreyblokhin6195 3 месяца назад +8

    Господи, спасибо большое! Какое ценное видео для меня!

    • @abragin
      @abragin  3 месяца назад +1

      Рад, что нравится! Если есть какие предложения, что можно улучшить - пишите, мне очень важна обратная связь

  • @antoha9486
    @antoha9486 3 месяца назад +4

    Очень нравится. Спасибо автору за труд.

  • @rabamidab1902
    @rabamidab1902 3 месяца назад +4

    Спасибо! Очень интересная информация и доступная подача

  • @Polzuchy_haos
    @Polzuchy_haos 3 месяца назад +6

    Хотелось бы еще видео про виртуальное адресное пространство, как оно работает

    • @abragin
      @abragin  3 месяца назад +2

      Конечно, будет отдельное видео или даже не одно только про управлению памятью

  • @UchebavGermanii
    @UchebavGermanii 3 месяца назад +9

    Отличное видео. Я привык термины слышать на английском. Elf, Pid, немного порезали слух "ЕЛЬФ" и "ПИД" 😊
    08:16 - Deutsch ist Deutsch 😉👍

    • @abragin
      @abragin  3 месяца назад +5

      На этот счёт разные мнения есть, про pid vs pee-eye-dee, но эльф он и в средиземье эльф 😅
      www.quora.com/How-should-I-pronounce-pid-as-in-Process-ID#:~:text=Pronounce%20pid%20(process%20ID)%20as,rhymes%20with%20kid%20or%20squid.

    • @UchebavGermanii
      @UchebavGermanii 3 месяца назад

      @@abragin Точно-точно😂👍

  • @leomysky
    @leomysky 3 месяца назад +2

    Спасибо за ролик, очень классно и познавательно вышло

  • @user-eo5rx3wd8p
    @user-eo5rx3wd8p 2 месяца назад +1

    Хорошая подача материала!

  • @ikrom1204
    @ikrom1204 2 месяца назад +1

    Отличная подача! Спасибо вам большое! Жду следующих видео в таком же формате!

  • @2010Viruss
    @2010Viruss 3 месяца назад +1

    Спасибо за видео!

  • @eliasg5536
    @eliasg5536 3 месяца назад +2

    Спасибо за видео

  • @non5309
    @non5309 3 месяца назад +2

    Отличное видео! Рекомендую видео с канала на своих курсах!

  • @buginsystem8925
    @buginsystem8925 3 месяца назад +2

    О, ретро-терм на заставках

  • @user-yx5nj4fw2x
    @user-yx5nj4fw2x 3 месяца назад +1

    большое спасибо за труд)

  • @Nikmotor-rj8hc
    @Nikmotor-rj8hc 3 месяца назад +1

    Спасибо!

  • @user-tl3db9of3l
    @user-tl3db9of3l 3 месяца назад +1

    Очень доходчиво, всё по полочкам.
    Обожаю системное программирование на ассемблере(fasm|nasm) LInux - был счастлив увидеть здесь видео о работе с ядром на ассемблере.

  • @guest-tf9he
    @guest-tf9he 3 месяца назад +2

    Спасибо за материал, и ещё раз спасибо за понятное изложение без воды!

    • @abragin
      @abragin  3 месяца назад

      Очень приятно, что цените и оставляете комментарии! Это для меня лучший мотиватор

  • @gleb4059
    @gleb4059 3 месяца назад +2

    Спасибо.

  • @SuperArt1st
    @SuperArt1st 3 месяца назад +2

    Одно кольцо чтоб править миром!

  • @qrthack3233
    @qrthack3233 3 месяца назад +1

    Крутые видео, продолжай пожалуйста

  • @dimakof
    @dimakof 3 месяца назад +1

    Спасибо за увлекательное видео

  • @zverobox9115
    @zverobox9115 15 дней назад +1

    А можно ещё рассказать про семафоры, мониторы, решение тупиков и как ОС использует память

    • @abragin
      @abragin  15 дней назад

      Несомненно! ruclips.net/video/clRwA-JGBQI/видео.html

  • @denpinkman9057
    @denpinkman9057 3 месяца назад +2

    Лайк по дефолту, больше контентааа)

  • @Ssilki_V_Profile
    @Ssilki_V_Profile 3 месяца назад +3

    Замени в конце своё дыхание на вейдеровское - запомнится всё на века.

  • @TheSpartan4eg
    @TheSpartan4eg 3 месяца назад +5

    Не забывай иногда моргать)

    • @ultracolor
      @ultracolor 3 месяца назад +1

      Зачем тратить энергию на бесполезное действие?

  • @user-io6gn2mm5s
    @user-io6gn2mm5s 3 месяца назад

  • @Dmittry
    @Dmittry 2 месяца назад +1

    7:57 " Нет необходимости создавать отдельный процесс"
    *Chrome:* Hold my beer.

  • @georgie-facet
    @georgie-facet 2 месяца назад +1

    Заставка у вас топ

  • @handlewithoutsuitcase
    @handlewithoutsuitcase 3 месяца назад +3

    В финале - это наш HAL9000

  • @mmilerngruppe
    @mmilerngruppe 2 месяца назад +1

    8:16 какой постметаироничный кек в аннотации!

  • @deepdump7131
    @deepdump7131 3 месяца назад +3

    база кормит

    • @eliasg5536
      @eliasg5536 3 месяца назад +2

      Потому что это основа это так сказать база

  • @WildLizzard
    @WildLizzard 3 месяца назад +2

    Как всегда прекрастно. Только хотелось бы подробностей например что PID это сокращение от Process ID. И как это работает на уровне взаимодействия железок и программной части. Директивы процессора и т.д

    • @abragin
      @abragin  3 месяца назад +1

      Я написал справа, если не забыл 😀

  • @SuperArt1st
    @SuperArt1st 3 месяца назад +2

    Пошла вода в хату, потоком!

  • @sterd0
    @sterd0 3 месяца назад

    Ура, ждал, ждал видео.

    • @abragin
      @abragin  3 месяца назад +1

      Спасибо! Подготовка видео занимает довольно много времени, и дело даже не в технических моментах типа записи и монтажа видео, а в творческом: порой, неделю я просто думаю как выстроить повествование так, чтобы всё было логично "от и до", без перескакивания по темам, какие интересные подробности добавить, а что только мешает и можно исключить. И до тех пор, пока не выложу на всеобщее обозрение, не могут быть уверен насколько правильно сделал. Оценивают только зрители, по комментариям, лайкам и новым подписчикам я уже немножко понимаю, что было правильно, а что не очень.

    • @sterd0
      @sterd0 3 месяца назад

      @@abragin
      Есть опыт в подготовке контента, могу помогать в подготовке по мере возможностей. Помогаю из-за того, что контент интересный и не стандартный.

  • @somethingname9038
    @somethingname9038 3 месяца назад +1

    "Достаточно лишь информации для управления потоком" ))))))))
    А, той самой информации, точно, не той что для процесса

  • @Stalevik
    @Stalevik 3 месяца назад +7

    Вы походу в гляделки всегда выигрывали )

    • @saitaro
      @saitaro 3 месяца назад +2

      Да он просто зверь, это чемпион

    • @yarburart7242
      @yarburart7242 3 месяца назад

      В 4:12 вроде моргнул

  • @MrTheAllximik
    @MrTheAllximik 2 месяца назад +2

    Ein code
    Ein Daten
    Ein Zugriffsrecht

  • @Alexey-gp7vc
    @Alexey-gp7vc 3 месяца назад +1

    Спасибо, отлично структурированная инфа!
    user-level threads это получается те самые green threads т.е. легковесные потоки а-ля корутины/горутины/файберы?

    • @abragin
      @abragin  3 месяца назад +1

      Нуу не совсем, но очень близко. Это скорее pthreads в линуксе

  • @user-oj7ct4lt4x
    @user-oj7ct4lt4x 3 месяца назад +1

    Находка

  • @FobosWorld
    @FobosWorld 2 месяца назад +1

    Очень полезный ролик, подскажите как сделать такой же терминал как на заставке, может есть урок или статья?

    • @abragin
      @abragin  2 месяца назад

      Это программа cool-retro-term, у неё куча настроек, можно всё сделать по вкусу

  • @user-sx1sv3km3m
    @user-sx1sv3km3m 3 месяца назад +1

    Можете, пожалуйста, сделать подобный разбор по видеокартам, как они с процессором взаимодействуют, про шейдеры, для чего OpenGL, DirectX, и т.д.?

  • @Eustrop
    @Eustrop 3 месяца назад +2

    В этом изложении темы мне не хватает описания адресного пространства много-поточных процессом и нюансов работы со стеками в них.
    И, кстати, мне вообще не попадалось хорошего изложения этой темы. Так что это вовсе не упрёк, а лишь слова для алгоритмов и скромное пожелание попробовать рассказать об этом в будущем. ;)
    2024-03-19 11:30

    • @Eustrop
      @Eustrop 3 месяца назад

      Upd: а также, я помню, что т.н. "пользовательские потоки" нельзя было разнести по ядрам. Или что-то изменилось?
      Если нет, то на этом стоит сделать акцент, а то студенту покажется, что они лучше (быстрее создаются), в то время, как толку от них в определенных классах приложений - ноль.

    • @abragin
      @abragin  3 месяца назад +2

      Кстати да, вы правы! Это нюанс, про который мало кто рассказывает. Эх, ладно 😀

  • @WhoAmI666
    @WhoAmI666 3 месяца назад +1

    "Один код. Одни данные. Один уровень доступа" 😂😂😂

  • @ushapedcurve3831
    @ushapedcurve3831 3 месяца назад +1

    Объяснение очень хорошее, но все-таки из за неимения практики, это не до конца понятно. Надо бы несколько лабораторных работ сделать на С++ под Linux and Windows.

    • @abragin
      @abragin  3 месяца назад

      Практические работы тоже будут!

    • @ushapedcurve3831
      @ushapedcurve3831 2 месяца назад

      @@abragin Буду ждать с нетерпением!

  • @Red_Coder
    @Red_Coder 3 месяца назад +2

    Для полного антуража не хватает только текстового редактора vim

    • @abragin
      @abragin  3 месяца назад +1

      А как насчёт emacs?

    • @Red_Coder
      @Red_Coder 3 месяца назад

      ​@@abraginпросто там среди прочего проскакивала какая-то ide с директориями слева.

    • @Red_Coder
      @Red_Coder 3 месяца назад

      ​​@@abraginвначале задан тон терминалов и олдскульных текстовых редакторов, а потом появлятся ide и шиндовская панель задач. Возможно, стоило все сделать в одном стиле (vs + панели задач) либо (олдскульный редактор + htop). Ну, это конечно тонкости

    • @Red_Coder
      @Red_Coder 3 месяца назад +2

      ​@@abraginв любом случае, лайк и подписка. Фундаментальных знаний не хватает, конечно, современному кодингу

  • @FeelUs
    @FeelUs 3 месяца назад +1

    а пользовательские потоки могут работать на нескольких ядрах процессора одновременно?

  • @somethingname9038
    @somethingname9038 3 месяца назад +1

    Процесс ведь не обязательно в состоянии выполнения )

  • @alexjohnson4270
    @alexjohnson4270 3 месяца назад

    04:25 что за "среда выполнения" ?

  • @nafunny8327
    @nafunny8327 3 месяца назад +1

    А будет ли лекция по операционным системам реального времени? Очень интересно посмотреть, чтобы лучше разобраться

    • @abragin
      @abragin  3 месяца назад +1

      Вот про это ещё не планировал. Если будет достаточный интерес, то обязательно сделаю

  • @cashflow7208
    @cashflow7208 3 месяца назад +1

    какой вы операционной системой пользуетесь и какая лучше субьективно?

    • @abragin
      @abragin  3 месяца назад

      Я пользуюсь Windows разных версий и Windows Sergey тоже, из Linux привык к Ubuntu, из BSD предпочитаю FreeBSD, для обучения - ReactOS и NetBSD, на маках выбор небольшой - macOS, но девятку никогда всерьёз не использовал, только поигрался. Ну всякого разного ещё можно найти по мелочи.

    • @cashflow7208
      @cashflow7208 3 месяца назад

      @@abragin про windows мне понятно,я вот тоже когда пользовался то убунту приелась (в хорошем смысле) ) freebsd пробовал на виртуальной машине,говорят zfs молодец для серверов но он для меня как густой лес , мака у меня не было

  • @user-gu7cl4dn2u
    @user-gu7cl4dn2u 2 месяца назад +1

    А если некоторые понятия непонятны,но влезть хочется в понимание. Что можно почитать посмотреть по ОС?

    • @abragin
      @abragin  2 месяца назад

      Это ещё не все видео, тут будет это рассказано более подробно

    • @abragin
      @abragin  2 месяца назад

      Почитать можно Танненбаума, но у него довольно фундаментальная книга, там очень подробно

  • @u2bear377
    @u2bear377 3 месяца назад +2

    Если fork() создаёт копию процесса, то почему копия при выполнении сама не вызывает fork()?

    • @apodavalov
      @apodavalov 3 месяца назад +7

      Потому что адрес следующей команды (т.е. счетчик команд, регистр eip/rip) тоже копируется. Получается, что следующая команда - это то, что после fork().

    • @user-cp2nh9tf1x
      @user-cp2nh9tf1x 3 месяца назад

      @@apodavalov 👍

    • @abragin
      @abragin  3 месяца назад

      Я специально обратил внимание на то, что fork() *возвращается* дважды. А адрес возврата в стеке указывает уже на следующую инструкцию после call.

  • @alexandrprodan8794
    @alexandrprodan8794 9 дней назад +1

    Может кто нибудь объяснить что значит
    "в адресное пространство каждого процесса по фиксированному виртуальному адресу проецируется ядро"
    и зачем это нужно
    03:42
    за ранее спасибо

    • @abragin
      @abragin  9 дней назад

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

    • @alexandrprodan8794
      @alexandrprodan8794 8 дней назад +1

      @@abragin Спасибо теперь яснее стало

  • @user-dw9mq9hy3f
    @user-dw9mq9hy3f 3 месяца назад +2

    Диаграммы не хватает

    • @abragin
      @abragin  3 месяца назад

      В каком месте?

  • @tree-service
    @tree-service 3 месяца назад +1

    Потоки получается менее накладны чем процессы?

    • @abragin
      @abragin  3 месяца назад +1

      Да, но не совсем

    • @jopa19991
      @jopa19991 3 месяца назад

      поток, если сильно упрощать, выбрасыая TLS и другие мелочи, это ещё один блок памяти для стека в куче процесса

    • @tree-service
      @tree-service 3 месяца назад

      @@abragin я имел ввиду межпроцессное взаимодействие.в если адресное пространство у потоков общее в рамках процесса, то и конкуренция за ресурсы например переменные и их блокировки присутствует?

    • @Dominic_Herzog
      @Dominic_Herzog 3 месяца назад

      @@tree-service да, память ведь общая

    • @AEF23C20
      @AEF23C20 2 месяца назад

      @@tree-service конкуренция за ресурсы в любом случае существует, что у процессов, что у потоков

  • @georgie-facet
    @georgie-facet 2 месяца назад

    Что такое виртуальный адрес я так и не понял. Это означает,что оно физически не выполняется по инструкцииям в процессоре или что?

    • @abragin
      @abragin  2 месяца назад

      Согласен с вами, про это будет отдельное видео

  • @kykyshka138
    @kykyshka138 3 месяца назад

    Не понимал раньше, книжки по С++ на 100-120 страниц. Для кого она написана? Кто уже досконально знает С++? Так и эти видео, чтобы хорошо объяснить матерьял конкретно в этом видео, понадобится пару часов, а кто и так знает что и зачем - зачем смотреть видео?

    • @abragin
      @abragin  3 месяца назад +1

      Несколько раз перечитал и так и не понял: надо делать ещё проще, надо делать на 2 часа, или не надо делать вообще?

    • @AEF23C20
      @AEF23C20 2 месяца назад

      не понимаю, какие то книшки по плюсикам?
      стандарт плюсов - это 5000 страниц
      гонг-вопрос: а для кого и зачем пишутся какие то книшки по плюсикам?
      вы стандарт по плюсикам читайте, зачем вам какие то книшки?
      не хотите? а чего вдруг не хотите?

  • @_AbUser
    @_AbUser 2 месяца назад +2

    ... как использовать 45 непонятных слов, что бы объяснить другое непонятное слово... Скоро процесс не объяснения, а введение в заблуждение.. 🤣🤣🤣

  • @Sid-cm4yg
    @Sid-cm4yg 3 месяца назад +1

    Ваша физиономия сильно отвлекает.

    • @abragin
      @abragin  3 месяца назад +2

      Там процентов 90 кадра заполнено чем-то ещё, смотрите туда 😅

    • @AEF23C20
      @AEF23C20 2 месяца назад

      вы слушаете глазами что ли?
      может вам лучше в балет или модельеры?
      это без шуток, какие шутки?

  • @hackoffme
    @hackoffme 3 месяца назад +4

    Шикарно. А можно видео где все это в практику превращается?
    Желательно на питоне, threading, multiprocessing с тонкостями, флагами и как это под капотом в линукс работает. :)

    • @SuperArt1st
      @SuperArt1st 3 месяца назад +1

      Будет, но потом 😅

    • @DyaFedya
      @DyaFedya 3 месяца назад

      нахрен питон, чистый с!!!

    • @user-cz6cw3xi9m
      @user-cz6cw3xi9m 2 месяца назад

      ​@@DyaFedyaЛучше ASM