Назначение и состав системного ПО.

Назначение и состав системного ПО.

Операционная система обеспечивает совместное функционирование всех устройств компьютера и предоставляет пользователю доступ к его ресурсам. Имеют сложную структуру, каждый элемент которой выполняет определенные функции по управлению компьютером. Управление файловой системой. Процесс работы компьютера в определенном смысле сводится к обмену файлами между устройствами. В операционной системе имеются программные модули, управляющие файловой системой. Командный процессор. В состав операционной системы входит специальная программа - командный процессор, - которая запрашивает у пользователя команды и выполняет их. Пользователь может дать команду запуска программы, выполнения какой-либо операции над файлами (копирование, удаление, переименование), вывода документа на печать и так далее. Драйверы устройств. К магистрали компьютера подключаются различные устройства. Каждое устройство выполняет определенную функцию (ввод информации, хранение информации, вывод информации), при этом техническая реализация устройств существенно различается. Технология "Plug and Play" (подключи и играй) позволяет автоматизировать подключение к компьютеру новых устройств и обеспечивает их конфигурирование. Графический интерфейс. Для упрощения работы пользователя в состав ОС входят программные модули, создающие графический пользовательский интерфейс. В ОС с графическим интерфейсом пользователь может вводить команды с помощью мыши, тогда как в режиме командной строки необходимо вводить команды с помощью клавиатуры. Сервисные программы. В состав ОС входят также сервисные программы, или утилиты. Такие программы позволяют обслуживать диски (проверять, сжимать, дефрагментировать и так далее), выполнять операции с файлами (архивировать и так далее), работать в компьютерных сетях и так далее. Справочная система. Для удобства пользователя в состав операционной системы обычно входит также справочная система. Справочная система позволяет оперативно получить необходимую информацию как о функционировании операционной системы в целом, так и о работе ее отдельных модулей.

Назначение и основные функции операционных систем.

- Загрузка приложений в оперативную память и их выполнение.

- Стандартизованный доступ к периферийным устройствам.

- Управление оперативной памятью.

- Управление доступом к данным на энергонезависимых, организованным в той или иной файловой системе.

- Пользовательский интерфейс.

- Сетевые операции, поддержка стека протоколов.

- Параллельное или псевдопараллельное выполнение задач.

- Взаимодействие между процессами: обмен данными, взаимная синхронизация.

- Защита самой системы, а также пользовательских данных и программ от действий пользователей или приложений.

- Разграничение прав доступа и многопользовательский режим работы.

Основные понятия операционных систем.

Операционная система (ОС) - часть программного обеспечения, выступающая в качестве интерфейса между приложениями (и пользователями) и аппаратурой компьютера. Виртуальная машина - это вычислительная система заданной конфигурации, моделируемая для пользователя программными и аппаратными средствами конкретного реально существующего компьютера. Ресурсы операционной системы можно разделить на две группы: программные ресурсы (процессы, виртуальное адресное пространство, подсистема ввода-вывода); аппаратные ресурсы (процессоры, память, устройства). Ядро операционной системы - модули, выполняющие основные функции операционной системы Некоторые компоненты операционной системы представляют собой обычные приложения в стандартном для данной ОС формате. Их называют вспомогательными модулями операционной системы.

Требования, предъявляемые к операционным системам реального времени.

1. ОС должна быть многонитевой и прерываемой многонитевой по принципу абсолютного приоритета (прерываемой). Планировщик должен иметь возможность прервать любую нить и предоставить ресурс той нити, которой он более необходим. ОС (и аппаратура) должны также обеспечивать прерывания на уровне обработки прерываний.

2. Должно существовать понятие приоритета нити Проблема в том, чтобы определить, какой задаче требуется ресурс. В идеальной ситуации ОСРВ отдает ресурс нити или драйверу с ближайшим крайним сроком (так называемые ОС, управляемые временным ограничением (deadline driven OS)). Чтобы реализовать это, ОС должна знать время, требуемое каждой из выполняющихся нитей для завершения, поэтому разработчики ОС принимают иную точку зрения: вводится понятие уровня приоритета задачи, и временные ограничения сводят к приоритетам.

3. ОС должна обеспечивать предсказуемые механизмы синхронизации задач Задачи разделяют данные (ресурсы) и должны сообщаться друг с другом, следовательно, должны существовать механизмы блокирования и коммуникации.

