<aside> 🦞 спасибо чудесным людям за конспект, приложенный ниже (я его буду порой (первые 2 лекции так точно написаны по ним) переписывать со своими пометками, ресурсами и гуглами, чтобы усвоить самой, потому что по несчастным случаям я пропустила уже две лекции уважаемого коллеги…..)

sOSi.pdf

https://my-study-st.readthedocs.io/OS/articles/what_is_os.html

</aside>

Функции и механизмы ОС, появившиеся на этапе программ-диспетчеров, предшественников операционных систем

На данном этапе появляется ряд функций, которые стали в последствии функциями ОС. Термин “операционная система” еще не существует.

Проблемы и механизмы решения:

1. Повторное использование кода; автоматизация загрузки и линковки

Проблема:

Увеличение сложности программы → необходимость повторного использования кода. Например, переиспользование тригонометрических функций.

Идея решения:

В RAM фиксируется область, в которую помещаются часто используемые программы. В основной программе - вызов программы из упомянутой области.

Для этого необходима система управления для идентификации адресов внутри фиксированной области, для передачи параметров в программе и корректной обработки результатов при возвращении из области в основную программу.

2. Оптимизация взаимодействия с устройствами хранения, ввода-вывода

Проблема:

Загрузка всех данных в RAM невыгодна, т.к. часть данных может быть никогда не использована.

Идея решения:

Циклический подход: загрузка части данных, их обработка и последующая выгрузка.

Для этого необходимо участие CPU (центрального процессора) как посредника для синхронизации этапов циклического подхода. Тогда, к классической архитектуре Фон Неймана (че та из ЭВМ) необходимо добавить контроллер, который позволял бы совершать эти действия параллельно (например, контроллер отвечал бы за перемещение данных из хранилища в RAM, а CPU обрабатывал бы другие данные из RAM, а не простаивал в ожидании)

Для избежания обработки CPU неготовых данных или замены контроллером еще не обработанных или обрабатываемых данных (избежание коллизий), необходима синхронизация контроллера и CPU. Для этого был создан механизм прерывания (interrupts)

<aside> 🐊 SPOOL — Simultaneous Peripheral Operation OnLine — обеспечение взаимодействия с периферийным устройством (флешка, дисковод, клава) параллельно с работой основного вычислительного узла.

Операции ввода, вывода. Появление прерываний - в первичном смысле – прерывания вычислительного блока для сообщения о выводе/вводе данных.

</aside>