Операционная система: назначение и классификация операционных систем. Общая характеристика и основные механизмы операционной системы Windows

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

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

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

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

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

Наличие в системе средств многопроцессорной является важнейшей характеристикой, подобные средства представлены в Net Ware, OS/2, Widows NT.

Так как мы привыкли использовать систему Windows, то вас может волновать именно ее классификация. Итак, основные операционные системы Windows, которые использовались у нас для рядовых пользователей, это Windows 95, 98, NT, XP, Seven.

Классификация операционных систем

Операционные системы классифицируются по:

    количеству одновременно работающих пользователей: однопользовательские, многопользовательские; числу процессов, одновременно выполняемых под управлением системы;
    количеству решаемых задач: однозадачные, многозадачные; количеству поддерживаемых процессоров: однопроцессорные, многопроцессорные;
    разрядности кода ОС: 8-разрядные, 16-разрядные, 32-разрядные, 64-разрядные; типу интерфейса: командные (текстовые) и объектно-ориентированные (графические); типу доступа пользователя к ЭВМ: с пакетной обработкой, с разделением времени, реального времени; типу использования ресурсов: сетевые, локальные.

В соответствии с первым признаком классификации многопользовательские операционные системы, в отличие от однопользовательских, поддерживают одновременную работу на ЭВМ нескольких пользователей за различными терминалами. Второй признак предполагает деление ОС на многозадачные и однозадачные. Понятие многозадачности означает поддержку параллельного выполнения нескольких программ, существующих в рамках одной вычислительной системы, в один момент времени. Однозадачные ОС поддерживают режим выполнения только одной программы в отдельный момент времени. В соответствии с третьим признаком многопроцессорные ОС, в отличие от однопроцессорных, поддерживают режим распределения ресурсов нескольких процессоров для решения той или иной задачи. Четвертый признак подразделяет операционные системы на 8-, 16-, 32- и 64-разрядные. При этом подразумевается, что разрядность операционной системы не может превышать разрядности процессора. В соответствии с пятым признаком ОС по типу пользовательского интерфейса делятся на объектно-ориентированные (как правило, с графическим интерфейсом) и командные (с текстовым интерфейсом). Согласно шестому признаку ОС подразделяются на системы:

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

В соответствии с седьмым признаком классификации ОС делятся на сетевые и локальные. Сетевые ОС предназначены для управления ресурсами компьютеров, объединенных в сеть с целью совместного использования данных, и предоставляют мощные средства разграничения доступа к данным в рамках обеспечения их целостности и сохранности, а также множество сервисных возможностей по использованию сетевых ресурсов. В настоящее время распространены следующие семейства операционных систем: DOS; OS/2; UNIX; Windows; ОС реального времени. ОС семейства DOS Первый представитель этого семейства - система MS-DOS (Microsoft Disk Operating System - дисковая операционная система фирмы Microsoft) была выпушена в 1981 году в связи с появлением IBM PC. Операционные системы семейства DOS являются однозадачными и обладают следующими характерными чертами и особенностями:

    интерфейс с ЭВМ осуществляется с помощью команд, вводимых пользователем; модульность структуры, упрощающая перенос системы на другие типы ЭВМ; небольшой объем доступной оперативной памяти (640 Кбайт).

Существенным недостатком операционных систем семейства DOS является отсутствие средств защиты от несанкционированного доступа к ресурсам ПК и ОС. В настоящее время широкое распространение получила ОС MS-DOS 6.22. ОС семейства OS/2 ОС OS/2 была разработана фирмой IBM в 1987 году в связи с созданием нового семейства ПК PS/2. OS/2 (Operating System/2) является многозадачной операционной системой второго поколения. Она является 32-разрядной графической многозадачной операционной системой для IBM PC-совместимых компьютеров, позволяет организовать параллельную работу нескольких прикладных программ, обеспечивая при этом защиту одной программы от другой и операционной системы от работающих в ней программ. ОС OS/2 обладает удобным графическим пользовательским интерфейсом и совместима с файловой системой DOS, что дает возможность использовать данные как в DOS, так и в OS/2 без каких-либо преобразований.

Cвойства операционных систем.

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

Современные операционные системы имеют графический интерфейс, мода на него началась еще в начале 80-х годов с выхода первой версии операционной системы MacOS для компьютеров ApplePC.