4. Должна существовать система наследования приоритетов На самом деле именно этот механизм синхронизации и тот факт, что различные нити используют одно и то же пространство памяти, отличают нити от процессов. Процессы не разделяют одно и то же пространство памяти.

5. Поведение ОС должно быть известно

Архитектура ОС Windows.

Операционная система Windows использует многоуровневую архитектуру, с работой большей части компонентов в режиме ядра, но, тем не менее, в состав ядра не входящих. на верхнем уровне иерархии находятся процессы пользовательского режима. Это могут быть как пользователь-ские процессы, так и серверы самой системы. Процессы пользовательского режима взаимодействуют с операционной системой через документированные интерфейсы, предоставляемые динамическими библиотеками подсистем окружения. Windows поддерживает три подсистемы окружения – POSIX, OS/2 и Win32, причем подсистема Win32 является необходимым компонентом для работы всей операционной системы, т.к. обслуживает клавиатуру, мышь и экран. Хотя динамические библиотеки подсистем окружения способны самостоятельно обслужить некоторые запросы процессов, в большинстве случаев они переадресуют запрос исполнительной подсистеме Windows через недокументированный интерфейс системных вызовов. Можно сказать, что именно недокументированный интерфейс, реализуемый библиотекой Ntdll.dll является истинным интерфейсом системных вызовов, собственно и реализующим переход из режима задачи в режим ядра. Исключение составляет интерфейс GDI, полностью реализуемый подсистемой Win32 самостоятельно.Исполнительная система операционной системы Windows обеспечивает работу подсистем окружения, реализуя большинство стратегий управления операционной системы, и включает в себя такие подсистемы, как:• диспетчер конфигурации – обеспечивает управление системным реестром; • диспетчер процессов и потоков – обеспечивает управление процессами и потоками, запущенными в системе, например, создает и уничтожает процессы и потоки; • монитор безопасности – реализует политики безопасности на локальном компьютере;• диспетчер ввода-вывода – реализует аппаратно независимый ввод-вывод и отвечает за пересылку информации ввода-вывода соответствующим драйверам;• диспетчер Plug and Play – определяет, какие драйверы нужны для поддержки каждого устройства и загружает эти драйверы;• диспетчер электропитания – координирует работу драйверов устройств, обеспечивая, например, переключение периферийных устройств в экономичный режим при их длительном простое;
• диспетчер кэша файловой системы – реализует буферизацию ввода-вывода, отложенную запись и упреждающее чтение данных файла;• диспетчер виртуальной памяти – реализует собственное виртуальное адресное пространство для каждого процесса и обеспечивает поддержку работы диспетчера кэша;Ниже исполнительной системы Windows располагается ядро системы, реализующее различные для каждой процессорной архитектуры фундаментальные механизмы, такие как планирование и диспетчеризация потоков, диспетчеризация прерываний и исключений.

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

Дисциплины распределения ресурсов (диспетчеризация), используемые в операционных системах.

Одна из проблем, которая возникает при выборе подходящей дисциплины обслуживания — это гарантия обслуживания. Более жестким требованием к системе, чем просто гарантированное завершение процесса, является его гарантированное завершение к указанному моменту времени или за указанный интервал времени.

Гарантировать обслуживание можно, например, следующими тремя способами: • Выделять минимальную долю процессорного времени некоторому классу процессов, если по крайней мере один из них готов к исполнению.• Выделять минимальную долю процессорного времени некоторому конкретному процессу, если он готов к выполнению.
• Выделять столько процессорного времени некоторому процессу, чтобы он мог выполнить свои вычисления к сроку. Для сравнения алгоритмов диспетчеризации обычно используются критерии:
• загрузка центрального процессора;• пропускная способность центрального процессора ;• время оборота (turnaround time) процесса;
• время ожидания (waiting time);• время отклика.Главные причины, приводящие к снижению производительности системы:
• накладные расходы на переключение процессора. • переключение на другую задачу в тот момент, когда текущая задача выполняет критическую секцию, а другие задачи активно ожидают входа в свою критичес­кую секцию.Методы повышения производительности системы:
• совместное планирование – все потоки одного приложения одновременно ставятся на выполнение процессорами и одновременно снимаются с выполнения;• планирование, при котором находящиеся в критической секции задачи не прерываются, а активно ожидающие входа в критическую секцию задачи не ставятся на выполнение до тех пор, пока вход в секцию не освободится;• планирование с учетом так называемых подсказок (hints) программы (во время ее выполнения).

