Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Понятия ОС
Расслоение памяти (интерливинг) – аппаратный способ повышения быстродействия. Применяется для увеличения скорости доступа к основной памяти. При расслоении соседние по адресам ячейки размещаются в различных модулях памяти, таким образом, появляется возможность производить сразу несколько операций одновременно.
Регистр перемещения – аппаратный регистр, позволяющий программе динамическое перемещение в памяти. В этот регистр заносится базовый адрес программы из основной памяти, а содержимое этого регистра прибавляется к каждому вложенному в программе адресу. Благодаря этому пользователь может писать программу так, как если бы она начиналась с нулевой ячейки памяти. Во время выполнения программы все исполнительные адреса обращений формируются с использованием регистра перемещения – и благодаря этому программа может реально размещаться в памяти совсем не в тех местах, которые она должна была бы занимать согласно адресам, указанным в трансляции.
Прерывание – возможность принуждения центрального процессора приостановить работу одной программы и начать выполнение особой процедуры. Т. е. это изменения в потоке управления, вызванные не самой программой, а чем-либо другим и обычно связанные с процессом ввода-вывода.
Опрос состояния – способ одного устройства проверить состояние другого, независимо работающего устройства. Опрос может быть связан с высокими накладными расходами.
Буферизация
Буфер – это область основной памяти, предназначенная для промежуточного хранения данных при выполнении операций ввода/вывода. Скорость выполнения операции ввода/вывода зависит от многих факторов, связанных с характеристикой аппаратуры ввода/вывода, но в обычном случае ввод/вывод производится не синхронно с работой процессора. При вводе данные помещаются в буфер средствами канала ввода-вывода; после занесения данных в буфер процессор получает возможность доступа к этим данным.
При вводе с простой буферизацией канал помещает данные в буфер, процессор обрабатывает эти данные, канал помещает следующие данные и т. д. В то время, когда канал заносит данные, обработка этих данных производиться не может, а во время обработки данных нельзя заносить дополнительные данные. Метод двойной буферизации позволяет совмещать выполнение операции ввода-вывода с обработкой данных; когда канал заносит данные в один буфер, процессор может обрабатывать данные другого буфера. А когда процессор заканчивает обработку данных одного буфера, канал будет заносить новые данные опять в первый буфер.
Периферийные устройства – устройства, кроме ЦП и оперативной памяти. Периферийные (внешние запоминающие) устройства позволяют хранить большие объемы информации вне основной памяти компьютера.
Защита памяти – ограничение диапазона адресов, к которым можно обращаться программе.
а) Граничный регистр – регистры (2: младший и старший) для защиты программ, занимающий непрерывный блок ячеек памяти, в этот регистр входят старший и младший адреса этого блока. При выполнении программы все адреса обращения к памяти контролируются, чтобы убедиться в том, что они находятся в промежутке между адресами, указанными в граничных регистрах.
б) Ключ – вид защиты, когда программа занимает не сплошную область памяти. В этом случае программе разрешено обращаться только к тем ячейкам памяти, ключи которых совпадают с ключом программы.
Таймер – производит испускание импульсов заданной частоты («тик»), используемые для предотвращения монополизации центрального процессора каким-то процессом. По истечении заданного интервала времени таймер генерирует сигнал прерывания для привлечения внимания процессора; по этому сигналу процессор может переключиться на обслуживание другого пользователя.
Часы истинного времени дают возможность компьютеру следить за реальным календарным временем с точностью ДО миллионных долей секунды, а при необходимости даже точнее
Каналы ввода/вывода – специализированный процессор, который освобождает центральный процессор от операций I/O. Канал имеет возможность прямого доступа к основной памяти для записи или выборки информации.
Захват цикла памяти – одновременное обращение нескольких устройств к оперативной памяти. Поскольку в каждый конкретный момент времени может осуществляться только одна операция обращения (к некоторому модулю основной памяти) и поскольку каналам и процессору может одновременно потребоваться обращение к основной памяти, в обычном случае приоритет здесь предоставляется каналам. Это называется захватом цикла памяти: канал буквально захватывает циклы обращения к памяти у процессора. Каналам требуется лишь небольшой процент общего числа циклов памяти, а предоставление им приоритета в этом смысле позволяет обеспечить лучшее использование устройств ввода-вывода.
Относительная адресация – адресация типа база + смещение, которая позволяет выполнять программе вычисления относительно любых свободных элементов памяти, при которой все адреса программы суммируются с содержимым базового регистра. Подобное решение имеет то дополнительное преимущество, что программы становятся перемещаемыми, или позиционно-независимыми.
Режим работы ЭВМ – задача: пользователь/ресурс. Как правило, ОС присваивается статус самого полномочного пользователя и доступ к любым командам (режим супервизор), а каждому пользователю предоставляется минимально возможный приоритет и возможность пользоваться только теми ресурсами, которые необходимы для выполнения его заданий
Виртуальная память – возможность расширения адресного пространства (при наличии адреса нет поля памяти). Системы виртуальной памяти дают возможность указывать в программах адреса, которым не обязательно соответствуют физические адреса основной памяти. Виртуальные адреса, выдаваемые работающими программами, при помощи аппаратных средств динамически преобразуются в адреса команд и данных, хранящихся в основной памяти. Системы виртуальной памяти позволяют программам работать с адресными пространствами гораздо большего размера, чем адресное пространство основной памяти.
Прямой доступ к памяти (Direct Memory Acces) – если контроллер считывает данные памяти или записывает их в память без участия ЦП. Способ достижения высокой производительности вычислительных машин является минимизация количества прерываний, происходящих в процессе выполнения программы. Разработанный для этого способ прямого доступа к памяти (DMA) требует лишь одного прерывания на каждый блок символов, передаваемых во время операции ввода-вывода. Благодаря этому обмен данными производится значительно быстрее, чем в случае, когда процессор прерывается при передаче каждого символа.
DMA - это способ повышения производительности, особенно необходимый для систем, в которых выполняются очень большие объемы операций ввода/вывода. Аппаратные средства, обеспечивающие захват циклов памяти и управление устройствами ввода/вывода в режиме DMA, называются каналом прямого доступа к памяти.
Мультипроцессорная обработка - В мультипроцессорных машинах несколько процессоров работают с общей основной памятью и одной операционной системой. При мультипроцессорной работе возникает опасность конфликтных ситуаций определенных типов, которых не бывает в однопроцессорных машинах. Здесь необходимо обеспечить координированный упорядоченный доступ к каждой общей ячейке памяти, с тем чтобы два процессора не могли изменять ее содержимое одновременно - и в результате портить его. Подобная координация необходима также и в случае, когда один процессор пытается изменить содержимое ячейки, которую хочет прочитать другой процессор.
Конвейеризация – аппаратный способ, который применяется в высокопроизводительных ВМ с использованием определенных типов параллелизма для повышения обработки команд. Идея конвейера заключается в том, что команда подразделяется на несколько этапов, каждый из которых выполняется определенной частью программного обеспечения, причем все эти части могут работать параллельно.
Иерархия памяти: память – 1) основная (первичная, оперативная) память RAM. Здесь должны размещаться команды и данные, к которым будет обращаться работающая программа.
2) внешняя (массовая, вторичная) ROM; на дисках, стримеры, флеш и т. д. Это носители для хранения информации, которая со временем будет записана в основную память.
3) КЭШ-память – сверхоперативная, это буферная память очень высокого быстродействия, предназначенная для повышения скорости выполнения работающих программ.
Понятия из программного обеспечения.
Программирование на машинном языке – программирование на совокупности примитивных команд (1 – сложение 2 чисел, 2- проверка, не является ли число 0, 3 – копирование куска данных из одной части памяти компьютера в другую и т. д.), т. е. на языке, на котором люди могут общаться с компьютером. Каждая команда машинного языка интерпретируется аппаратурой, выполняющей указанные функции. Говорят, что машинный язык является машинно-зависимым: программа, написанная на машинном языке компьютера одного типа, как правило, не может выполняться на компьютере другого типа, если его машинный язык не идентичен машинному языку первого компьютера (или не является расширением по отношению к этому языку).
Ассемблер и макропроцессоры:
Трансляторы можно разделить на 2 группы в зависимости от отношения между входным и выходным языком. Если входной язык является символической репрезентацией числового машинного языка, то транслятор называют ассемблером, а входной язык называется языком ассемблера. Языки ассемблерного типа являются машинно-зависимыми. Их команды напрямую зависят от машинного языка. Чтобы ускорить написание программы были включены в ассемблер макропроцессы. Когда макропроцессор во время трансляции программы читает макрокоманду, он производит макрорасширение (генерацию нескольких команд ассемблера, соответствующих данной команде).
Компилятор – это программы – трансляторы, которые переводят программу, написанную на ЯВУ в машинный язык. Отличие компилятора от ассемблера – больше этапов у ЯВУ перевода в машинный код.
Интерпретаторы – программы-трансляторы, которые не генерируют объектов программы и обеспечивают выполнение программы (более медленно, чем компилятор). Интерпретатор разбивает исходную программу на маленькие шаги и последовательно переводит каждую команду в исполняемый машинный код, посылая ее сразу на исполнение. Интерпретатор, как правило, хранится в виде микрокоманд в ПЗУ.
Система управления вводом/выводом (IOCS) - подробные канальные программы, необходимые для управления вводом-выводом, и различные подпрограммы для координации работы каналов и процессоров являются достаточно сложными. Создание супервизорной программы, учитывающей все сложности выполнения операций ввода/вывода, освобождает прикладного программиста от необходимости самому писать подобные программы. Такая супервизорная программа носит название системы управления вводом/выводом (IOCS).
Процедурно-ориентированные языки - универсальные языки, которые используются для решения спектра задач. Паскаль, Кобол, Фортран, Бейсик и ПЛ/I обычно. Считаются процедурно-ориентированными.
Проблемно-ориентированные языки – языки, которые предназначены для решения каких-то конкретных задач. GPSS (язык моделирования) и SPSS (язык для выполнения статистических вычислений) - проблемно-ориентированные.
Абсолютные и перемещающиеся загрузчики:
Программы для выполнения должны размещаться в основной памяти. Иногда распределение команд и элементов данных по конкретным ячейкам основной памяти осуществляет системная программа, называемая загрузчиком. Сопоставление команд и элементов данных с конкретными ячейками памяти называется привязкой к памяти.
Абсолютные и перемещающие загрузчики
Загрузчик – системная программа, которая размещает команды в оперативной памяти. Абсолютный загрузчик перемещает только в те ячейки, адреса которых указаны в программе на машинном языке. Перемещающий загрузчик может загружать программу в различные места ОП в зависимости от свободного участка.
Связывающие загрузчики и редакторы связи: связывают библиотеки и программы. Связывающий загрузчик объединяет необходимые программы и загружает их непосредственно в ОП. Редактор связи (компоновщик) объединяет программы и создает загрузочный модуль, который записывается на внешнюю память для дальнейшего использования. Связывающий загрузчик экономит внешнюю память.
Компоновщик (редактор связи) объединяет программы и создает загрузочный модуль, который записывается во внешнюю память для вторичного использования.
Микропрограммирование и микропрограммы:
В архитектуре ЭВМ существует специальный уровень средств программирования, нижележащих по отношению к программному языку компонент, позволяющий определить конкретные процедуру программного языка. Таким образом появляется возможность динамичной смены набора команд машины.
Сами микропрограммы размещаются в памяти высокого быстродействия и состоят из более элементарных и более рассредоточенных по функциям индивидуальных микрокоманд. В компьютерах, где набор команд машинного языка реализуется при помощи микропрограммирования, каждой команде машинного языка соответствует целая и, быть может, большая микропрограмма. Тем самым сразу же становится очевидным, что микропрограммирование окажется эффективным только в том случае, если управляющая память будет обладать гораздо большим быстродействием, чем основная.
Микропрограммы:
вертикальные – задают пересылку одного или нескольких элементов между регистрами
горизонтальные – задают параллельную операцию пересылки данных для многопоточности.
Эмуляция – метод, позволяющий заменять устаревшее оборудование более современным, благодаря эквивалентной функциональности. Набор команд машинного языка эмулируемого компьютера микропрограммируется на эмулирующем компьютере - и благодаря этому программы, представленные на машинном языке первого компьютера, могут непосредственно выполняться на втором.