Что собой представляет графический интерфейс? Точное определения графического интерфейса следующее: Graphical User Interface - Графический Интерфейс Пользователя, или GUI. Если попробовать перевести слово "интерфейс" на русский язык , то получиться что-то вроде "междумордъе" или "междуличье". Вообще, графический интерфейс - это отдельная тема для разговора. Все, что видит пользователь, когда работает на компьютере в графической среде - это и есть графический интерфейс. Элементами ГИ являются рабочий стол, ярлыки на рабочем столе, кнопки, меню, различные ссылки и прочее. Что же было до того, как появился графический интерфейс? Была темнота, причем в прямом смысле этого слова. До появления Windows в компьютерном мире существовало очень мало операционных систем. Это MacOS, Unix, DOS. Графический интерфейс позволил максимально упростить работу с компьютером, поскольку в нем стало возможным работать с мышкой.

Мышь - неотьемлимая часть управления графическим интерфейсом, ведь управление им без мышки, особенно во всех современных операционных системах, весьма затруднительно, но далеко не невозможно. На всякий пожарный есть клавиатурные комбинации, которые были придуманы еще во времена DOS. А придуманы они были для того, чтобы некоторые функции можно было выполнять без ввода с клавиатуры команд. В самом DOSе клавиатурные команды не работали, они работали в программах, которые из него запускались.

Именно DOS был самой распространённой операционной системой. DOS не имел графического интерфейса и не имеет его и сейчас. Работа в DOS - это работа в текстовом режиме. Пользователь вводит команды с клавиатуры, нажимает ENTER и получает результат, неважно какой, отрицательный или положительный. Каждое действие пользователь прописывал вручную. Это был период с 1968 по 1986, пока в компьютерном мире не стали проявляться первые попытки создать нормальный графический интерфейс с использованием мышки.

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

Общими свойствами большинства современных операционных систем является так же многозадачность. Что это такое? Многозадачность - это возможность операционной системы с помощью процессора выполнять одновременно сразу несколько программ, а по современным меркам за единицу времени современная система может выполнять сразу более чем несколько программ, тут речь идет уже о десятках, о сотнях программ, которые выполняются компьютером одновременно. Это легко представить из простого примерщика. На заводе работает один человек, который сам выполняет производство, скажем, спичек. Он сам готовит древесину, потом он сам выстругивает спички, потом обмакивает их по очереди в сере и в конце упаковывает их по коробкам. Как Вы думаете, насколько эффективно он работает? А если добавить еще три десятка таких же рабочих, эффективность работы завода увеличиться, как Вы думаете? И если каждый будет выполнять свое дело: один - древесину готовить, другой - ее обмакивать, а третий - упаковывать, увеличиться производительность завода? Я думаю, что да. Вот именно на этом принципе основана многозадачность. Многопользовательский режим. Это то, чего в полной мере не реализовано в системе Windows, но зато уже давно реализовано в Linux и еще раньше реализовано в UNIX. Многопользовательский режим – это когда на одном компьютере может одновременно работать сразу несколько человек. Мы ведь с Вами знаем, что персональный компьютер - он потому то и персональный, что на нем может работать только один человек. Но операционные системы сейчас устраивают так, что они позволяют обслуживать одновременно несколько пользователей. Правда, на это обычно уходит много оперативной памяти. Вспомним пример со спичечным заводом: один станок может одновременно обслуживать несколько служащих.

Основные критерии подхода к выбору операционной системы.

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

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

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


В Смоленской областной универсальной библиотеке создан и успешно функционирует в течение 1,5 лет Мультимедийный культурный центр . Основная цель создания центра - реализация более широкого доступа заинтересованных пользователей к информации по культуре и искусству на базе современных информационных технологий, а также содействие в формировании в нашем регионе единого информационно-культурного пространства.

Обоснованность создания была обусловлена появлением в фондах библиотеки значительного количества единиц хранения на нетрадиционных носителях. На сегодняшний день фонды центра насчитывают 13 тысяч грампластинок, около 400 видеокассет , 300 аудиокассет, более 200 музыкальных и мультимедийных дисков.

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

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

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

Достаточно детально комплекс был представлен в докладе нашей библиотеки на научно-практических конференциях ЭХОЛОТ 2001, 2002. Останавливаться подробно на работе комплекса нет необходимости, но в нескольких словах ознакомлю аудиторию с его основными функциями.

margin-top:0cm" type="disc">алфавитному каталогу (имя композитора); каталогу авторов и названий (название музыкального произведения).

Кроме того, существует возможность расширенного поиска по;

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

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

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