Понятие процесса.

Процесс - это абстракция, описывающая выполняющуюся программу. Процесс - исполнение последовательности действий в среде, включающей собственно выполняющуюся программу, а также связанных с ней данных и состояний (открытых файлов, текущего каталога и т. п.). С точки зрения операционной системы, процесс - единица работы, заявка на потребление системных ресурсов. - объект, которому выделяется процессор. Первое упоминание о процессе появилось в 60-е годы XX века в операционной системе MULTICS. Процессы образуют иерархию в операционной системе. Соответственно, будем называть порожденные процессы - потомками данного процесса, а родителя порожденного процесса - предком. При создании процесса должны быть выполнены следующие действия: присвоение процессу уникального номера (ID); добавление процесса в список процессов, известных системе; определение начального приоритета; формирование блока управления процессом; выделение необходимых ресурсов.

Понятие потока.

Понятие процесса было введено при реализации мультипрограммного режима работы вычислительной техники. Для реализации «мультизадачности» в ее исходном толковании необходимо было тоже ввести соответствующую сущность. Такой сущностью и стали так называемые легковесные процессы, или— потоки или треды (нити). При рассмотрении процессов (process) имеется в виду, что операционная система поддерживает их обособленность: у каждого процесса имеется свое виртуальное адресное пространство; каждому процессу назначаются свои ресурсы — файлы, окна, семафоры и т.д. Такая обособленность нужна для того, чтобы защитить один процесс от другого, поскольку они, совместно используя все ресурсы вычислительной системы, конкурируют друг с другом. В общем случае процессы просто никак не связаны между собой и могут принадлежать даже разным пользователям, разделяющим одну вычислительную систему. В однопроцессорной системе треды (задачи) разделяют между собой процессорное время так же, как это делают обычные процессы, а в мультипроцессорной системе могут выполняться одновременно, если не встречают конкуренции из-за обращения к иным ресурсам.

Механизм прерываний.

Механизм прерываний Он обеспечивается соответствующими аппаратно-программными средствами компьютера. Любая особая ситуация, вызывающая прерывание, сопровождается сигналом, называемым запросом прерывания (ЗП). Запросы прерываний от внешних устройств поступают в процессор по специальным линиям, а запросы, возникающие в процессе выполнения программы, поступают непосредственно изнутри микропроцессора. После появления сигнала запроса прерывания ЭВМ переходит к выполнению программы - обработчика прерывания. Обработчик выполняет те действия, которые необходимы в связи с возникшей особой ситуацией. По окончании работы обработчика по специальной команде iret (interrupt return) управление передается прерванной программе.

Каждому запросу прерывания в компьютере присваивается свой номер (тип прерывания), используемый для определения адреса обработчика прерывания. Вектор прерывания - четырехбайтовая область, в которой хранится адрес обработчика прерывания. Векторы прерываний объединяются в таблицу векторов прерывания. Таблица содержит до 256 элементов.

Микро ядерная архитектура.

Современная тенденция в разработке операционных систем состоит в перенесении значительной части системного кода на уровень пользователя и одновременной минимизации ядра. Речь идет о подходе к построению ядра, называемом микроядерной архитектурой (microkernel architecture) операционной системы, когда большинство ее составляющих являются самостоятельными программами. В этом случае взаимодействие между ними обеспечивает специальный модуль ядра, называемый микроядром. Микроядро работает в привилегированном режиме и обеспечивает взаимодействие между программами, планирование использования процессора, первичную обработку прерываний, операции ввода-вывода и базовое управление памятью.

Остальные компоненты системы взаимодействуют друг с другом путем передачи сообщений через микроядро.

Основное достоинство микроядерной архитектуры – высокая степень модульности ядра операционной системы. Это существенно упрощает добавление в него новых компонентов. В микроядерной операционной системе можно, не прерывая ее работы, загружать и выгружать новые драйверы, файловые системы и т. д. Существенно упрощается процесс отладки компонентов ядра, так как новая версия драйвера может загружаться без перезапуска всей операционной системы. Компоненты ядра операционной системы ничем принципиально не отличаются от пользовательских программ, поэтому для их отладки можно применять обычные средства. Микроядерная архитектура повышает надежность системы, поскольку ошибка на уровне непривилегированной программы менее опасна, чем отказ на уровне режима ядра. Для того чтобы микроядерная операционная система по скорости не уступала операционным системам на базе монолитного ядра, требуется очень аккуратно проектировать разбиение системы на компоненты, стараясь минимизировать взаимодействие между ними. Таким образом, основная сложность при создании микроядерных операционных систем – необходимость очень аккуратного проектирования.

