Файл: Сетевые операционные системы (Основные понятия).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 24.04.2023

Просмотров: 283

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ВВЕДЕНИЕ

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

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

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

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

Объект исследования данной работы - операционные системы.

Предмет исследования - сетевые операционные системы.

Цель работы - изучить основные понятия, а также архитектуру сетевых ОС.

Для достижения поставленной цели необходимо решить следующие задачи:

  • определить значения понятия операционная система;
  • изучить историю операционных систем;
  • выделить компоненты сетевых ОС;
  • изучить способы построения сетевых ОС;
  • рассмотреть основные команды сетевой ОС Linux.

При написании работы в качестве основных источников использовались:


  • Олифер В.Г. Сетевые операционные системы;
  • Кофлер М. Linux. Установка, настройка, администрирование.

1. ОПЕРАЦИОННЫЕ СИСТЕМЫ

1.1. Основные понятия

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

Часто пользователи задаются вопросом - из чего состоит вычислительная система? В первую очередь сюда относится техническое обеспечение - hardware: память, процессор, монитор, дисковые устройства и т.д., объединенные между собой магистральным соединением, называемым шиной. Кроме технического обеспечения в системе есть еще и программное - software, которое бывает двух видов: системное и прикладное. К системному программному обеспечению обычно относят программы, способствующие функционированию и разработке прикладных программ [2].

К прикладному программному обеспечению относятся различные бизнес-программы, игры и т. п.

Стоит отметить, что подобное деление программного обеспечения на системное и прикладное является условным. Фактически, программное обеспечение системы может быть представлено в виде нескольких слоев (см. рисунок 1) [14].

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

1. Операционная система как виртуальная машина

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

Рисунок 1 - Слои программного обеспечения компьютерной системы

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


Кроме того, современные вычислительные комплексы позволяют создавать иллюзию неограниченного размера оперативной памяти и количества процессоров. За все это отвечает операционная система. Таким образом, операционная система представляется пользователю виртуальной машиной, с которой ему гораздо проще иметь дело, чем непосредственно с компьютерным оборудованием [1].

2. Операционная система как менеджер ресурсов

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

3. Операционная система как защитник пользователей и программ

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

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

4. Операционная система как постоянно функционирующее ядро

Еще одним взглядом является понятие операционной системы как ядра. В данном случа операционная система представляет собой программу, постоянно работающую на компьютере и взаимодействующую со всеми прикладными программами. Однако в большинстве современных операционных систем на компьютере постоянно работает лишь часть операционной системы, которую и принято называть ее ядром [10].

1.2. История развития

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


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

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

Первый этап развития системного программного обеспечения принято связывать с использованием библиотечных программ, стандартных и служебных подпрограмм, а также макрокоманд. Концепция библиотек подпрограмм является наиболее ранней и относится к 1949 году. Создание библиотек послужило развитию автоматических средств их сопровождения, к которым относятся программы-загрузчики и редакторы связей. Подобные средства использовались в ЭВМ первого поколения, когда фактически операционных систем как таковых еще не существовало [7].

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

Для поддержания работоспособности и облегчения процессов эксплуатации машин создавались диагностические программы. Эти программы стали базовым системным программным обеспечением [4].

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


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

В связи с интенсивным развитием методов управления данными, возникала такая важная функция ОС, как реализация ввода-вывода без участия центрального процесса. Данный подход называется спулинг (от англ. SPOOL – Simultaneous Peripheral Operation on Line) [12].

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

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

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

Режим разделения времени позволил пользователю интерактивно взаимодействовать со своими программами, как это было до появления систем пакетной обработки [1].

Одной из первых ОС, вобравшей в себя все достижения того времени, была операционная система МСР (Main Control Program - главная управляющая программа), разработанная фирмой Burroughs для своих компьютеров В5000 в 1963 году. Именно данная ОС реализовала основные концепции, популярные и в наше время: