Презентация разработана доц.каф.ИСТ Горшковым Е.А. ТЕМА 1. Принципы построения информационных систем.
Литература Сетевые операционные системы Н. А. Олифер, В. Г. Олифер ch.phtml 2
Принципы построения операционных систем. Цели: : сформировать представление об основных понятиях дисциплины, истории развития, основных принципах построения и классификации операционных систем. Задачи: изучить основные понятия операционных систем; рассмотреть историю развития и предпосылки появления первых операционных систем; рассмотреть основные принципы построения операционных систем; рассмотреть и изучить классификацию операционных систем. 3
Основные понятия операционных систем. Операционная система (ОС) - это программа, которая обеспечивает возможность рационального использования оборудования компьютера удобным для пользователя образом. Функции операционных систем: Управление процессами: - планирование выполнения процессов (распределение процессорного время между несколькими одновременно существующими в системе процессами); - создание и уничтожение процессов; - обеспечение процессов необходимыми им системными ресурсами; - поддержание синхронизации процессов; - обеспечение взаимодействия между процессами. 4
Функции операционных систем. 2. Управление памятью: - отслеживание свободной и занятой памяти; - выделение памяти процессам и освобождение памяти после их завершения; - защита памяти; - настройка адресов программ на конкретную область физической памяти. 3. Управление файлами: - преобразование символьных имен файлов, с которыми работает пользователь или программист, в физические адреса данных на диске; - обеспечение совместного доступа к файлам; - управление внешними устройствами; - обслуживание всех операций ввода-вывода; - аутентификация и авторизация пользователей; - защита одной программы от влияния другой, обеспечение сохранности данных, защита самой операционной системы от исполняющихся на компьютере приложений. 5
История развития ОС 6 Чарльз Бэббидж Аналитическая машина
История развития ОС 7 Первый период ( ) Ламповое вычислительное устройство Создание ламповых вычислительных устройств, не имеющих операционной системы; Использование компьютера только в научно-исследовательской работе, а не как инструмента; Программирование на машинном языке; Программное обеспечение - матем. библиотеки и служебные программы.
История развития ОС 8 Второй период ( ) ЭВМ 1955 – 1965 г.г. Появление полупроводниковых элементов; Разделение на программистов, операторов и разработчиков; Появление компьютерных языков; Появление систем пакетной обработки и пакетов заданий, как совокупности заданий в виде набора перфокарт. JCL, Job Control Langruage –язык управления заданиями, используемый на перфокартах
История развития ОС 9 Третий период ( ) IBM/360 Переход от отдельных полупроводниковых элементов к интегральным микросхемам; Мультипрограммирование, как способ организации вычислительного процесса (каждая программа загружается в свой участок ОП); ОС разделения времени, как иллюзия единоличного использования ЭВМ; Создание семейств программно-совместимых машин.
История развития ОС 10 ОС миникомпьютеров PDP11/40 PDP-7
История развития ОС 11 Четвертый период ( настоящее время) Появление больших интегральных схем (БИС); Возрастание степени интеграции и удешевление микросхем; Появление персональных компьютеров; Доминирование ОС – MS-DOS (однопрограммная однопользовательская ОС) и UNIX (мультипрограммная многопользовательская ОС); Развитие сети персональных компьютеров, управляемых сетевыми или распределенными ОС, содержащих программную поддержку для сетевых интерфейсных устройств. Персональный компьютер
История развития ОС 12 Четвертый период ( настоящее время) Министерством обороны США в 1983 году принят стек протоколов TCP/IP в качестве военного стандарта. Внедрение протоколов TCP/IP в ARPANET придало этой сети все основные черты, которые отличают современный Интернет. Появление ОС UNIX: SunOS, HP-UX, Irix, AIX и многие другие, в которых производители компьютеров адаптировали код ядра и системных утилит для своей аппаратуры. Наибольшее влияние на развитие программного обеспечения для персональных компьютеров оказала операционная среда Windows компании Microsoft, представлявшая собой надстройку над MS-DOS. Сетевые функции также реализовывались сетевыми оболочками, работавшими поверх ОС.
История развития ОС 13 Четвертый период ( настоящее время) В 1987 году Microsoft и IBM выпустили первую многозадачную ОС для ПК с процессором Intel 80286, в полной мере использующая возможности защищенного режима OS/2. Она поддерживала вытесняющую многозадачность, виртуальную память, графический пользовательский интерфейс и виртуальную машину для выполнения DOS-приложений.
История развития ОС 14 Четвертый период ( настоящее время) Сетевые разработки компаний Microsoft и IBM привели к появлению NetBIOS транспортного протокола и одновременно интерфейса прикладного программирования для локальных сетей. В 80-е годы были приняты основные стандарты на коммуникационные технологии для локальных сетей: в 1980 году Ethernet, в 1985 Token Ring, в конце 80-х FDDI. Для персональных компьютеров применялись не только специально разработанные для них операционные системы, подобные MS-DOS, NetWare и OS/2, но и адаптировались уже существующие ОС. Появление процессоров Intel и особенно с поддержкой мультипрограммирования позволило перенести на платформу персональных компьютеров ОС UNIX.
История развития ОС 15 Современные ОС. Практически все ОС – сетевые; Поддержка средств работы с интернетом; Создание корпоративных сетевых операционных систем (StreetTalk компании Banyan, NetWare 4.0). Многоплатформенность, то есть способность работать на различных типах компьютеров, используя адаптивные механизмы, операционная система сама подбирает параметры операционной среды, например, тайм-ауты в коммуникационных протоколах часто определяются в зависимости от условий работы сети. Распределение оперативной памяти между процессами осуществляется автоматически с помощью механизмов виртуальной памяти в зависимости от активности этих процессов и информации о частоте использования ими той или иной страницы.
Основные принципы построения операционных систем: модульности, виртуализации, мобильности (переносимости) и совместимости, открытости, генерации операционной системы из программных компонентов. Модуль - функционально законченный элемент системы, выполненный в соответствии с принятыми межмодульными интерфейсами. Выделяют модули: резидентные - входящие в состав ядра (постоянно находящиеся в оперативной памяти) транзитные (загружаются в оперативную память только при необходимости и в случае отсутствия свободного пространства могут быть замещены другими транзитными модулями). 16
Принципы виртуализации и мобильности Виртуализация ресурсов позволяет: организовать разделение тех ресурсов между вычислительными процессами, которые не должны разделяться. абстрагироваться от конкретных ресурсов, максимально обобщить их свойства и работать с некоторой абстракцией, вобравшей в себя наиболее значимые особенности. представить структуру системы в виде определенного набора планировщиков процессов и распределителей ресурсов (мониторов) и использовать единую централизованную схему распределения ресурсов. Принцип мобильности позволяет легко перенести операционную систему на другую аппаратную платформу. 17
Принцип совместимости Способность операционной системы выполнять программы, написанные для других систем или для более ранних версий данной операционной системы, а также для другой аппаратной платформы. Двоичная совместимость достигается в том случае, когда можно взять исполняемую программу и запустить ее на выполнение на другой операционной системе. Для этого необходимы: совместимость на уровне команд процессора, совместимость на уровне системных вызовов и даже на уровне библиотечных вызовов, если они являются динамически связываемыми. Совместимость на уровне исходных текстов требует наличия соответствующего транслятора в составе системного программного обеспечения, а также совмести мости на уровне библиотек и системных вызовов. При этом необходима перекомпиляция имеющихся исходных текстов в новый выполняемый модуль. Одним из средств обеспечения совместимости программных и пользовательских интерфейсов является соответствие стандартам POSIX. Использование стандарта POSIX позволяет создавать программы в стиле UNIX, которые впоследствии могут легко переноситься из одной системы в другую. 18
Принципы генерируемости и расширяемости Под генерацией операционной системы понимается ее сборка (компоновка) из отдельных программных модулей. Принцип генерируемости существенно упрощает настройку ОС на требуемую конфигурацию вычислительной системы. Используется в Linux, где имеется возможность не только использовать какое-либо готовое ядро ОС, но и самому сгенерировать (скомпилировать) такое ядро, которое будет оптимальным для данного конкретного персонального компьютера и решаемых на нем задач. Для выполнения принципа открытости (расширяемости) необходимо, чтобы можно было легко внести дополнения и изменения, если это потребуется, не нарушая целостности системы. Используется для структурирования ОС по типу клиент-сервер с использованием микроядерной технологии. Основная часть ОС остается неизменной, и в то же время могут быть добавлены новые серверы или улучшены старые. 19
Принцип обеспечения безопасности вычислений Правила безопасности определяют такие свойства, как защита ресурсов одного пользователя от других и установление квот по ресурсам для предотвращения захвата одним пользователем всех системных ресурсов (таких как память). Во многих современных операционных системах гарантируется степень безопасности данных, соответствующая уровню С2 в системе стандартов США. (Основными свойствами, характерными для систем класса С, являются наличие подсистемы учета событий, связанных с безопасностью, и избирательный контроль доступа) 20
Классификация ОС. по назначению; по характеру взаимодействия с пользователем; по числу одновременно выполняемых задач; по числу пользователей; по аппаратной основе. 21
Классификация ОС по назначению системы общего назначения (ОC, предназначенные для решения широкого круга задач, включая запуск различных приложений, разработку и отладку программ, работу с сетью и мультимедиа); системы реального времени. Важный класс систем, предназначенных для управления объектами (такими как летательные аппараты, технологические установки, автомобили, сложная бытовая техника и т.п.); прочие специализированные системы. Это различные ОС, ориентированные на эффективное решение задач определенного класса, с большим или меньшим ущербом для прочих задач (например, Novell Netware – система, обеспечивающая надежное и эффективное функционирование локальных сетей). 22
Классификация ОС по характеру взаимодействия с пользователем пакетные ОС, обрабатывающие заранее подготовленные задания; диалоговые ОС, выполняющие команды пользователя в диалоговом режиме; ОС с графическим интерфейсом, предполагает наряду с поддержкой диалогового режима, использование мыши; встроенные ОС, не взаимодействующие с пользователем. 23
Классификация ОС по числу одновременно выполняемых задач однозадачные ОС, в которых в каждый момент времени может существовать не более чем один пользовательский процесс + системные процессы, например, выполняющие ввод/вывод (MS-DOS); многозадачные ОС, обеспечивающие параллельное выполнение нескольких последовательных процессов; 24
Классификация ОС по числу пользователей однопользовательские ОС, с полным доступом пользователя к ресурсам системы. Используются для изолированных компьютеров, не допускающих доступа к ресурсам данного компьютера по сети или с удаленных терминалов; многопользовательские ОС. Их важной компонентой являются средства защиты данных и процессов каждого пользователя, основанные на понятии владельца ресурса и на точном указании прав доступа, предоставленных каждому пользователю системы. 25
Классификация ОС по аппаратной основе однопроцессорные ОС (MS-DOS, Win 98, Win 95); многопроцессорные ОС. В задачи таких систем входит эффективное распределение выполняемых заданий по процессорам и организация согласованной работы всех процессоров (Win XP, Vista, Server 2003, 2008, Win 7, Win 8, Ubuntu); автономные ОС, которые выступают как интерфейс между устройствами вычислительной системы и прикладными программами, а также предназначены для управления вычислительными процессами; сетевые ОС. Они включают возможность доступа к другим компьютерам по локальной сети, работы с файловыми и другими серверами; серверные ОС. В отличие от сетевых они предоставляют пользователю возможность работы в распределенной сети как в единой системе, не разделенные на отдельные машины. 26
Спасибо за внимание 27