26. Диспетчеризация процессов и задач. Стратегии планирования процессов.

Стратегия планирования (краткосрочное планирование, диспетчеризация) определяет, какие процессы планируются на выполнение для того, чтобы достигнуть поставленной цели. Стратегий планирования много, но основные из них следующие:

- по возможности заканчивать вычисления в том же порядке, в котором он были начаты;

- отдавать предпочтение более коротким задачам;

- предоставлять всем пользователям одинаковые услуги, в том числе и одинаковое время ожидания.

Стратегия планирования связана с понятием процесс, а не задача, так как процесс может состоять из нескольких задач (потоков). Диспетчеризация связана с понятием задачи (потока). Если ОС не поддерживает механизма потоков, то понятие задачи можно заменить на понятие процесса. Известно большое количество правил, в соответствии с которыми формируется очередь (список) готовых к выполнению задач. Имеются два больших класса дисциплин обслуживания:

- бесприоритетные:

- приоритетные. При бесприоритетном обслуживании выбор задачи производится в некотором порядке без учета их важности и времени обслуживания. При реализации приоритетных дисциплин обслуживания отдельным задачам предоставляется преимущественное право на исполнение. Бесприоритетные дисциплины обслуживания делятся на следующие: - линейные: o в порядке очереди; o случайный выбор процесса; - циклический: o циклический алгоритм; o многоприоритетный циклический алгоритм. Приоритетные дисциплины обслуживания делятся на следующие: - с фиксированным приоритетом: o с относительным приоритетом; o с абсолютным приоритетом; o адаптивное обслуживание; o приоритет зависит от времени ожидания; - с динамическим приоритетом: o приоритет зависит от времени ожидания; o приоритет зависит от времени обслуживания.

Методы борьбы с тупиками.

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

Предположим, что у системы в наличии n устройств, например лент. Суть алгоритма состоит в следующем. ОС принимает запрос от пользовательского процесса, если его максимальная потребность не превышает n.Пользователь гарантирует, что если ОС в состоянии удовлетворить его запрос, то все устройства будут возвращены системе в течение конечного времени. Текущее состояние системы называется надежным, если ОС может обеспечить всем процессам их выполнение в течение конечного времени.В соответствии с алгоритмом банкира выделение устройств возможно, только если состояние системы остается надежным. Недостатки алгоритма банкира Алгоритм банкира исходит из фиксированного количества ресурсов. Он требует, чтобы число работающих пользователей оставалось постоянным Данный алгоритм требует, чтобы распределитель гарантированно удовлетворял запросы за конечный период времени. Алгоритм требует, чтобы клиенты гарантированно возвращали ресурсы. нарушения одного из условий возникновения тупиков.Если организовать работу системы так, что, по крайней мере, одно из этих условий не удовлетворено, тупик не возможен. Нарушение условия взаимоисключения Если в системе отсутствуют выделенные ресурсы, тупиков не будет. Hарушение условия ожидания дополнительных ресурсов- заставить все процессы затребовать все свои ресурсы перед выполнением (все или ничего). Если система в состоянии выделить процессу все необходимое, он может работать до завершения. Если хотя бы один из ресурсов занят, процесс будет ждать. Нарушение принципа неперераспределяемости. можно отбирать ресурсы у удерживающих их процессов до завершения этих процессов. Если бы это было всегда возможно, то можно было бы добиться невыполнения третьего условия возникновения тупиков. Если процесс в течение некоторого времени использует определенные ресурсы, а затем освобождает эти ресурсы, он теряет всю работу, проделанную до настоящего момента. Нарушение условия кругового ожидания каждый процесс может иметь только один ресурс в каждый момент времени. Если нужен второй ресурс - освободи первый. Другой способ - присвоить всем ресурсам уникальные номера и потребовать, чтобы процессы запрашивали ресурсы в порядке возрастания номеров. Тогда круговое ожидание возникнуть не может.

Задачи управления памятью.