Информационные системы" href="/text/category/informatcionnie_sistemi/" rel="bookmark">информационной системе решение достаточно мощное по потенциалу, для того чтобы обеспечить запас прочности и возможности для расширения мультимедиа объемов.

В качестве сервера технически может быть использован вполне рядовой компьютер с достаточно большим диском, но не экстремально большим - порядка 40-80 Гигабайт. Такой компьютер обеспечивает работу по оцифровке и вмещает в себя музыкальный архив. Если информационного объема не хватает всегда можно доставить дополнительные диски с большим объемом.

Требования, предъявляемые к рабочим станциям и вовсе не велики - персональный компьютер с ОС WIN 95/98 и звуковая карта, т. к. пользователь вводит интересующие его реквизиты, а информация выводится в виде мультимедиа.

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

1. С точки зрения единого представления данных, которые мы получаем с самых разных носителей. Данная система сможет заменить традиционные проигрыватели грампластинок, компакт-дисков, видеодисков, множество носителей, таких которые еще не стали популярны, такие как DVD, новые форматы представления цифрового видео.

2. Универсальность применения любой модели РС и не обязательно на базе процессоров INTEL.

3. Универсальность с точки зрения коммуникационных средств. Кроме непосредственно кабельного соединения в локальной сети могут быть использованы самые разнообразные способы удаленного доступа, включая INTERNET.

Немного о тех проблемах, сложностях с которыми мы столкнулись с начала работы центра:

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

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

3. Вопрос приоритетности отбора произведений для оцифровки. В связи с тем, что подобного опыта на начало работы центра не было, то было принято решение взять за основу алфавитный каталог. Хотя, наверное это одно из возможных решений. По нашим статистическим данным из общего фонда коллекции порядка 13 тысяч грампластинок, оцифровано 1200 или 4800 фонограмм. Это связано с тем, что при ежедневной работе сотрудников центра по оцифровке 2-3 часа, за месяц оцифровывается в среднем 70-80 грампластинок или 250-300 фонограмм.

4. Очень важен, как нам кажется, вопрос по стандартизации оцифрованных фондов различных организаций, возможно выработке в этом направлении единой правовой базы, проще единых "правил игры".

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

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

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

текстовые процессоры и т.п.

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

Классификация ОС

Существует несколько подходов для классификации операционных систем. Можно отметить следующие критерии классификации:

– реализация многозадачности.

По числу одновременно выполняемых задач операционные системы могут быть разделены на два класса:

1 - многозадачные (Unix, OS/2, Windows), полностью реализует мультипрограммный режим;

2 - однозадачные (например, MS-DOS).

– поддержка многопользовательского режима.

По числу одновременно работающих пользователей ОС можно разделить на:

1 - однопользовательские (MS-DOS, Windows 3.x);

2 - многопользовательские (Windows NT, Unix), характеризуются наличием у механизмов защиты персональных данных каждого пользователя.

– многопроцессорная обработка.

По этому критерию ОС делятся на:

1 - однопроцессорные;

2 - многопроцессорные, характеризуются поддержкой мультипроцесси-рования и более сложными алгоритмами управления ресурсами (Linux, Solaris, Windows NT и в ряде других). Многопроцессорные системы состоят из двух или более центральных процессоров, осуществляющих параллельное выполнение команд.

Многопроцессорные ОС делятся на:

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

2 - асимметричные, в которых процессоры неравноправны, т.е. существует главный процессор (master) и подчиненные (slave), загрузку и характер работы которых определяет главный процессор.

– работа в режиме реального времени.

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

Назначение

Главное назначение ОС - это управление ресурсами , а главные ресурсы, которыми она управляет, - это аппаратура компьютера:

Процессор,

Устройства ввода-вывода.

Функции

· ОС реализует множество различных функций, в том числе:

· определяет так называемый интерфейс пользователя,

· обеспечивает разделение аппаратных ресурсов между пользователями,

· дает возможность работать с общими данными в режиме коллективного пользования,

· планирует доступ пользователей к общим ресурсам ,

· обеспечивает эффективное выполнение операций ввода-вывода ,

· осуществляет восстановление информации и вычислительного процесса в случае ошибок.

Требования

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

2. Защитой. Система должна быть защищена от несанкционированного доступа.

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

4. Предсказуемостью. Пользователь предпочитает, чтобы обслуживание не слишком сильно менялось в течение продолжительного времени. В частности, запуская программу, пользователь должен иметь представление, основанное на предыдущем опыте, о том, когда ему ожидать выдачи результатов.

