Слайд 1Подготовил Сидоров А.Ю. asidorov@sfu-kras.ru ноябрь 2012 года
Слайд 2
Слайд 3
Слайд 4
Слайд 5Минимальные полномочия. Для любой программы и любого пользователя должен быть определен минимальный круг полномочий, необходимых для выполнения порученной работы. Благодаря этим действиям в значительной мере уменьшается ущерб, причиняемый при сбоях и случайных нарушениях. Кроме того, сокращение числа обменов данными между привилегированными программами до необходимого минимума уменьшает вероятность непреднамеренного, нежелательного или ошибочного применения полномочий. Таким образом, если схема защиты позволяет расставить "барьеры" в системе, то принцип минимальных полномочий обеспечивает наиболее рациональное расположение этих "барьеров".
Слайд 6
Слайд 7
Слайд 8Технология фильтрации пакетов является самым «простым» способом реализации брандмауэра. Такой брандмауэр может проверять пакеты различных протоколов, причем с большой скоростью, так как он просто просматривает информацию о пакете (заголовок), чтобы принять решение о его дальнейшей судьбе. Фильтр анализирует пакеты на сетевом уровне и не зависит от используемого приложения. К недостаткам такого брандмауэра можно отнести невозможность идентификации пакетов при имитации IP-адресов и невозможность слежения за конкретным сетевым сеансом. Имитация означает, что если воспользоваться IP-адресом законного пользователя, то можно беспрепятственно проникнуть в защищаемую сеть и получить доступ к ее ресурсам.
Слайд 9
Слайд 10
Слайд 11
Слайд 12
Слайд 13
Слайд 14
Слайд 15При каждом обращении к памяти происходит чтение из таблицы страниц информации о виртуальной странице, к которой произошло обращение. Если данная виртуальная страница находится в оперативной памяти, то выполняется преобразование виртуального адреса в физический. Если же нужная виртуальная страница в данный момент выгружена на диск, то происходит так называемое страничное прерывание. Выполняющийся процесс переводится в состояние ожидания, и активизируется другой процесс из очереди готовых. Параллельно программа обработки страничного прерывания находит на диске требуемую виртуальную страницу и пытается загрузить ее в оперативную память. Если в памяти имеется свободная физическая страница, то загрузка выполняется немедленно, если же свободных страниц нет, то решается вопрос, какую страницу следует выгрузить из оперативной памяти. В данной ситуации может быть использовано много разных критериев выбора, наиболее популярные из них следующие: дольше всего не использовавшаяся страница, первая попавшаяся страница, страница, к которой в последнее время было меньше всего обращений. В некоторых системах используется понятие рабочего множества страниц. Рабочее множество определяется для каждого процесса и представляет собой перечень наиболее часто используемых страниц, которые должны постоянно находиться в оперативной памяти и поэтому не подлежат выгрузке.
Слайд 16
Слайд 17Станичное прерывание (сбой) может иметь место при: Страничном распределение памяти Сегментно-страничном распределение памяти Сегментное прерывание (сбой) может иметь место только при СЕГМЕНТНОМ распределение памяти.
Слайд 18
Слайд 19Адресное пространство — это набор адресов, который может быть использован процессом для обращения к памяти. У каждого процесса имеется свое собственное адресное пространство, независимое от того адресного пространства, которое принадлежит другим процессам (за исключением тех особых обстоятельств, при которых процессам требуется совместное использование их адресных пространств). Совокупность виртуальных адресов процесса называется виртуальным адресным пространством.
Слайд 20
Слайд 21Флаг ссылки (reference бит) автоматически устанавливается, когда происходит любое обращение к этой странице, а уже рассмотренный выше флаг изменения (modify бит) устанавливается, если производится запись в эту страницу. Операционная система периодически проверяет установку таких флагов, для того чтобы выделить активно используемые страницы, после чего значения этих флагов сбрасываются.
Слайд 22
Слайд 23Логический (виртуальный) адрес состоит для: Страничной организации памяти из номера страницы и смещения в рамках страницы Сегментной организации памяти из номера сегмента и смещения в рамках сегмента Сегментно-страничной организации памяти из номера сегмента, номера страницы внутри сегмента и смещения в рамках страницы
Слайд 24
Слайд 25
Слайд 26
Слайд 27Идентификациея - процедура распознавания субъекта по его идентификатору (проверка подлинности пользователя путём сравнения введённого им пароля с паролем в базе данных пользователей). Аутентификация - процедура проверки подлинности. Авторизация - процедура предоставления субъекту определённых прав.
Слайд 28Идентификациея - процедура распознавания субъекта по его идентификатору. Аутентификация - процедура проверки подлинности (проверка подлинности пользователя путём сравнения введённого им пароля с паролем в базе данных пользователей). Авторизация - процедура предоставления субъекту определённых прав.
Слайд 29
Слайд 30
Слайд 31Операционная система— базовый комплекс компьютерных программ, обеспечивающий интерфейс с пользователем, управление аппаратными средствами компьютера, работу с файлами, ввод и вывод данных, а также выполнение прикладных программ и утилит. Позволяет абстрагироваться от деталей реализации аппаратного обеспечения, предоставляя разработчикам программного обеспечения минимально необходимый набор функций. Операционная среда — совокупность компьютерных программ, обеспечивающая оператору возможность управлять вычислительными процессами и файлами. Программная среда — это программные средства, с которыми взаимодействует выполняемая программа; среда выполнения программы
Слайд 32
Слайд 33Чтобы начать работать, пользователь должен ≪войти≫ в систему, введя со свободного терминала свое учетное, или входное, имя (account name, или login) и пароль (password). Человек, зарегистрированный в учетных файлах системы и, следовательно, имеющий учетное имя, называется зарегистрированным пользователем системы.
Слайд 34
Слайд 35
Слайд 36
Слайд 37
Слайд 38основная функция операционной системы (файловой системы)— скрыть специфику дисков и других устройств ввода-вывода и предоставить программисту удобную и понятную абстрактную модель, состоящую из независимых от устройств файлов.
Слайд 39
Слайд 40Драйверы работающие в режиме прерывания представляют собой сложный комплекс программных модулей и имеют несколько секций: · секция запуска · секция продолжения · секция завершения Секция запуска запускается для включения устройств ввода/вывода либо для инициализации очередной операции ввода/вывода . Секция продолжения осуществляет основную работу по передаче данных Секция завершения выключает устройства ввода/вывода либо просто завершает операцию.
Слайд 41
Слайд 42Расширенный раздел DOS содержит вторичную запись MBR (secondary MBR, SMBR), в состав которой вместо partition table входит таблица логического диска (LDT, logical disk table), ей аналогичная. Таблица LDT описывает размещение и характеристики раздела, содержащего единственный логический диск, а также может специфицировать следующую запись SMBR. Следовательно, если в расширенном разделе DOS создано К логических дисков, то он содержит К экземпляров SMBR, связанных в список. Каждый элемент этого списка описывает соответствующий логический диск и ссылается (кроме последнего) на следующий элемент списка.
Слайд 43
Слайд 44В зависимости от источника возникновения сигнала прерывания делятся на: асинхронные или внешние (аппаратные) — события, которые исходят от внешних источников (например, периферийных устройств) и могут произойти в любой произвольный момент: сигнал от таймера, сетевой карты или дискового накопителя, нажатие клавиш клавиатуры, движение мыши. Факт возникновения в системе такого прерывания трактуется как запрос на прерывание синхронные или внутренние — события в самом процессоре как результат нарушения каких-то условий при исполнении машинного кода: деление на ноль или переполнение, обращение к недопустимым адресам или недопустимый код операции; программные (частный случай внутреннего прерывания) — инициируются исполнением специальной инструкции в коде программы. Программные прерывания как правило используются для обращения к функциям встроенного программного обеспечения , драйверов и операционной системы.
Слайд 45
Слайд 46любые операции по управлению вводом/выводом объявляются привилегированными и могут выполняться только кодом самой ОС. Для обеспечения этого принципа в большинстве процессоров даже вводятся режимы пользователя и супервизора. Как правило, в режиме супервизора выполнение команд ввода/вывода разрешено, а в пользовательском режиме — запрещено. Использование команд ввода/вывода в пользовательском режиме вызывает исключение и управление через механизм прерываний передается коду ОС
Слайд 47
Слайд 48супервизор ввода/вывода получает запросы на ввод/вывод от прикладных задач и от программных модулей самой операционной системы. Эти запросы проверяются на корректность, и если запрос выполнен по спецификациям и не содержит ошибок, он обрабатывается дальше, в противном случае пользователю (задаче) выдается соответствующее диагностическое сообщение о недействительности (некорректности) запроса; супервизор ввода/вывода вызывает соответствующие распределители каналов и контроллеров, планирует ввод/вывод (определяет очередность предоставления устройств ввода/вывода задачам, затребовавшим их). Запрос на ввод/ вывод либо тут же выполняется, либо ставится в очередь на выполнение; супервизор ввода/вывода инициирует операции ввода/вывода (передает управление соответствующим драйверам) и в случае управления вводом/выводом с использованием прерываний предоставляет процессор диспетчеру задач с тем, чтобы передать его первой задаче, стоящей в очереди на выполнение; при получении сигналов прерываний от устройств ввода/вывода супервизор идентифицирует их и передает управление соответствующей программе обработки прерывания (как правило, на секцию продолжения драйвера); супервизор ввода/вывода осуществляет передачу сообщений об ошибках, если таковые происходят в процессе управления операциями ввода/вывода; супервизор ввода/вывода посылает сообщения о завершении операции ввода/вывода запросившему эту операцию процессу и снимает его с состояния ожидания ввода/вывода, если процесс ожидал завершения операции.
Слайд 49
Слайд 50
Слайд 511. SSTF (shortest seek time – first) – с наименьшим временем поиска – первым. В соответствии с этой дисциплиной при позиционировании магнитных головок следующим выбирается запрос, для которого необходимо минимальное перемещение с цилиндра на цилиндр, даже если этот запрос не был первым в очереди на ввод/вывод. Однако для этой дисциплины характерна резкая дискриминация определенных запросов, а ведь они могут идти от высокоприоритетных задач. Обращения к диску проявляют тенденцию концентрироваться, в результате чего запросы на обращение к самым внешним и самым внутренним дорожкам могут обслуживаться существенно дольше и нет никакой гарантии обслуживания. Достоинством такой дисциплины является максимально возможная пропускная способность дисковой подсистемы. 2. Scan (сканирование). По этой дисциплине головки перемещаются то в одном, то в другом «привилегированном» направлении, обслуживая «по пути» подходящие запросы. Если при перемещении головок чтения/записи более нет попутных запросов, то движение начинается в обратном направлении. 3. Next-Step Scan – отличается от предыдущей дисциплины тем, что на каждом проходе обслуживаются только запросы, которые уже существовали на момент начала прохода. Новые запросы, появляющиеся в процессе перемещения головок чтения/записи, формируют новую очередь запросов, причем таким образом, чтобы их можно было оптимально обслужить на обратном ходу. 4. C-Scan (циклическое сканирование). По этой дисциплине головки перемещаются циклически с самой наружной дорожки к внутренним, по пути обслуживая имеющиеся запросы, после чего вновь переносятся к наружным цилиндрам. Эту дисциплину иногда реализуют таким образом, чтобы запросы, поступающие во время текущего прямого хода головок, обслуживались не попутно, а при следующем ходе, что позволяет исключить дискриминацию запросов к самым крайним цилиндрам; она характеризуется очень малой дисперсией времени ожидания обслуживания. Эту дисциплину обслуживания часто называют «элеваторной».
Слайд 52
Слайд 53
Слайд 54Устройства ввода-вывода можно условно разделить на две категории: блочные устройства и символьные устройства. К блочным относятся такие устройства, которые хранят информацию в блоках фиксированной длины, у каждого из которых есть свой собственный адрес. Обычно размеры блоков варьируются от 512 до 32 768 байт. Вся передача данных ведется пакетами из одного или нескольких целых (последовательных) блоков. Важным свойством блочного устройства является то, что оно способно читать или записывать каждый блок независимо от всех других блоков. Среди наиболее распространенных блочных устройств жесткие диски, приводы компакт-дисков и флэш-накопители USB. Другой тип устройств ввода-вывода — символьные устройства. Они выдают или воспринимают поток символов, не относящийся ни к какой блочной структуре. Они не являются адресуемыми и не имеют никакой операции позиционирования. В качестве символьных устройств могут рассматриваться принтеры, сетевые интерфейсы, мыши (в качестве устройства-указателя), крысы (для лабораторных исследований по психологии) и множество других устройств, не похожих на дисковые устройства.
Слайд 55
Слайд 56Назначение таблицы «виртуальных логических устройств» (Device Reference Table, DRT) — установление связи между виртуальными (логическими) устройствами и реальными устройствами, описанными посредством таблицы оборудования. таблица прерываний — необходима для организации обратной связи между центральной частью и устройствами ввода-вывода. Эта таблица указывает для каждого сигнала запроса на прерывание тот элемент UCB, который сопоставлен данному устройству.
Слайд 57UCB (Unit Control Block) — блок управления устройством ввода-выводасодержит следующую информацию об устройстве: тип устройства, его конкретная модель, символическое имя и характеристики устройства; способ подключения устройства (через какой интерфейс, к какому разъему, какие порты и линия запроса прерывания используются и т. д.); номер и адрес канала (и подканала), если такие используются для управления устройством; информация о драйвере, который должен управлять этим устройством, адреса секции запуска и секции продолжения драйвера; информация о том, используется или нет буферизация при обмене данными с устройством, ≪имя≫ (или просто адрес) буфера, если такой выделяется из системной области памяти; установка тайм-аута и ячейки для счетчика тайм-аута; состояние устройства; поле указателя для связи задач, ожидающих устройство; возможно, множество других сведений.
Слайд 58DCB (Data Control Block - блок управления данным). Назначение— подключение препроцессоров к процессу подготовки данных на ввод-вывод, то есть учет конкретных технических характеристик и используемых преобразований. Это необходимо для того, чтобы имеющееся устройство получало не какие-то непонятные ему коды или форматы данных, не соответствующие режиму его работы, а коды и форматы, созданные специально под данное устройство. Теперь такие препроцессоры часто называют высокоуровневыми драйверами, или просто драйверами, хотя изначально под термином ≪драйвер≫ подразумевалась программа управления операциями ввода-вывода.
Слайд 59Для подключения периферийных устройств к шине USB используется четырёх проводный кабель, при этом два провода (витая пара) в дифференциальном включении используются для приёма и передачи данных, а два провода — для питания периферийного устройства. Благодаря встроенным линиям питания USB позволяет подключать периферийные устройства без собственного источника питания (максимальная сила тока, потребляемого устройством по линиям питания шины USB, не должна превышать 500 мА, у USB 3.0 — 900 мА).
USB(Universal Serial Bus— «универсальная последовательная шина») — последовательный интерфейс передачи данных для среднескоростных и низкоскоростных периферийных устройств в вычислительной технике. Символом USB являются четыре геометрические фигуры: большой круг, малый круг, треугольник и квадрат, расположенные на концах древовидной блок-схемы.
Слайд 60
Слайд 61
Слайд 62Сигналы могут быть синхронными, когда инициатор сигнала — сам процесс, и асинхронными, когда инициатор сигнала — интерактивный пользователь, сидящий за терминалом. Источником асинхронных сигналов может быть также ядро, когда оно контролирует определенные состояния аппаратуры, рассматриваемые как ошибочные. Сигналы можно рассматривать как простейшую форму взаимодействия между процессами. Они используются для передачи от одного процесса другому или от ядра ОС какому-либо процессу уведомления о возникновении определенного события.
Слайд 63
Слайд 64
Слайд 65
Слайд 66Дескриптор процесса, как правило, содержит следующую информацию: идентификатор процесса (Process Identifier, PID); тип (или класс) процесса, который определяет для супервизора некоторые правила предоставления ресурсов; приоритет процесса, в соответствии с которым супервизор предоставляет ресурсы (в рамках одного класса процессов в первую очередь обслуживаются более приоритетные процессы); переменную состояния, которая определяет, в каком состоянии находится процесс (готов к работе, выполняется, ожидает устройства ввода-вывода и т. д.); контест задачи, то есть защищенную область памяти (или адрес такой области), в которой хранятся текущие значения регистров процессора, когда процесс прерывается, не закончив работы; информацию о ресурсах, которыми процесс владеет и/или имеет право пользоваться (указатели на открытые файлы, информация о незавершенных операциях ввода-вывода и др.); место (или его адрес) для организации общения с другими процессами; параметры времени запуска (момент времени, когда процесс должен активизироваться, и периодичность этой процедуры); в случае отсутствия системы управления файлами адрес задачи на диске в ее исходном состоянии и адрес на диске, куда она выгружается из оперативной памяти, если ее вытесняет другая задача (последнее справедливо для диск-резидентных задач, которые постоянно находятся во внешней памяти на системном магнитном диске и загружаются в оперативную память только на время выполнения).
Слайд 67
Слайд 68
Слайд 69Приоритет - это число, характеризующее степень привилегированности процесса при использовании ресурсов вычислительной машины, в частности, процессорного времени: чем выше приоритет, тем выше привилегии. Существует две разновидности приоритетных алгоритмов: алгоритмы, использующие относительные приоритеты, алгоритмы, использующие абсолютные приоритеты. В обоих случаях выбор процесса на выполнение из очереди готовых осуществляется одинаково: выбирается процесс, имеющий наивысший приоритет. По разному решается проблема определения момента смены активного процесса. В системах с относительными приоритетами активный процесс выполняется до тех пор, пока он сам не покинет процессор, перейдя в состояние ОЖИДАНИЕ (или же произойдет ошибка, или процесс завершится). В системах с абсолютными приоритетами выполнение активного процесса прерывается еще при одном условии: если в очереди готовых процессов появился процесс, приоритет которого выше приоритета активного процесса. В этом случае прерванный процесс переходит в состояние готовности.
Слайд 70Приоритет может назначаться директивно администратором системы в зависимости от важности работы или внесенной платы, либо вычисляться самой ОС по определенным правилам, он может оставаться фиксированным на протяжении всей жизни процесса (статический приоритет) либо изменяться во времени в соответствии с некоторым законом (динамический приоритет).
Слайд 71
Слайд 72Когда составляемая программа целиком укладывается в схему событийно-ориентированного программирования с обособленными реакциями, а не является частью другой, охватывающей программы, то управление во всех таких программах может быть унифицировано: содержательные части, касающиеся обработки событий, встраиваются (в разных смыслах: вызываются, подключаются как внешние библиотеки и др.) в стандартный программный текст, обычно называемый проектом. Получается, что схема составления программы как последовательного текста заменяется более адекватной задаче схемой, основанной на встраивании. Непейвода Н.Н. Программирование.
Слайд 73
Слайд 74Вычислительный процесс (или просто — «процесс») - абстракция, описывающая выполняющуюся программу. Последовательный процесс (иногда называемый «задачей») — это выполнение отдельной программы с ее данными на последовательном процессоре. В последние годы задачей стали называть единицу работы, для выполнения которой предоставляется центральный процессор. Процесс может включать в себя несколько задач.
Слайд 75
Слайд 76
Слайд 77Вирус – это саморазмножающаяся программа: она распространяется с файла на файл и с компьютера на компьютер. Черви считаются подклассом вирусов, но обладают характерными особенностями. Червь размножается (воспроизводит себя), не заражая другие файлы. Он внедряется один раз на конкретный компьютер и ищет способы распространиться далее на другие компьютеры. Троянский конь – это программа, которая внешне выглядит как легальный программный продукт, но при запуске совершает вредоносные действия. Троянские программы не могут распространяться сами по себе, и этим они отличаются от вирусов и червей.
Слайд 78
Слайд 79
Слайд 80DoS-атака (атака типа «отказ в обслуживании», от англ. Denial of Service) — атака на вычислительную систему с целью довести её до отказа, то есть создание таких условий, при которых легитимные (правомерные) пользователи системы не могут получить доступ к предоставляемым системой ресурсам (серверам), либо этот доступ затруднён. Отказ «вражеской» системы может быть и шагом к овладению системой (если во внештатной ситуации ПО выдаёт какую-либо критическую информацию — например, версию, часть программного кода и т. д.). Но чаще это мера экономического давления: простои службы, приносящей доход, счета от провайдера и меры по уходу от атаки ощутимо бьют «цель» по карману. Если атака выполняется одновременно с большого числа компьютеров, говорят о DDoS-атаке (от англ. Distributed Denial of Service, распределённая атака типа «отказ в обслуживании»). В некоторых случаях к фактической DDoS-атаке приводит непреднамеренное действие, например, размещение на популярном интернет-ресурсе ссылки на сайт, размещённый на не очень производительном сервере (слэшдот-эффект). Большой наплыв пользователей приводит к превышению допустимой нагрузки на сервер и, следовательно, отказу в обслуживании части из них.
Слайд 81Существуют различные причины, из-за которых может возникнуть DoS-условие: Ошибка в программном коде, приводящая к обращению к неиспользуемому фрагменту адресного пространства, выполнению недопустимой инструкции или другой необрабатываемой исключительной ситуации, когда происходит аварийное завершение программы-сервера — серверной программы. Классическим примером является обращение по нулевому (англ. null) адресу. Недостаточная проверка данных пользователя, приводящая к бесконечному либо длительному циклу или повышенному длительному потреблению процессорных ресурсов (вплоть до исчерпания процессорных ресурсов) либо выделению большого объёма оперативной памяти (вплоть до исчерпания доступной памяти). Флуд (англ. flood — «наводнение», «переполнение») — атака, связанная с большим количеством обычно бессмысленных или сформированных в неправильном формате запросов к компьютерной системе или сетевому оборудованию, имеющая своей целью или приведшая к отказу в работе системы из-за исчерпания системных ресурсов — процессора, памяти или каналов связи. Атака второго рода — атака, которая стремится вызвать ложное срабатывание системы защиты и таким образом привести к недоступности ресурса.
Слайд 82
Слайд 83
Слайд 84Большинство Unix и Linux в основном односторонний алгоритм шифрования, называемый DES (стандарт шифрования данных /Data Encription Standard/), для шифрования паролей. Эти зашифрованные пароли сохраняются (обычно) в файле /etc/passwd или (реже) в /etc/shadow. Когда пользователь пытается зарегистрироваться, все, что он набирает, снова шифруется и сравнивается с содержимым файла, в котором хранятся пароли. Если они совпадают, должно быть это одинаковые пароли, и ему разрешают доступ. Хотя DES является двухсторонним (вы можете закодировать, а затем раскодировать сообщение, давая верный ключ), большинство Unix используют односторонний вариант. Это значит, что невозможно на основании содержания файла /etc/passwd (или /etc/shadow) провести расшифровку для получения паролей.
Слайд 85
Слайд 86Шифрование секретным ключом также называется симметричным шифрованием, так как для шифрования и дешифрования данных используется один и тот же ключ, т.е. отправитель и получатель информации должны иметь одинаковый ключ. Шифрование с секретным ключом обеспечивает конфиденциальность информации в зашифрованном состоянии. Расшифровать сообщение могут только те лица, которым известен ключ. Шифрование с секретным ключом быстро и легко реализуется с помощью аппаратных или программных средств. Недостаток: неизменная частота букв в исходном алфавите, т.е. какая-то буква, повторяется очень часто. При достаточном количестве шифрованного текста, можно найти последовательность символов и взломать любой шифр. Одноразовые блокноты (One-time Pad, OTP) Единственная теоретически невзламываемая системой шифрования, которая представляет собой список чисел в случайном порядке, используемый для кодирования сообщения. OTP может использоваться только один раз. Одноразовые блокноты используются в информационных средах с очень высоким уровнем безопасности (но только для коротких сообщений). Недостаток: генерация действительно случайных блокнотов и проблема распространения блокнотов. Другими словами, если блокнот выявляется, то раскрывается и та информация, которую он защищает. Если блокноты не случайные – могут выявляться схемы, которые можно использовать для проведения анализа частоты встречаемых символов.
Слайд 87Шифрование с открытым ключом - используются два ключа. Один ключ – при шифровании информации, другой – при дешифровке. Оба абонента (и отправитель, и получатель) должны иметь ключ. Ключи связаны друг с другом (поэтому они называются парой ключей), но они различны. Т.е., если сообщение зашифровано с помощью ключа К1, то расшифровать это сообщение можно только с помощью ключа К2. и наоборот. При этом один ключ называют секретным, а другой – открытым. Секретный ключ содержится в тайне владельцем пары ключей. Открытый ключ передается вместе с информацией в открытом виде, т.к. у абонента имеется один из ключей пары, а другой ключ вычислить просто невозможно. Для конфиденциальности, шифрование выполняется с открытым ключом. Тогда расшифровать информацию может только владелец ключа, так как секретный ключ содержится в тайне самим владельцем. Если исходная информация была зашифрована с помощью секретного ключа владельца, то Целостность информации после передачи может быть проверена. Недостаток: систем шифрования с открытым ключом требуют больших вычислительных мощностей, а значит, являются намного менее быстродействующими, нежели системы с секретным ключом.
Слайд 88
Слайд 89модель Белл-Ла Падула удовлетворяет двум свойствам: Простая безопасность: субъект может только читать объект, если уровень секретности субъекта доминирует над уровнем секретности объекта. Другими словами, субъект может читать "вниз", но не может читать "вверх"; Свойство ограничения: субъект может только записать в объект, если уровень секретности объекта превосходит уровень секретности субъекта. Субъект может записывать "вверх", но не может записать "вниз".
Слайд 90
Слайд 91
Слайд 92Учетные записи групп (их называют группами безопасности) используются для определения разрешений на доступ к тем или иным объектам. Для этого каждый объект может иметь список управления доступом (Access Control List, ACL). Список ACL состоит из записей — АСЕ (Access Control Entry). Каждая запись списка состоит из двух полей. В первом поле указывается некий идентификатор безопасности. Во втором поле располагается битовая маска доступа, описывающая, какие разрешения указаны в явном виде, какие не запрещены, и какие запрещены в явном виде для этого идентификатора.
Слайд 93
Слайд 94Принцип обеспечения безопасности вычислений Обеспечение безопасности при выполнении вычислений является желательным свойством для любой многопользовательской системы. Правила безопасности определяют такие свойства, как защита ресурсов одного пользователя от других и установление квот по ресурсам для предотвращения захвата одним пользователем всех системных ресурсов (таких, как память). Принцип мобильности (переносимости) Операционная система относительно легко должна переноситься с процессора одного типа на процессор другого типа и с аппаратной платформы (которая включает наряду с типом процессора и способ организации всей аппаратуры компьютера, иначе говоря, архитектуру вычислительной системы) одного типа на аппаратную платформу другого типа. Принцип совместимости Одним из аспектов совместимости является способность ОС выполнять программы, написанные для других ОС или для более ранних версий данной операционной системы, а также для другой аппаратной платформы. Принцип независимости программ от внешних устройств Этот принцип заключается в том, что связь программ с конкретными устройствами производится не на уровне трансляции программы, а в период планирования ее исполнения. В результате перекомпиляция при работе программы с новым устройством, на котором располагаются данные, не требуется.
Слайд 95Принцип виртуализации Этот принцип позволяет представить структуру системы в виде определенного набора планировщиков процессов и распределителей ресурсов (мониторов) и использовать единую централизованную схему распределения ресурсов. Принцип функциональной избыточности В состав ОС может входить несколько типов мониторов (модулей супервизора, управляющих тем или другим видом ресурса), различные средства организации коммуникаций между вычислительными процессами. Принцип генерируемости ОС Основное положение этого принципа определяет такой способ исходного представления центральной системной управляющей программы ОС (ее ядра и основных компонентов, которые должны постоянно находиться в оперативной памяти), который позволял бы настраивать эту системную супервизорную часть, исходя из конкретной конфигурации конкретного вычислительного комплекса и круга решаемых задач. Эта процедура проводится редко, перед достаточно протяженным периодом эксплуатации ОС. Процесс генерации осуществляется с помощью специальной программы-генератора и соответствующего входного языка для этой программы, позволяющего описывать программные возможности системы и конфигурацию машины. В результате генерации получается полная версия ОС. Сгенерированная версия ОС представляет собой совокупность системных наборов модулей и данных. Принцип функциональной избирательности В ОС выделяется некоторая часть важных модулей, которые должны постоянно находиться в оперативной памяти для более эффективной организации вычислительного процесса. Эту часть в ОС называют ядром, так как это действительно основа системы.
Слайд 96
Слайд 97Модули, входящие в состав ОС, можно классифицировать по кратности использования. Однократно используемые модули – это модули, которые могут быть правильно выполнены только один раз, так как, при своём выполнении, они “портят” свою собственную память. Примером такого модуля является абсолютный загрузчик системы. Модули многократного применения (повторно используемые модули) могут быть, в свою очередь, непривилегированными, привилегированными и реентнрабельными. Непривилегированные программные модули – это модули, которые могут быть прерваны во время своей работы, причём, промежуточные результаты их работы не сохраняются. Привилегированные программные модули не могут быть прерваны во время своего выполнения, т. е. они работают при отключённой системе прерываний. Такие модули, начав работать, выполняются до конца. Реентерабельные программные модули допускают повторное многократное прерывание своего выполнения и повторный их запуск, причём при каждом таком прерывании происходит запоминание промежуточных результатов в некоторой специально отведённой для этого области памяти. Такие модули обычно состоят из трёх секций. Первая секция предназначена для выделения памяти под промежуточные результаты выполнения. Вторая секция представляет собой непосредственный код программного модуля. Третья секция – это секция освобождения памяти, которая использовалась для хранения промежуточных результатов. Первая и третья секции работают как привилегированные секции, а вторая – как непривилегированная. Примерами реентерабельных модулей являются ряд драйверов из состава ОС.
Слайд 98
Слайд 99Классификация ОС Поддержка многозадачности (однозадачные, многозадачные) Поддержка многопользовательского режима (однопользовательские , многопользовательские) Способу организации многозадачности (вытесняющая и невытесняющая многозадачность). Поддержка многопоточности Поддержка многопроцессорной обработки По типу аппаратуры (персональных компьютеров, мини-компьютеров, мейнфреймов, кластеров и сетей ЭВМ) Особенности областей использования (пакетной обработки, разделения времени и реального времени) Особенности методов построения (монолитные, микроядерные и объектно-ориентированные)
Слайд 100
Слайд 101Прикладной программный интерфейс (API -application programming interface) реализуется с помощью специальных программных модулей, которые принимают его команды на соответствующем языке (возможно, с использованием графического интерфейса) и транслируют их в обычные вызовы в соответствии с основным интерфейсом операционной системы.