Основная память (она же ОЗУ) является важнейшим ресурсом, эффективное использование которого решающим образом влияет на общую производительность системы.

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

- выделение памяти для процесса пользователя при его запуске и освобождение этой памяти при завершении процесса;

- обеспечение настройки запускаемой программы на выделенные адреса памяти;

- управление выделенными областями памяти по запросам программы пользователя (например, освобождение части памяти перед запуском порожденного процесса).

Совершенно иначе обстоят дела в многозадачных ОС. Суммарные требования к объему памяти всех одновременно работающих в системе программ, как правило, превышают имеющийся в наличии объем основной памяти. В этих условиях ОС не имеет другого выхода, кроме поочередного вытеснения процессов или их частей на диск, чтобы использовать освободившуюся память на нужды других процессов. Неудачная реализация такого вытеснения может почти полностью застопорить работу ОС, которая большую часть времени будет заниматься записью и чтением с диска.

Основные понятия и концепция организации ввода-вывода в ОС.

По фун. назнач. внешние устройства, подключаемые к компьютеру делятся на следующие категории:

Устр. внешней памяти: устройства памяти с произв. доступом Direct Access Storage Device, устр. памяти с послед. доступом. Сетевые и коммуник. устр.. Устр. алф.-цифр. ввода/вывода. Устр. звукового вв./выв. Устр. графического ввода/вывода. Позиционные устр. ввода/вывода. Датчики и исполнительные устр. упр-щих систем. Нередко в эту классификацию вводят ещё один уровень. Устр. ввода делят на пассивные и акт. По отн. ЦП к выполняющейся на нем программе внешние устр. представляют собой набор спец. ячеек памяти или регистров. Регистры устройств подкл. к шинам адреса и данных выч. системы. Внешнее устр. имеет адресный дешифратор. Если выставленный по шине адрес соотв. адресу одного из регистров устройства дешифратор подключает соотв. регистр к шине данных. Т.о., регистры устройства получают адреса в физ. адресном пространстве микропроцессора. Сущ. два осн. подхода к адресации этих режимов: отдельные адресные пространства ввода/вывода; отобр. в память ввод/вывод, когда память и регистры вн. устройства размещаются в одном адресном пространстве. В первом случае для обращения к регистрам исп. команды IN и OUT. Во втором случае могут использоваться любые команды, работающие с операндами в памяти. Используют 2 осн. подхода к выделению адресов: фикс. адресация, когда одно и тоже устройство всегда имеет один и тот же адрес реестра; географическая, когда каждому разъёму периферийной шины соответствует свой диапазон адресов. При геогр. адресации перемещ. платы устр. в др. разъём прив. к переконф. ОС. Однако, этот способ искл. возможность конфликта адресов между устр. разных производ. или м/у двумя однотипными устр. Большинство периферийных шин современных компьютеров (PSI) организуют географическую адресацию. Многие операционные системы требуют, чтобы устройства имели конфигурационные регистры через обращение, к которым операционная система может выдать информацию об устройстве: фирму изготовителя, модель, версию, количество регистров.Наличие регистров позволяет операционной системе автоматически определять установленное оборудование и подгружать соответствующие управляющие модули.

Защита памяти.

Защита памяти (англ. Memory protection) — способ управления правами доступа к отдельным регионам памяти. Используется большинством многозадачных операционных систем. Основной целью защиты памяти является запрет доступа процессу к той памяти, которая не выделена для

этого процесса. Такие запреты повышают надежность работы как программ так и операционных систем, так как ошибка в одной программе не может повлиять непосредственно на память других приложений. Следует различать общий принцип защиты памяти и технологии ASLR или NX-бит. Защита по уровню привилегий. В защищенном режиме процессор имеет четырехуровневую систему привиле­гий, которая управляет использованием привилегированных инструкций и до­ступом к сегментам памяти. Уровень привилегии сегмента указывается в его дескрипторе. Нумерация уровней происходит от 0 до 3, высшие привилегии соответствуют нулевому уровню. Уровни привилегий обеспечивают защиту целостности операционной системы от «недружелюбных» программ. А также защиту адресных пространств одновременно выполняемых задач. Сервисы операционной системы, обра­ботчики прерываний и другое системное обеспечение могут включаться в вир­туальное адресное пространство каждой задачи и защищаться системой приви­легий. Как правило, назначение уровней следующее. Нулевой уровень – уровень операционной системы (ядро операционной системы). Уровни 1 и 2 – программы системного назначения. Уровень 3 – прочие прикладные программы (уровень прикладных программ). Дескрипторы (сегменты) и селекторы имеют свои атрибуты привилегий. защита по функциональному назначению.