5. Удобством. ОС должна быть достаточно гибкой и удобной для пользователя.

Системы можно разделить на несколько классов.

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

Дисковая операционная система MS DOS для IBM PC является примером систем подобного класса. Она, правда, умеет загружать несколько программ, но не предоставляет средств для исполнения этих программ. Более того, с точки зрения документированных функций, этим программам нельзя работать (существуют, однако, так называемые недокументированные задние двери (backdoors)).

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

ОС. К этому классу относятся системы, берущие на себя выполнение всех вышеперечисленных функций. Разделение на ОС и ДОС идет, по-видимому, от систем IBM DOS/360 и OS/360 для больших компьютеров этой фирмы, клоны которых известны у нас в стране под названием ЕС ЭВМ серии 10XX. (Кстати, у IBM была еще TOS/360, Tape Operating System - Ленточная Операционная Система).

Здесь и далее под ОС мы будем подразумевать системы ``общего назначения"", то есть рассчитанные на интерактивную работу одного или нескольких пользователей в режиме разделения времени, при не очень жестких требованиях на время реакции системы на внешние события. Как правило, в таких системах уделяется большое внимание защите самой системы, программного обеспечения и пользовательских данных от ошибочных и злонамеренных программ и пользователей. Обычно такие системы используют встроенные в архитектуру процессора средства защиты и виртуализации памяти. К этому классу относятся такие широко распространенные системы, как VAX/VMS, системы семейства Unix и OS/2, хотя последняя не обеспечивает одновременной работы нескольких пользователей и защиты пользователей друг от друга.

Часто такие системы являются подсистемой ОС общего назначения: MS DOS и MS Windows-эмуляторы под UNIX и OS/2, окно DOS в MS Windows, эмулятор RT-11 в VAX/VMS.

Системы реального времени. Это системы, предназначенные для облегчения разработки так называемых приложений реального времени. Это программы, управляющие некомпьютерным по природе оборудованием, часто с очень жесткими ограничениями по времени. Примером такого приложения может быть программа бортового компьютера крылатой ракеты, системы управления ускорителем элементарных частиц или промышленным оборудованием. Такие системы обязаны поддерживать многопроцессность, гарантированное время реакции на внешнее событие, простой доступ к таймеру и внешним устройствам. Такие системы могут по другим признакам относиться как к классу ДОС (RT-11), так и к ОС (OS-9, QNX). Часто такие системы (например, VxWorks) рассчитаны на работу совместно с управляющей host-машиной, исполняющей "нормальную" операционную систему.

Кросс-загрузчики. Это системы - полностью ориентированные на работу с host-машиной. Чаще всего они используются для написания и отладки кода, позднее прошиваемого в ПЗУ. Это системы программирования микроконтроллеров семейства Intel 8048 и подобных им, TDS (Transputer Development System) фирмы Inmos, и многие другие. Такие системы, как правило, включают в себя набор компиляторов и ассемблеров, работающих на host-системе (реже - загружаемых с host-машины в целевую систему), библиотеки, выполняющие большую часть функций ОС при работе программы (но не загрузку этой программы!), и средства отладки.

Системы промежуточных типов. Существуют системы, которые с первого взгляда нельзя отнести к одному из вышеперечисленных классов. Такова, например, система RT-11, которая, по сути своей, является ДОС, но позволяет одновременное исполнение нескольких программ с довольно богатыми средствами взаимодействия и синхронизации. Другим примером промежуточной системы являются MS Windows 3.x и Windows 95 которые, как ОС, используют аппаратные средства процессора для защиты и виртуализации памяти и даже могут обеспечивать некоторое подобие многозадачной работы, но не защищают себя и программы от ошибок других программ.

1. Особенности алгоритмов управления ресурсами

a. Многозадачные и однозадачные. Многозадачные делятся на вытесняющие (процесс может быть принудительно снят с обслуживания) многозадачность и не вытесняющие многозадачность

b. Однопользовательские и многопользовательские

c. Системы поддерживающие многопотоковую обработку и не поддерживающие

d. Многопроцессорные и однопроцессорные. Многопроцессорные ОС могут классифицироваться по способу организации вычислительного процесса на симметричные и асимметричные (Асимметричные – все основное – на одном проце, остальное – на другом; симметричные – все на 1 проце)

2. Особенности аппаратной платформы

a. Персональные компы b. Мини-компы

c. Мейнфреймы d. Кластеры e. Сети ЭВМ

3. Особенности областей использования

