0: Здравствуйте. Вы смотрите 1 лекцию курса операционной системы на хекслет точка орг, как это часто бывает с первыми лекциями. Это будет довольно расслабленная простая обзорная лекция, в которой не будет Глубоких технических подробностей, поэтому это
1: Вас. Ваш последний шанс расслабиться. Нас после этого ожидает больше 10, довольно Глубоких по содержанию лекций. Поэтому давайте будем наслаждаться, пока можем. Итак, давайте знакомиться. Меня зовут
2: Рахим, я преподаю на хекслете. И вот здесь вы можете видеть ссылку на мой сайт, если вам интересно, там есть ссылка на почту и другие социальные сети. Если вам хочется связаться со мной, задать вопрос или просто познакомиться, пишите.
3: Окей, этот курс использует материал из нескольких источников, в том числе из 2 книг. Если вы хотите узнать намного больше, чем мы успеем про
4: В течение этих порядка 15 лекций, то вы можете почитать 1 из этих книг. Материал в них по большей части пересекается. Однако лично мне больше нравится 2 книга книга эндрю таненбаума модерн рейтинг.
5: Последнее издание это 3 издание с прикольной обложкой, с циркачами в слайдах. К этому курсу зачастую будут использоваться иллюстрации из 1 книги из книги уильяма сталинга, или же иллюстрации будут основаны на
6: Каких-то иллюстрациях из этой книги 3 книга, которая здесь написана, книга джаст фо фан линуса торвальдса, опциональная, её читать необязательно в принципе, никакие из этих книг читать необязательно.
7: Просто отличие этой 3 книги в том, что она не имеет никакого отношения к курсу напрямую, это вообще не техническая книга, это художественная книга пол, автобиография линуса торвальдса, человека, которая, который создал операционную систему linux.
8: В ней он описывает то, как он рос, как, собственно, так получилось, что тихий паренёк из Финляндии написал операционную систему у себя дома, которой теперь пользуется половина планеты, очень захватывающая книга.
9: И если вы изучаете английский язык, то это неплохая книга, чтобы попрактиковать чтение, там довольно простой язык, и написана она в очень расслабленном таком формате повествования, знаете, за кружкой пива.
10: Окей, представьте себе обычный для многих людей утренний сценарий. Вы проснулись, сходили в туалет, смыли за собой, пошли на кухню, поставили чайник, чтобы заварить себе чай, позавтракали, попили чай отправили.
11: На работу на автобусе в автобусе заплатили специальный автомат, закинули монетки, чтобы он вам выдал билетик, после этого зашли в офисное здание, где находится ваша работа, вызвали лифт и поехали.
12: Среди этих 4 сценариев был ли хотя бы 1, где вы бы взаимодействовали с операционной системой? Ну, в контексте этой книги? Нет, конечно, не книги в контексте этого курса, нет, потому что мы говорим об операционных системах по большей части будем.
13: Говорить об операционных системах современных компьютеров, таких как ваш ноутбук, компьютер или планшет, или телефон, в этом отношении даже электронный лифт это не совсем та операционная система, но о таком типе мы тоже.
14: Поговорим.
15: Однако на абстрактном, на уровне идей.
16: Поговорим, однако, на абстрактном, на уровне идей.
17: Во всех 4 сценариях было взаимодействие с неким подобием операционной системы идея здесь в том, что мы воспользовались какими-то устройствами, мы получили от них какой-то нужный нам результат, но мы не знали,
18: Нам не нужно было знать, как они работают внутри, какие процессы там происходят, что там необходимо было сделать. Там была некая автоматика, и нам не нужно было париться по поводу температуры накаливающимся в чайнике, и
19: Какое электричество там проходит и как чайник узнает, что он закипел и выключается, или как бочок понимает, что вода слилась и как он набирает новую воду. Это можно изучить, это многим интересно, но это не обязательно, чтобы пользоваться этим. У нас.
20: Был некий интерфейс, созданный для нас, чтобы мы не думали о внутренностях и могли пользоваться. Мы могли бы сэкономить время и заниматься своими делами. Операционная система, по сути, это и есть такой интерфейс. Компьютер это
21: Очень сложная штука, и пользоваться ей, если бы не было операционной системы, было бы очень сложно. Я бы, наверное, не записывал эту лекцию, а вы бы её не смотрели, однако мы не знаем, и нам не нужно знать, какие в данный момент процессы обрабат.
22: Процессор, что там происходит с памятью? Какие биты и байты летают по материнской плате? Мы занимаемся своими задачами. Операционная система позволяет нам не думать об этих сложных внутренностях.
23: Окей, абстракция это то слово, к которому мы будем возвращаться очень часто. И абстракция это мы будем делать не просто так, потому что абстракция это ключевой инструмент для создания сложности, для
24: Наращивание сложности не только когда дело касается операционных систем, но и в информатике в целом. Ну и в инженерии в целом перед нами план сегодняшней лекции. Давайте начнём с основных элементов. Что же
25: Такое операционная система. Я не буду давать вам немного скучное описание и определение. Давайте просто подумаем, что же это такое. Как я уже сказал, это просто некий интерфейс и интерфейс, и абстракция это ключевые слова, которыми можно
26: Описать операционную систему, да, по сути, современная операционная система, та, которой вы пользуетесь в данный момент, даёт доступ программам к железу. И в этом сценарии программы выступают в Роли вот этих потребителей, которым не нужно знать, как там
27: Все внутри работает, например, когда вы смотрите эту лекцию, допустим, у нас на сайте, то ваш браузер получает данные по интернету и выводит их на экран. При этом ваш браузер понятия
28: Не имеет, как там работает сетевая карта, что нужно делать процессору, чтобы все это работало как процессор должен через память и через системную шину выводить пиксели на экран, чтобы они ещё и двигались. Браузеру. Это не нужно знать вам тем,
29: Более. И в этом прелесть операционной системы и абстракции как идеи в целом, операционная система, та, которой мы пользуемся, также предоставляет набор неких сервисов и услуг системным пользователям, и на протяжении этого курса мы будем
30: Часто использовать понятие системный пользователь это не обязательно человек пользователь это просто некий агент, который пользуется услугами. Это может быть железо, это может быть устройство или программа. Ну и да, это может быть человек.
31: 1 из ролей операционной системы это также управление памятью и вводом, выводом, и можно найти ещё десяток или сотню разных разных задач, которые выполняют операционная система, но в целом нужно понимать,
32: Идею. Операционная система это интерфейс, это переводчик с 1 языка на другой, и он там находится для того, чтобы нам не нужно было учить язык компьютера. А компьютеру не нужно было учить намного более сложный язык человека. Дело в том, что
33: Компьютеру практически невозможно выучить язык человека. Во всяком случае, пока человеку же в принципе можно изучить язык компьютера и общаться с ним на его языке. Просто это очень сложно. Это занимает очень много времени. И в следующей лекции, когда мы будем говорить
34: О предпосылках создания операционных систем и об истории, то мы поймём, почему же в начале мы говорили на языке компьютеров, а потом нам пришлось от него отойти. Окей, раз мы говорим о компьютере, давайте поговорим.
35: О его устройстве. Вы все знаете, что такое компьютер. Вы, думаю, можете назвать все основные части компьютера, поэтому здесь не будет ничего для вас нового. Сердце компьютера. Его мозг это процессор. И пока мы будем считать в этой простой схеме, что процессор
36: Это что-то 1 единое. На самом деле у процессоров может быть много ядер в 1 компьютере может быть несколько процессоров в многопроцессорных системах вообще происходят всякие интересные вещи. Но пока будем говорить о том, что у нас есть 1 этот
37: Мозг, так же, как у человека, но, в отличие от человеческого мозга, процессор почти не имеет памяти человеческий мозг это машина для обработки и для хранения.
38: Процессор компьютера по большей части занимается обработкой и управлением. Хранение возлагается на память и память это вот то, что мы привыкли называть рам или озу.
39: В дополнение ко всему этому компьютер содержит набор модулей для работы с устройствами ввода и вывода, и чаще всего мы будем обозначать ввод, вывод английской аббревиатурой инпут алпуд ай оо и делать это.
40: Мы будем не просто так, а потому, что чаще всего даже в русском, когда люди говорят по-русски, то часто говорят просто ао, это технически, наверное, не очень здорово с точки зрения русского языка, но все
41: Привыкли так говорить, поэтому мы будем тоже так говорить в половине случаев.
42: Все эти детали соединены с помощью системной шины. Представьте себе некоторый набор проводов, которые просто соединяют все эти все эти элементы. И мы можем посылать сигналы из 1 элемента в другой. На самом деле этот
43: Сложнее. Это некий хайвей, по которому с большой скоростью может ходить большое количество информации, но по сути это просто набор проводов, он соединяет эти устройства и они могут посылать сигналы друг другу, они могут обмениваться информацией и как-то координировать
44: Свою работу.
45: Процессор, как я сказал, это мозг компьютера. Он управляет операциями и обрабатывает данные. В нём есть небольшая внутренняя память, и мы о ней тоже поговорим. Сегодня. Однако большая часть хранения, большая часть информации хранится в
46: Отдельной большой памяти процессор в зависимости от архитектуры может состоять из нескольких разных частей, но чаще всего выделяют 2 основные части это арифметическое логическое устройство или a all you по-английски, или
47: И. И управляющий автомат 2 часть или контрол юнит по-английски 1 часть all you это.
48: Та часть процессора, которая занимается арифметическими операциями, она складывает числа, она производит действия над числами и битами. И это то место, где происходит магия, как бы это странно не звучало, но там
49: Происходят эти арифметические операции и все, что мы видим, все, что происходит, все самые сложные функции, которые может выполнять процессор, на самом деле разбиваются на простейшие операции. Управляющая
50: Автомат это та часть процессора, которая управляет, и мы будем видеть его работу на протяжении всего этого всей этой лекции. Но не думайте, что этот курс будет как-то посвящён процессору или
51: Лезу. Мы, скорее всего, не будем вспоминать больше о процессоре, опять же, потому, что нам не нужно об этом думать. Однако нужно помнить, как процессор работает, и мы к работе процессора будем возвращаться часто к архитектуре не очень часто.
52: Основная память, как вы знаете, является непостоянной. То есть, если мы выключим питание, то все оттуда удалится.
53: И это именно та причина, по которой вы иногда теряете документы, забыв их сохранить на диск.
54: Основная память, её архитектура, её технологии, по которым они создаются, меняются и развиваются. Однако для нас важна абстрактная картина. Основная память это просто набор ячеек, и в
55: В каждой ячейке может храниться какая-то информация, а может и не храниться. Чаще всего в ячейках хранится или какие-то данные, или инструкция, инструкция это как бы тоже данные, но их суть в том, что их можно исполнить, это набор команд у каждой
56: Ячейки есть адрес, и мы можем найти, обратиться к памяти по какой-то ячейке, можно сказать, заглянем в ячейку номер 5 и возьмём оттуда что-то или заглянем в ячейку номер 6 и исполним команду, которая находится в этой
57: Модули ввода вывода, как вы поняли, отвечают за перемещение данных между компьютером и какими-то устройствами ввода вывода. Это жёсткий диск, или сетевая карта, или мышка, или терминал, что угодно. Информа.
58: Может идти только в 1 сторону, или только в другую, или в обе стороны.
59: И все это, все это многообразие устройств, которое возможно подключить к компьютеру, возможно благодаря подобным модулям.
60: О системной шине мы опять же будем говорить, да, в течение этой лекции я буду постоянно говорить о том, что мы об этом будем говорить в следующий раз или, или какой-нибудь из очередных лекций. Просто потому, что это обзорная лекция. Сегодня системная шина на самом деле состоит
61: Из нескольких полос можно сказать если представить хайвей, то это некие секции, и у них есть разные функции. По некоторым полосам идут только информации об адресах, по некоторым полосам идут только данные.
62: По некоторым информациям идут только команды, и это сделано просто для удобства, чтобы можно было понять, с какой полосы ожидать какого рода информацию.
63: Я сказал, что у процессора есть своя внутренняя небольшая память, она называется регистрами. Представьте себе, тоже некоторые ячейки памяти, но они находятся на процессоре, и из за того, что они находятся
64: На процессоре, в максимальной близости к тому месту, где происходит вся основная работа, работа с этими регистрами намного быстрее, чем работа с памятью, до которой ещё нужно доехать по этому хайвею, который называется системной шиной.
65: К сожалению, регистров не очень много по сравнению с основной памятью их катастрофически мало, но они намного быстрее основной памяти, поэтому с ними можно их можно использовать более эффективно. То есть, несмотря на то, что их меньше с ними.
66: Все ещё можно делать очень полезные операции. Некоторые из этих регистров доступны пользователям, то есть программам или даже вот мне, если я захочу туда обратиться, некоторые используются для управления и
67: И для того, чтобы процессор нам мог ответить о том, как прошла предыдущая операция, для этого используются статусные регистры, некоторые регистры доступны пользователям, а некоторые доступны только для чтения.
68: Опять же, вы можете заглянуть и почитать о том, как технически это устроено. Но пока представьте себе, просто ячейки, которые находятся на процессоре из за того, что они находятся так близко к процессору, они очень быстрые. Ну, на самом деле, они очень быстрые ещё, потому что
69: Они технически отличаются от основной памяти окей, регистр флагов это вот тот регистр, в котором хранится бит. И это способ процессора сказать нам, что какая-то операция.
70: Завершилась или какая-то операция завершилась удачно. Мы можем только читать оттуда, чтобы понять, каков был статус какой-то операции.
71: Давайте перейдём ещё на уровень выше. У нас теперь есть понимание структуры компьютера. Есть понимание того, что находится в процессоре, что находится вне его. Самое время подумать о программах. Это вот
72: То, что нам намного более привычно и понятно, потому что с программами мы работаем каждый день. Программа, по сути, это очень большой набор каких-то инструкций. Мы почти не пользуемся программами, которые дела
73: 1 маленькую операцию. Вспомните, когда вы последний раз пользовались программой, которая складывает 2 числа. Любая, самая простая программа. Даже если у неё нету графического интерфейса, делает огромное количество операций, она обращается в
74: 1000 разных мест. Она получает информацию из 1000 разных мест.
75: И все эти операции, если добраться до самых простейших, называются инструкциями, программа это набор инструкций в памяти, и работа процессора заключается в том, чтобы считывать инструкции.
76: В так называемый регистр инструкций и исполнять их.
77: Также есть регистр, который называется счётчиком команд, и он содержит адрес какой-то команды. И в зависимости от архитектуры это может быть адрес текущей команды, то есть той инструкции, которая сейчас исполняется, или следующей на этой
78: Можно видеть очень простую схему, она настолько простая, что, наверное, не стоит даже иллюстрации, но запомните эту схему, потому что в течение нескольких лекций мы будем видеть, как с течением времени с
79: За последние 50, 60, даже уже 70 лет развития современных операционных систем от такой схемы мы дойдём до очень сложной сложной структуры работы компьютера. Вот с этого все начиналось. У нас есть набор инструкций.
80: Мы берём следующую инструкцию, мы это процессор, мы исполняем его её, возвращаемся обратно и исполняем следующую инструкцию. И, собственно, вот в этом цикле мы крутимся, пока инструкция не закончится. После этого мы отдыхаем.
81: Пока все довольно просто.
82: Инструкции это, наверное, простейшая операция, которую можно придумать. Это операция, которую процессор может
83: Проводить над памятью или проводить над устройством ввода, вывода, или вообще не проводить не над какими-то другими частями, а находиться внутри процессора и обрабатывать какие-то данные, например, провести арифметическую операцию.
84: Функции также необходимы для управления, для того, чтобы задать какую-то команду.
85: Я знаю, что пока это все не очень понятно, что за инструкции, как они выглядят. Опять же, мы будем об этом говорить. Пока представьте себе все, что, о чем мы говорили. У нас есть компьютер, у нас есть процессор, у нас есть программы, к которым мы привыкли, которые на самом деле разбиваются на самые маленькие команды.
86: Эти команды называются инструкциями. Это то, о чем думает процессор. В любой момент времени он исполняет инструкцию, и он понятия не имеет, в чем он участвует. Когда он складывает 2 числа. Он не знает, он делает это для калькулятора или делает это для расчёта.
87: Траектории баллистической ракеты для процессора существуют инструкции, которые нужно исполнять, это абсолютный раб, который ни о чем не думает.
88: К сожалению, может, к счастью, инструкции могут быть важные, могут быть не очень важные, и когда исполняется 1 инструкция, или какая-то команда, или программа исполняется, зачастую бывает.
89: Необходимо исполнить какую-то другую инструкцию или исполнить другую программу, и для этого существует прерывание. И это вот именно то, о чем можно догадаться из названия. Прерывание это прерывание нормального порядка исполнения.
90: Инструкции. Вот если нам нужно исполнить программу, которая состоит из 100 инструкций. Нормальный порядок, это когда все эти 100 инструкций исполняются 1 за другим, точнее 1 за другой, 1, 2, 3 и так до 100. Прерывание это когда
91: В какой-то момент этот порядок останавливается и происходит что-то другое. Это необходимо для улучшения использования центрального процессора. Дело в том. И вот это основной краеугольный камень.
92: Производительности компьютера. Процессор это очень быстрая штука, это, это очень мощный мозг, но другие части компьютера, намного намного более медленные, самые, наверное, медленные части компьютера, это устройство ввода, вывода, особенно
93: Те устройства, которые работают механически, например, жёсткие диски, старые жёсткие диски, магнитные или какой-нибудь принтер, они очень медленные по сравнению с процессором. Поэтому, если процессор будет ждать от них ответа, то он будет
94: Бездельничать и чтобы этого бездействия не происходило, чтобы мы не тратили это время, чтобы этих издержек не было. Мы можем прервать его текущую операцию. Допустим, он ждёт что-то, какого-то ответа от принтера и занять
95: Его чем-то другим. В любом случае нужно помнить, что паузы и простои это очень плохо. Если процессор отдыхает, значит мы теряем производительность. Также прерывания нужны для реализации многозадачности, несмотря на то, что во многих компью
96: A1 процессор, на нём одновременно могут работать несколько программ. Это операционная система, это куча программ, которые в операционной системе находятся. Это куча наших программ. У нас играет музыка, браузер и так далее.
97: Это возможно, если процессор будет постоянно и очень быстро переключаться с программы на программу, и это будет настолько быстро, что для нас и для многих программ самих будет казаться, что все они исполняются одновременно.
98: На самом деле он просто очень быстро переключается между ними, и мы не можем заметить вот этого переключения.
99: Давайте дополним нашу схему прерываниями. До этого у нас был вот такой простой цикл, и он будет продолжать существовать, если прерывание не происходит. Однако в любой момент, после исполнения очередной инструкции мы проверяем. Нет.
100: Ли прерывание, нет ли чего-то, что необходимо исполнить прямо сейчас. Если нет, то мы продолжаем этот цикл. Продолжаем нашу нормальную обработку программы. Однако если в какой-то момент прерывание существует, то
101: Мы останавливаемся, выходим из этого цикла и обрабатываем то, что нам нужно обработать. Согласно этому прерыванию. Это может быть какая-то другая инструкция или целая отдельная программа. После этого мы возвращаемся и продолжаем цикл. Пока все
102: Все ещё довольно просто, да, мы можем делать все по порядку, но в какой-то момент нас отвлекут, и мы можем найти аналогию этому в нашей работе. Я сижу и пишу какой-нибудь доклад, и я пишу страницу за страницей, пока не закончу. Но если меня отвлекут на
103: Какую-то более важную работу, то я поставлю паузу в этом докладе и закончу. Пойду сделаю эту работу, потом вернусь и закончу мой доклад. Ну, меня могут отвлечь ещё раз. Естественно, я потеряю время, но зато я сделаю 2 вещи.
104: Если я буду делать это очень быстро, то мой начальник подумает, что я многозадачный. Я на самом деле делал одновременно 2 вещи. Другой пример с ожиданием процессора, когда процессор ждёт более медленное устройство, это как если бы я набрал этот свой доклад, кото
105: Мне нужно было набрать, потом пошёл его печатать, и медленный офисный принтер печатает мои 100 страниц в течение 10 минут я стою около принтера, жду и ничего не делаю.
106: Умное прерывание может меня отвлечь, и я пошёл бы и сделал бы что-нибудь полезное. Потом вернулся бы, забрал свой распечатанный доклад и не потерял бы эти 10 минут. Ну окей, что если?
107: Нас отвлекли, когда нас уже отвлекли, что если прерывание произошло в тот момент, когда обрабатывается другое прерывание, и тут есть несколько путей, и мы будем говорить о них в лекции о прерываниях, но
108: 2 самых простых варианта, которые приходят на ум. 1 это запретить прерывание при обработке прерываний в той же аналогии с людьми. Если меня отвлекли, я что-то делаю, то в этом в этот момент меня уже нельзя отвлекать, если ко мне кто-то подойдёт.
109: Ты скажет, слушай, давай сделаем что-то ещё. Я скажу нет, вот когда я вернусь к своей основной работе, там меня можно отвлекать. Сейчас меня уже отвлекли, и я не могу углубляться.
110: Другой намного более гибкий путь. Это использовать приоритеты. Если компьютер, ну или в этой аналогии я как работник может оценить важность каждой операции, тогда
111: Можем решить, стоит ли отвлекаться или не стоит отвлекаться. Если меня отвлекают на какую-то чушь, то у этой чуши приоритет ниже. Поэтому я не буду отвлекаться сейчас и закончу данную важную задачу. Если же меня отвлекают на критическую задачу пожара, мне нужно убегать, то
112: У этого приоритет выше, и если компьютер знает о каждой операции, о каждом приоритете, то он может принимать такое решение, и исключение будет обрабатываться более гибко. Все это делается только для того, чтобы
113: Компьютер работал более эффективно.
114: Есть такое понятие, как мультипрограммирование процессор должен исполнять несколько программ, как я сказал, и порядок исполнения зависит от приоритета и от взаимодействия с устройствами ввода вывода устройство ввода, вывода.
115: Опять же потому, что они медленные, они очень сильно влияют на порядок, потому что основная идея всей этой архитектуры в том, чтобы не ждать, не простаивать, не стоять на Паузе.
116: Из за того, что у нас может быть это мультипрограммирование, когда мы работаем с несколькими программами, одновременно пытаемся обработать нужды нескольких программ, когда обработка 1 прерывания завершена, управление необязательно возвращается к той программе, которая исполнялась до этого.
117: Опять же, в той аналогии, если я писал доклад и меня отвлекли, возможно, такое, что когда я эту задачу, на которой меня отвлекли, закончу, я вернусь не к докладу, а к чему-то ещё, потому что пока я там работал, кто-то пришёл и оставил.
118: У меня на столе записку, мол, есть ещё более важная задача. Это именно то, что может происходить в компьютере, и процессор, он не будет злиться, он не будет говорить, блин, как же я устал от всех этих отвлечений, он просто будет исполнять все, что мы сделаем. И это с 1 стороны.
119: Здорово, потому что, ну, мы можем рассчитать все это и можем рассчитывать на процессор. С другой стороны, это не очень хорошо, потому что человек может принять решение и может очень глупое решение отвергнуть процессор не отвер.
120: Глупое решение. И если мы написали такую архитектуру, где процессор используется очень плохо, то он будет использоваться очень плохо и полная ответственность за производительность и за весь результат этой операции будет лежать только
121: На инженерах и, собственно, на людях. Так что, честно говоря, если процессор время от времени говорил, что как же можно так работать? Я устал, и это полная ерунда, то, может, было бы хорошо. Может, мы понимали, когда мы делаем ерунду, а память
122: Мы говорить почти не будем, кроме основной памяти, которая находится внутри компьютера, есть вторичная память с точки зрения процессора. Она внешняя, она не подключена напрямую к системной шине. Она работает с компьютером через устройство ввода вывода.
123: И чаще всего это жёсткий диск или сегодня какой-нибудь твердотельный накопитель вроде ссд. Данные там могут храниться без питания. Это здорово, потому что теперь мы можем хранить данные, переносить их и не думать о электричестве.
124: Эта вторичная память используется для хранения программ и данных. И вы чувствуете, как мы поднимаемся от каких-нибудь Глубоких штук вроде регистра процессора. Мы поднимаемся к программам, а потом к памяти, к файлам.
125: Мы чувствуем себя более комфортно, это происходит, потому, что мы поднимаемся к тому уровню, на котором мы работаем. Мы плаваем на высоком уровне, где есть такие понятия, как файл.
126: Звук клавиша, действие и так далее. Все эти понятия неизвестны процессору, неизвестны на более низких уровнях, и в этом вся сила абстракции. Мы не думаем об этом низком уровне, и он не думает о нас, однако.
127: У нас получается взаимодействовать. Ну что ж, это конец этой обзорной лекции. В конце я хочу поговорить о том, что ожидает нас на каждой из следующих лекций. План может немножко измениться, если какая-то лекция
128: Затянется, то она будет разбита на 2. Если какая-то часть лекции будет слишком короткой, то, может, часть из следующей лекции перейдёт в эту лекцию, но в целом нас ожидает следующее.
129: В следующей лекции мы поговорим об эволюции операционных систем. Немного об истории, но там не будет скучных дат. Я обещаю, самое главное, мы изучим фундаментальные проблемы. Почему операционные системы стали необходимыми, почему они вообще появились?
130: И почему они продолжают развиваться и какие основные проблемы в их дизайне существуют? Почему это все ещё? Почему у нас все ещё нет идеальной операционной системы? Почему существуют конкуренты, почему, почему эта штука продолжает развиваться? Мы
131: Должен говорить о слоях абстракции. Мы, мы постоянно будем вспоминать об абстракции.
132: В следующей лекции мы поговорим о том, как компьютер представляет и обрабатывает процессы, как операционная система относится к процессам и в каких структурах данных они хранятся. Мы немного поговорим о
133: Реализациях в разных операционных системах. Но, как вы поняли, в течение всего курса мы почти не будем говорить о специфике, допустим, виндовса или линукса. Мы будем говорить о общих понятиях архитектуры и дизайна. Мы также поговорим
134: Об очередях и об их обработке. В следующей лекции мы перейдём к тредам. Мы поймём, из чего состоят процессы, а также познакомимся с идеей ядра операционной системы и об
135: Познакомимся с 1 из типом с 1 из типов ядер, который называется микроядро, мы сравним на очень поверхностном уровне ядра операционных систем windows solaris и linux.
136: После этого мы перейдём к очень важным темам, таким как взаимные исключения, семафоры, мониторы, и речь идёт не об экранах и телевизорах, а о специальных структурах, которые позволяют обрабатывать одновременно.
137: Процессы. Мы поговорим о передаче сообщений и о фундаментальной проблеме чтения записи.
138: 1 из основных задач операционной системы это позволить нескольким программам работать одновременно. И несмотря на то, что это звучит довольно просто, ну, нам нужно переключаться между разными программами. Там очень много особенностей, очень много проблем.
139: И очень много проблем, которые являются фундаментальными. И поэтому несколько лекций подряд мы будем говорить о них в следующей мы будем говорить о дедлоках и о так называемой проблеме обедающих философов. Потом мы
140: Перейдём к памяти, мы поговорим о том, как операционная система управляет памятью и зачем была создана виртуальная память, что же это такое?
141: Планирование и выполнение задач, в общем, называется диспетчеризацией, и это тоже 1 из ключевых деталей операционной системы, мы о ней будем говорить ближе к концу этого курса.
142: Потом мы немного поговорим о вводе, выводе, но это уже выход из операционной системы, это уже граница ответственности операционной системы, и там уже в зависимости от определения можно сказать, что это и не операционная система, ну и закон.
143: Мы чем-то вроде файлов и файловой системы, это самый верхний уровень, после которого, можно сказать, мы выходим из операционной системы и переходим в ту зону, где находятся пользовательские приложения. И это уже совсем другая история, как я сказал.
144: Темы могут немного варьироваться, поэтому, возможно, в конце мы немного поговорим о сетях и о других вещах, которые вот находятся как раз на границе ответственности операционной системы. Ну что ж, спасибо за внимание. Надеюсь, увидимся на следующей неделе. Всем пока