Для надежной работы многозадачных систем необходима защита задач друг от друга. Защита предназначена для предотвращения несанкционированного до­ступа к памяти и выполнения критических инструкций — команды HLT, которая останавливает процессор, команд ввода/вывода, управления флагом разреше­ния прерываний и команд, влияющих на сегменты кода и данных. Механизмы защиты вводят следующие ограничения:

- Ограничение использования сегментов (например, запрет записи в только читаемые сегменты данных или попытки исполнения данных как кода). Для использования доступны только сегменты, дескрипторы которых описаны в GDT иLDT;

- Ограничение доступа к сегментам через правила привилегий; · Ограничение набора инструкций — выделение привилегированных инст­рукций или операций, которые можно выполнять только при определен­ных уровнях CPL и IOPL;· Ограничение возможности межсегментных вызовов и передачи управле­ния.

Защита данных.

Безопасность данных вычислительной системы обеспечивается средствами отказоустойчивости ОС, направленными на защиту от сбоев и отказов аппаратуры и ошибок программного обеспечения, а также средствами защиты от несанкционированного доступаПервым рубежом обороны при защите данных от несанкционированного доступа является процедура логического входа. Операционная система должна убедиться, что в систему пытается войти пользователь, вход которого разрешен администратором. Важным средством защиты данных являются функции аудита ОС, заключающиеся в фиксации всех событий, от которых зависит безопасность системы. Поддержка отказоустойчивости реализуется операционной системой, как правило, на основе резервирования. Чаще всего в функции ОС входит поддержание нескольких копий данных на разных дисках или разных дисковых накопителях. При отказе одного из избыточных устройств операционная система должна быстро и прозрачным для пользователя образом произвести реконфигурацию системы и продолжить работу с резервным устройством. Особым случаем обеспечения отказоустойчивости является использование нескольких процессоров, то есть мультипроцессирование, когда система продолжает работу при отказе одного из процессоров, хотя и с меньшей производительностью.

Основные понятия безопасности операционных систем.

безопасность операционной системы – это комплекс мер, направленных на предотвращение действий со стороны пользователя или других программ, которые могут привести к нарушению нормального функционирования операционной системы. Угроза безопасности компьютерной системы – это потенциально возможное происшествие, которое может оказать нежелательное воздействие на саму систему, а также на информацию, находящуюся в ней. Уязвимость компьютерной системы – это такая неудачная или не совсем корректная ее характеристика, которая представляет возможным возникновение угрозы. Уязвимости как раз и являются причиной возникновения неприятных ситуаций. 1. Несовершенство используемого программного обеспечения 2. Неправильная настройка программного обеспечения

Атака на компьютерную систему – это алгоритм действий, с помощью которых может быть осуществлен поиск уязвимостей и их использование с целью осуществления угрозы. Существуют три основных вида угроз: Угрозы раскрытия Угрозы целостности Угрозы отказа в обслуживании

Технологии шифрования.

Для того чтобы защь инфо от несанкционированного доступа, применяются технологии шифрования. Однако у пользователей, не обладающих надлежащими знаниями о методах шифрования, может возникнуть ложное ощущение, будто все чувствительные данные надежно защищены. Рассмотрим основные технологии шифрования данных. Пофайловое шифрование. Пользователь сам выбирает файлы, которые следует зашифровать. Такой подход не требует глубокой интеграции средства шифрования в систему, а следовательно, позволяет производителям криптографических средств реализовать мультиплатформенное решение для Windows, Linux, MAC OS X и т. д. Шифрование каталогов. Пользователь создает папки, все данные в которых шифруются автоматически. В отличие от предыдущего подхода шифрование происходит на лету, а не по требованию пользователя. В целом шифрование каталогов довольно удобно и прозрачно, хотя в его основе лежит все то же пофайловое шифрование. Такой подход требует глубокого взаимодействия с операционной системой, поэтому зависит от используемой платформы. Шифрование виртуальных дисков. Шифрование виртуальных дисков подразумевает создание файла на жестком диске. Этот файл в дальнейшем доступен пользователю как отдельный диск (операционная система «видит» его как новый логический диск). Например, диск Х:\. Все сведения, хранящиеся на виртуальном диске, находятся в зашифрованном виде. Главное отличие от предыдущих подходов в том, что криптографическому программному обеспечению не требуется шифровать каждый файл по отдельности. Здесь данные шифруются автоматически только тогда, когда они записываются на виртуальный диск или считываются с него. Шифрование всего диска. В этом случае шифруется абсолютно все: загрузочный сектор Windows, все системные файлы и любая другая информация на диске. Защита процесса загрузки. Если зашифрован весь диск целиком, то операционная система не сможет запуститься, пока какой-либо механизм не расшифрует файлы загрузки. Поэтому шифрование всего диска обязательно подразумевает и защиту процесса загрузки. Обычно пользователю требуется ввести пароль, чтобы операционная система могла стартовать. Если пользователь введет пароль правильно, программа шифрования получит доступ к ключам шифрования, что позволит читать дальнейшие данные с диска.

Технологии аутентификации.

Для того чтобы установить, что пользователь именно тот, за кого себя выдает, то есть что именно ему принадлежит введенный идентификатор, в информационных системах предусмотрена процедура аутентификации, задача которой - предотвращение доступа к системе нежелательных лиц. Обычно аутентификация базируется на одном или более из трех пунктов: то, чем пользователь владеет, то, что пользователь знает, атрибуты пользователя. Наиболее простой подход к аутентификации - использование пользовательского пароля. Когда пользователь идентифицирует себя при помощи уникального идентификатора или имени, у него запрашивается пароль. Если пароль, сообщенный пользователем, совпадает с паролем, хранимым в системе, система предполагает, что пользователь легитимен.

Аутентификация информации.

Под аутентификацией информации в компьютерных системах понимают установление подлинности данных, полученных по сети, исключительно на основе информации, содержащейся в полученном сообщении. Если конечной целью шифрования информации является обеспечение защиты от несанкционированного ознакомления с этой информацией, то конечной целью аутентификации информации является обеспечение защиты участников информационного обмена от навязывания ложной информации. Концепция аутентификации в широком смысле предусматривает установление подлинности информации как при условии наличия взаимного доверия между участниками обмена, так и при его отсутствии. В компьютерных системах выделяют два вида аутентификации информации: аутентификация хранящихся массивов данных и программ — установление того факта, что данные не подвергались модификации; аутентификация сообщений — установление подлинности полученного сообщения, в том числе решение вопроса об авторстве этого сообщения и установление факта приема.

Назначение и состав системного ПО.

Операционная система обеспечивает совместное функционирование всех устройств компьютера и предоставляет пользователю доступ к его ресурсам. Имеют сложную структуру, каждый элемент которой выполняет определенные функции по управлению компьютером. Управление файловой системой. Процесс работы компьютера в определенном смысле сводится к обмену файлами между устройствами. В операционной системе имеются программные модули, управляющие файловой системой. Командный процессор. В состав операционной системы входит специальная программа - командный процессор, - которая запрашивает у пользователя команды и выполняет их. Пользователь может дать команду запуска программы, выполнения какой-либо операции над файлами (копирование, удаление, переименование), вывода документа на печать и так далее. Драйверы устройств. К магистрали компьютера подключаются различные устройства. Каждое устройство выполняет определенную функцию (ввод информации, хранение информации, вывод информации), при этом техническая реализация устройств существенно различается. Технология "Plug and Play" (подключи и играй) позволяет автоматизировать подключение к компьютеру новых устройств и обеспечивает их конфигурирование. Графический интерфейс. Для упрощения работы пользователя в состав ОС входят программные модули, создающие графический пользовательский интерфейс. В ОС с графическим интерфейсом пользователь может вводить команды с помощью мыши, тогда как в режиме командной строки необходимо вводить команды с помощью клавиатуры. Сервисные программы. В состав ОС входят также сервисные программы, или утилиты. Такие программы позволяют обслуживать диски (проверять, сжимать, дефрагментировать и так далее), выполнять операции с файлами (архивировать и так далее), работать в компьютерных сетях и так далее. Справочная система. Для удобства пользователя в состав операционной системы обычно входит также справочная система. Справочная система позволяет оперативно получить необходимую информацию как о функционировании операционной системы в целом, так и о работе ее отдельных модулей.

Наши рекомендации