a. Система пакетной обработки – для задач вычислит характера, главный критерий эффективности – максимальная пропускная способность

b. Система разделения времени – каждой задаче выделяется определенный квант времени – Удобство работы пользователя

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

4. Особенности методов построения

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

b. Функциональные и объектно-ориентированные ОС – какие концепции использовались при написании ОС

c. Наличие нескольких прикладных сред (например, под Виндой идет все из ДОСа)

d. ОС с распределенной организацией

РАЗНОВИДНОСТИ СОВРЕМЕННЫХ ОС

1. MS-DOS является наиболее широко распространенной операционной системой для персональных компьютеров. Имеет графический интерфейс, но ограничение памяти, доступной DOS-программ - 640 К. Еще один "черный шар" против DOS - полное отсутствие мультизадачности. DOS предназначена для одновременного выполнения только одной прои

2. Windows 3.1x - Обеспечена возможность работы со всеми прикладными программами MS-DOS (текстовыми процессорами, СУБД, электронными таблицами и пр.). Windows 3.1 может работать в одном из трех режимов: Real (реальном), Standart (стандартном), 386 Enhanced (расширенном)

3. Windows 95 - способность работать с 16-разрядными прикладными программами Windows, программами, унаследованными от DOS, и старыми драйверами устройств реального режима и в то же время совместимой с истинными 32-разрядными прикладными программами и 32-разрядными драйверами виртуальных устройств.



4. Windows NT представляет собой операционную систему сервера, приспособленную для использования на рабочей станции (для получения приемлемой производительности необходимы быстродействующий процессор и по меньшей мере 16 Mb ОЗУ). Собственные прикладным программам выделяется 2 Gb особого адресного пространства, от границы 64 К до 2 Gb (первые 64 К полностью недоступны)

5. OS/2 Warp - это новая ОС с графическим интерфейсам пользователя (ГИП), в то время как Windows представляет собой ГИП, работающий "поверх" DOS. OS/2 является полностью защищенной операционной системой, благодаря чему невозможны конфликты между программами в памяти. OS/2 способна выполнять одновременно несколько прикладных программ.

ОС как виртуальная машина и как система управления ресурсами. Задачи ОС

ОС как виртуальная машина

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

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



ФАЙЛ можно открыть для чтения или записи и использовать для получения или сброса инфы, потом закрывать. Это проще чем задумываться о деталях перемещения головок диска или организации работы мотора. Аналогично, с помощью простых абстракций скрываются от программиста все подробности организации прерываний работы таймера, управление памятью и т.д. ОС представляется пользователю как интерфейс, или виртуальная машина с которой проще работать чем непосредственно с оборудованием компа.

ОС как менеджер ресурсов.

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

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

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

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

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

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

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

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

    По особенностям алгоритмов управления ресурсами. Главным ресурсом системы является процессор, поэтому дадим классификацию по алгоритмам управления процессором, хотя можно, конечно, классифицировать ОС по алгоритмам управления памятью, устройствами ввода-вывода и.т.д.

    Поддержка многозадачности (многопрограммности). По числу одновременно выполняемых задач ОС делятся на 2 класса: однопрограммные (однозадачные) – например, MS-DOS, MSX, и многопрограммные (многозадачные) – например, ОС ЕС ЭВМ, OS/360, OS/2, UNIX, Windows разных версий.

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

    Поддержка многопользовательского режима. По числу одновременно работающих пользователей ОС делятся: на однопользовательские (MS-DOS, Windows 3х, ранние версии OS/2) и многопользовательские (UNIX, Windows NT/2000/2003/XP/Vista).

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

    Виды многопрограммной работы. Специфику ОС во многом определяет способ распределения времени между несколькими одновременно существующими в системе процессами (или потоками). По этому признаку можно выделить 2 группы алгоритмов: не вытесняющая многопрограммность (Windows3.x, NetWare) и вытесняющая многопрограммность (Windows 2000/2003/XP, OS/2, Unix).

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

    Многопроцессорная обработка. Важное свойство ОС – отсутствие или наличие средств поддержки многопроцессорной обработки. По этому признаку можно выделить ОС без поддержки мультипроцессирования (Windows 3.x, Windows 95) и с поддержкой мультипроцессирования (Solaris, OS/2, UNIX, Windows NT/2000/2003/XP).

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

    По области использования и форме эксплуатации. Обычно здесь выделяют три типа в соответствии с использованными при их разработке критериями эффективности:

    системы пакетной обработки (OS/360, OC EC);

    системы разделения времени (UNIX, VMS);

    системы реального времени (QNX, RT/11).

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

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

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

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

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

    Встроенные операционные системы. Управляют карманными компьютерами (lialm OS, Windows CE – Consumer Electronics – бытовая техника), мобильными телефонами, телевизорами, микроволновыми печами и т.п.

    Операционные системы для персональных компьютеров, например, Windows 9.x, Windows ХР, Linux, Mac OSX и др.

    Операционные системы мини-ЭВМ, например, RT-11 для PDP-11 – OC реального времени, RSX-11 M для PDP-11 – ОС разделения времени, UNIX для PDP-7.

    Операционные системы мэйнфреймов (больших машин), например, OS/390, происходящая от OS/360 (IBM). Обычно ОС мэйнфреймов предполагает одновременно три вида обслуживания: пакетную обработку, обработку транзакций (например, работа с БД, бронирование авиабилетов, процесс работы в банках) и разделение времени.

    Серверные операционные системы, например, UNIX, Windows 2000, Linux. Область применения – ЛВС, региональные сети, Intranet, Internet.

    Кластерные операционные системы. Кластер – слабо связанная совокупность нескольких вычислительных систем, работающих совместно для выполнения общих приложений и представляющихся пользователю единой системной, например, Windows 2000 Cluster Server, Windows 2008 Server, Sun Cluster (базовая ОС – Solaris).

Знакомство с архитектурой UNIX начнем с рассмотрения таких неотъемлимых для неё характеристических понятий, как стандартизация и многозадачность:

Стандартизация

Несмотря на многообразие версий UNIX, основой всего семейства являются принципиально одинаковая архитектура и ряд стандартных интерфейсов (в UNIX стандартизовано почти всё – от расположения системных папок и файлов, до интерфейса системных вызовов и списка драйверов базовых устройств). Опытный администратор без особого труда сможет обслуживать другую версию, тогда как для пользователей переход на другую систему и вовсе может оказаться незаметным. Для системных же программистов такого рода стандарты позволяют полностью сосредоточиться на программировании, не тратя время на изучение архитектуры и особенностей конкретной реализации системы.

Многозадачность

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

Два кита UNIX: файлы и процессы

Существует два основных объекта операционной системы UNIX, с которыми приходиться работать пользователю – файлы и процессы. Эти объекты сильно связаны друг с другом, и в целом организация работы с ними как раз и определяет архитектуру операционной системы.

Все данные пользователя храняться в файлах; доступ к периферийным устройствам осуществляется посредством чтения и записи специальных файлов; во время выполнения программы, операционная система считывает исполняемый код из файла в память и передает ему управление.

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

Беглый взгляд на архитектуру UNIX

Презентация 2-02: беглый взгляд на архитектуру UNIX

Самый общий взляд на архитектуру UNIX позволяет увидеть двухуровневую модель системы, состоящую из пользовательской и системной части (ядра) (см. Рисунок 1.20, «Архитектура операционной системы UNIX»). Ядро непосредственно взаимодействует с аппаратной частью компьютера, изолируя прикладные программы (процессы в пользовательской части операционной системы) от особенностей ее архитектуры. Ядро имеет набор услуг, предоставляемых прикладным программам посредством системных вызовов. Таким образом, в системе можно выделить два уровня привилегий: уровень системы (привиегии специального пользователя root) и уровень пользователя (привилегии всех остальных пользователей). Подробнее об управлении доступом рассказывается в следующих главах (Глава 3, Безопасность операционной системы UNIX).

Рисунок 1.20. Архитектура операционной системы UNIX

Важной частью системных программ являются демоны. Демон – это процесс, выполняющий опеределенную функцию в системе, который запускается при старте системы и не связан ни с одним пользовательским терминалом. Демоны предоставляют пользователям определенные сервисы, примерами которых могут служить системный журнал, веб-сервер и т.п.. Аналогом демонов в операционной системе Windows NT и более поздних версиях являются системные службы.

Презентация 2-03: ядро UNIX

Операционная система UNIX обладает классическим монолитным ядром (см. «Архитектура операционной системы»), в котором можно выделить следующие основные части:

Файловая подсистема

Доступ к структурам ядра осуществляется через файловый интерфейс.

Управление процессами

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

Драйверы устройств

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

Рисунок 1.21. Ядро операционной системы UNIX

Благодаря тому, что в UNIX аппаратно-независимая часть явно отделена, это семейство операционных систем может быть с минимальными затратами перенесено на новые аппаратные платформы.

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