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



Скачать 436.5 Kb.

страница1/3
Дата14.04.2017
Размер436.5 Kb.
Просмотров510
Скачиваний0
ТипКурс лекций
  1   2   3

Профессор
Игорь Н. Бекман
КОМПЬЮТЕРЫ В ИНФОРМАТИКЕ
Курс лекций
Лекция 9. ОПЕРАЦИОННЫЕ СИСТЕМЫ
Операционная система - комплекс программ, обеспечивающий выполнение других программ, распределение ресурсов, планирование, ввод-вывод данных; управление данными, взаимодействие с оператором. Операционную систему составляют: монитор, загрузчик, супервизор, планировщик и набор системных обслуживающих программ (утилит).
В данной лекции мы рассмотрим основные аспекты программного обеспечения компьютера, существующие операционные системы (в том числе – операционные системы реального времени). В заключительной части лекции мы более подробно остановимся на наиболее исзевестных операционных системах (Unix, Dos, Windows, OS/2, Linux и др.).
1. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ КОМПЬЮТЕРА
- совокупность программ системы обработки информации и программных документов, необходимых для эксплуатации этих программ (ГОСТ 19781-90).
Программное обеспечение является одним из видов обеспечения вычислительной системы, наряду с техническим (аппаратным), математическим, информационным, лингвистическим, организационным и методическим обеспечением. В компьютерном сленге часто используется слово софт (от software), которое в этом смысле впервые применил в статье в American Mathematical Monthly математик из Принстонского университета Джон Тьюки в 1958.
Программное обеспечение представляет собой совокупность компьютерных инструкций. Оно охватывает программы, подпрограммы (разделы программы) и данные. Таким образом, программное обеспечение указывает компьютеру, что делать, как, когда, в какой последовательности и как часто. Нередко программное обеспечение называют просто программой. Компьютерные программы состоят из перечней команд, которые заставляют компьютер выполнять нужную работу. Компьютер должен получать исчерпывающие конкретные команды. Часто компьютерные программы имеют вид стенограммы.
Программное обеспечение (ПО) принято по назначению подразделять на системное, прикладное
(пакеты прикладных программ, ППП) и инструментарий технологии программирования, а по способу распространения и использования на коммерческое, открытое и свободное. Свободное программное обеспечение может распространяться, устанавливаться и использоваться на любых компьютерах дома, в офисах, школах, вузах, а также коммерческих и государственных учреждениях без ограничений. По способу распространения (доставки, оплаты, ограничения в использовании) бывает: Commercial Software, Freeware,
Shareware, Abandonware, Adware, Free Software, Careware и др. По назначению ПО разделяется на системное, прикладное и инструментальное.
В системное ПО входит: операционная система, ПО общего назначения, ПО реального времени, сетевая, встраиваемая, загрузчик операционной системы, драйвер устройства, программный кодек, утилита, и др. Системные программы имеют дело с взаимодействием между различными компонентами компьютера.
Например, операционная система Windows представляет собой программу или набор программ, указывающих центральному процессору, как передавать данные и команды внутри процессора, между внутренней памятью компьютера, накопителем на диске и устройствами ввода-вывода, такими, как мониторы, принтеры, модемы, датчики и т.п. Она выполняет сервисные функции, такие, как отслеживание места хранения прикладных программ на гибком диске, с которым взаимодействует компьютер. Лучшие системные программы - это программы, которые позволяют компьютеру делать свою работу, не требуя от оператора, чтобы он был с ней знаком.
Программные средства защиты включают: криптошлюз, средство аутентификации, средство мониторинга и аудита, сканер защищённости, средство разграничения доступа, система криптографической защиты, шифрования и ЭЦП, антивирусная программа, антисапановая программа, межсетевой экран и др.
Инструментарий технологии программирования - совокупность программ, обеспечивающих технологию разработки, отладки и внедрения программных продуктов. Делится на два больших класса инструментальных средств: для создания отдельных приложений (программ) и для создания http://profbeckman.narod.ru/EVM
информационных систем и технологий. Средства для создания отдельных приложений включают локальные средства (языки программирования, системы программирования, инструментальные среды пользователя) и интегрированные среды разработки программ, основное назначение которых - повышение производительности труда программистов за счет автоматизации создания кодов программ, обеспечивающих интерфейс пользователя графического типа, а также автоматизации разработки запросов и отчетов
(например, Delphi).
В свою очередь языки программирования делятся на следующие виды: операторные, которые используются для кодирования алгоритмов, а потому называются алгоритмическими, имеют в составе: машинно-зависимые (ассемблер), применяются для написания программ, явно использующих специфику конкретной аппаратуры; машинно-ориентированные (язык С, объединяющий идеи ассемблера и алгоритмического языка); универсальные (Турбо-Паскаль, Бэйсик), которые приближены максимально, насколько это возможно, к естественному английскому языку: название каждой команды – английское слово;
функциональные, которые применяются для машинного моделирования той или иной проблематики и имеют в составе: проблемно-ориентированные (GPSS) - моделируют систему с помощью последовательности событий. Применяются, в частности, при проектировании вычислительных комплексов; объектно-
ориентированные (Форт) - имеют встроенные средства для моделирования новых объектов программирования; логико-ориентированные (Prolog). Отдельно описываются правила предметной области, по которым затем выводятся новые факты.
Системы программирования включают: интегрированную среду разработчика программы, состоящую, в частности, из текстового редактора, позволяющего создавать и корректировать исходные тексты программ, средств поддержки интерфейса программиста с системными средствами для выполнения различных сервисных функций (например, сохранения или открытия файла); транслятор – программу, переводящую исходный текст во внутреннее представление компьютера; отладчик – программу для трассировки и анализа выполнения прикладных программ. Позволяет отслеживать выполнение программы в пооператорном режиме, идентифицировать место и вид ошибок в программе, наблюдают за изменением значений переменных, выражений и т.д.; компоновщик – программа для подготовки прикладной программы к работе в конкретных адресах основной памяти компьютера; справочные системы.
Инструментальная среда пользователя – это специальные программные средства, встроенные в
ППП: библиотеки функций, процедур, объектов и методов обработки; макрокоманды; программные модули- вставки; конструкторы экранных форм и отчетов; языки запросов высокого уровня. Средства для создания информационных систем и технологий поддерживают полный цикл проектирования сложной информационной системы или технологии от исследования объекта автоматизации до оформления проектной и прочей документации на информационную систему или технологию. Они позволяют вести коллективную работу над проектом за счет возможности работы в локальной сети, экспорта – импорта любых фрагментов проекта, организации управления проектом. Инструментальное ПО включает: средство разработки программного обеспечения, среда разработки, RAD, SDK, система управления базами данных (СУБД), реляционная (DB2, Informix, Interbase, Firebird, Microsoft SQL Server, MySQL, Oracle, Postgre, PostgreSQL,
ЛИНТЕР), объекто-ориентированная (Cache), иерархическая и сетевая.
Прикладная программа представляет собой набор команд для решения внешних задач, отличных от задач основной внутренней работы компьютера. Примером прикладной программы может служить программа обработки текстов или управления базой данных.
Пакет прикладных программ - комплекс взаимосвязанных программ для решения задач определенного класса. Выделяются следующие виды ППП: проблемно-ориентированные, которые используются для тех проблемных областей, в которых возможна типизация функций управления, структур данных и алгоритмов обработки. Например, это ППП автоматизации бухучета, финансовой деятельности, управления персоналом и т.д.; автоматизации проектирования (или САПР), которые используются в работе конструкторов и технологов, связанных с разработкой чертежей, схем, диаграмм; общего назначения, поддерживающие компьютерные технологии конечных пользователей и включают текстовые и табличные процессоры, графические редакторы, системы управления базами данных (СУБД); офисные, обеспечивающие организационное управление деятельностью офиса и включающие органайзеры (записные и телефонные книжки, календари, презентации и т.д.), средства распознавания текста и др.; настольные
издательские системы – более функционально мощные текстовые процессоры; системы искусственного интеллекта, использующие в работе некоторые принципы обработки информации, свойственные человеку.
Включают информационные системы, поддерживающие диалог на естественном языке; экспертные системы, позволяющие давать рекомендации пользователю в различных ситуациях; интеллектуальные пакеты прикладных программ, позволяющие решать прикладные задачи без программирования. http://profbeckman.narod.ru/EVM

В прикладное ПО входит: офисное приложение, текстовый редактор, текстовый процессор, табличный процессор, редактор претензий, корпоротивная информационная система (аудиторская программа, бухгалтерская программа, системы: MRP, MRP II, ERP, CRM, PO), система SCM, система управления проектами (Project Management), система автоматизации документооборота (EDM), финансово-аналитическая система, система управления архивами документов (DWM), корпоративный портал, система проектирования и производства (система автоматизации проектных работ, САПР, CAD, системы: CAE, CAM, PDM, PLM,
SCADA, MES), система логистической поддержки изделий (система анализа логической поддержки, LSA, система создания ИТЭР, (IETM)), система обработки и хранения медицинской информации (система передачи, обработки и архивации изображений, радиологическая информационная сеть, РИС, госпитальная информационная сеть (ГИС).
Научное ПО – это: система математического и статистического расчёта и анализа, система компьютерного моделирования.
Информационные системы: геоинформационная система, ГИС, система поддержки принятия решений, СППР, система управления IT-инфраструктурой, справочно-правовая система, СПС. Клиент для доступа к интернет-сервисам: электронная почта, Веб-браузер, система мгновенного обмена сообщениями,
IRC, IP-телефония, пиринговая сеть, потоковое мультимедиа, банк-клиент, мультимедиа, компьютерная игра, музыкальный редактор, видео-редактор, аудиоредактор, медиа-проигрыватель.
Расширение производства и применения персональных компьютеров существенно ускорило разработку т. н. беспрограммного программного обеспечения. В этом случае пользователь может посредством управляющих элементов компьютера взаимодействовать с дисплеем, изображающим логическую или визуальную структуру некоторого вида. Пользователь может ввести с клавиатуры в любой точке дисплея необходимую информацию, а затем перейти к следующей точке. Эта структура может использоваться многократно (если необходимо, каждый раз с другими данными). Чтобы работать в такой программе, от пользователя не требуется знать что-либо о программировании. Многие программы электронных таблиц и баз данных обладают указанными беспрограммными характеристиками. Основные средства организации запросов в больших базах данных универсальных компьютеров базируются на SQL
(язык структурированных запросов, «эскьюэль»), в котором пользователь запрашивает информацию из базы данных, используя синтаксис, во многом похожий на обычный английский. Стало популярным связывать
SQL с базами данных персональных компьютеров.
Графические интерфейсы пользователя (ГИП). Компьютерные дисплеи прошли эволюцию от изображения, основанного на знаках, к экстенсивной растровой графике. Это развитие облегчило разработку программ - особенно операционных систем, включая графику и разнообразные изобразительные методы.
Многие программы могут быть выведены на экран, а прикладные программы могут выполняться одновременно. Серия компьютеров «Макинтош», выпускаемых фирмой Эппл, положила начало широкому распространению ГИП для персональных компьютеров. Программы системы Windows (фирмы Майкрософт),
OS/2 Presentation Manager (фирмы ИБМ), New Wave (фирмы Хьюлетт-Паккард) и большая часть программных средств для дисплеев рабочих станций используют ГИП.
2. ОПЕРАЦИОННАЯ СИСТЕМА
Действия, которые пользователь должен выполнить для того, чтобы «объяснить» компьютеру, что тот должен сделать – о ткуда взять данные, как их о бр або тать и что выдать – зависят от того, с какими программами пользователь работает. Если говорить о взаимодействии не с конкретными программами, а с компьютером в целом, то речь идет о взаимодействии с операционной системой (ОС).
Операционная система – это комплекс управляющих программ, который обеспечивает согласованную работу всех компонентов компьютера для выполнения базовых команд. Операционные системы управляют файловой системой, обеспечивают ввод/вывод информации и передачу данных между разными устройствами и т. д.
Оп
, ОС (operating system) - базовый комплекс компьютерных программ, обеспечивающий интерфейс с пользователем, управление аппаратными средствами компьютера, работу с файлами, ввод и вывод данных, а также выполнение прикладных программ и утилит.
ОС позволяет абстрагироваться от деталей реализации аппаратного обеспечения, предоставляя разработчикам программного обеспечения минимально необходимый набор функций. С точки зрения обычных пользователей компьютерной техники ОС включает в себя и программы пользовательского интерфейса.
Основные функции (простейшие ОС): загрузка приложений в оперативную память и их выполнение; стандартизованный доступ к периферийным устройствам (устройства ввода-вывода); управление http://profbeckman.narod.ru/EVM
оперативной памятью (распределение между процессами, виртуальная память); управление доступом к данным на энергонезависимых носителях (таких как жёсткий диск, компакт-диск и т.д.), организованным в той или иной файловой системе; пользовательский интерфейс; сетевые операции, поддержка стека протоколов.
Дополнительные функции: параллельное или псевдопараллельное выполнение задач
(многозадачность); взаимодействие между процессами: обмен данными, взаимная синхронизация; защита самой системы, а также пользовательских данных и программ от действий пользователей (злонамеренных или по незнанию) или приложений; разграничение прав доступа и многопользовательский режим работы
(аутентификация, авторизация.).
Объекты ядра ОС: процессы и файлы.
События: потоки, семафоры, мьютексы, каналы, файлы, проецируемые в память.
Существуют две группы определений ОС: «совокупность программ, управляющих оборудованием» и
«совокупность программ, управляющих другими программами». Обе они имеют свой точный технический смысл, который, однако, становится ясен только при более детальном рассмотрении вопроса о том, зачем вообще нужны операционные системы.
Есть приложения вычислительной техники, для которых ОС излишни. Например, встроенные микрокомпьютеры содержатся сегодня во многих бытовых приборах, автомобилях, сотовых телефонах и т. п.
Зачастую такой компьютер постоянно исполняет лишь одну программу, запускающуюся по включении. И простые игровые приставки - также представляющие собой специализированные микрокомпьютеры - могут обходиться без ОС, запуская при включении программу, записанную на вставленном в устройство
«картридже» или компакт-диске. Тем не менее, некоторые микрокомпьютеры и игровые приставки всё же работают под управлением особых собственных ОС. В большинстве случаев, это UNIX-подобные системы
(последнее особенно верно в отношении программируемого коммутационного оборудования: файрволов, маршрутизаторов).
Операционные системы нужны, если вычислительная система используется для различных задач, причём программы, исполняющие эти задачи, нуждаются в сохранении данных и обмене ими. Из этого следует необходимость универсального механизма сохранения данных; в подавляющем большинстве случаев
ОС отвечает на неё реализацией файловой системы. Современные ОС, кроме того, предоставляют возможность непосредственно «связать» вывод одной программы с вводом другой, минуя относительно медленные дисковые операции; различные программы нуждаются в выполнении одних и тех же рутинных действий. Например, простой ввод символа с клавиатуры и отображение его на экране может потребовать исполнения сотен машинных команд, а дисковая операция - тысяч. Чтобы не программировать их каждый раз заново, ОС предоставляют системные библиотеки часто используемых подпрограмм (функций); между программами и пользователями системы необходимо распределять полномочия, чтобы пользователи могли защищать свои данные от несанкционированного доступа, а возможная ошибка в программе не вызывала тотальных неприятностей; необходима возможность имитации «одновременного» исполнения нескольких программ на одном компьютере (даже содержащем лишь один процессор), осуществляемой с помощью приёма, известного как «разделения времени». При этом специальный компонент, называемый планировщиком, «нарезает» процессорное время на короткие отрезки и предоставляет их поочередно различным исполняющимся программам (процессам); наконец, оператор должен иметь возможность, так или иначе, управлять процессами выполнения отдельных программ. Для этого служат операционные среды, одна из которых - оболочка и набор стандартных утилит - является частью ОС (прочие, такие, как графическая операционная среда, образуют независимые от ОС прикладные платформы). Таким образом, современные универсальные ОС можно охарактеризовать, прежде всего, как использующие файловые системы (с универсальным механизмом доступа к данным), многопользовательские (с разделением полномочий), многозадачные (с разделением времени).
Многозадачность и распределение полномочий требуют определённой иерархии привилегий компонентов самой ОС. В составе ОС различают три группы компонентов: ядро, содержащее планировщик; драйверы устройств, непосредственно управляющие оборудованием; сетевую подсистему, файловую систему; системные библиотекм и оболочка с утилитами. Большинство программ, как системных (входящих в ОС), так и прикладных, исполняются в непривилегированном («пользовательском») режиме работы процессора и получают доступ к оборудованию (и, при необходимости, к другим ядерным ресурсам, а также ресурсам иных программ) только посредством системных вызовов. Ядро исполняется в привилегированном режиме: именно в этом смысле говорят, что ОС (точнее, её ядро) управляет оборудованием. В определении состава ОС значение имеет критерий операциональной целостности (замкнутости): система должна позволять полноценно использовать (включая модификацию) свои компоненты. Поэтому в полный состав http://profbeckman.narod.ru/EVM

ОС включают и набор инструментальных средств (от текстовых редакторов до компиляторов, отладчиков и компоновщиков).
Предшественником ОС следует считать служебные программы (загрузчики и мониторы), а также библиотеки часто используемых подпрограмм, начавшие разрабатываться с появлением универсальных компьютеров 1-го поколения (конец 1940-х). Служебные программы минимизировали физические манипуляции оператора с оборудованием, а библиотеки позволяли избежать многократного программирования одних и тех же действий (осуществления операций ввода-вывода, вычисления математических функций и т. п.). В 1950-60-х сформировались и были реализованы основные идеи, определяющие функциональность ОС: пакетный режим, разделение времени и многозадачность, разделение полномочий, реальный масштаб времени, файловые структуры и файловые системы.
Необходимость оптимального использования дорогостоящих вычислительных ресурсов привела к появлению концепции «пакетного режима» исполнения программ. Пакетный режим предполагает наличие очереди программ на исполнение, причём ОС может обеспечивать загрузку программы с внешних носителей данных в оперативную память, не дожидаясь завершения исполнения предыдущей программы, что позволяет избежать простоя процессора.
Уже пакетный режим в своём развитом варианте требует разделения процессорного времени между выполнением нескольких программ. Необходимость в разделении времени (многозадачности, мультипрограммировании) проявилась ещё сильнее при распространении в качестве устройств ввода-вывода телетайпов (а позднее, терминалов с электронно-лучевыми дисплеями) (1960-е годы). Поскольку скорость клавиатурного ввода (и даже чтения с экрана) данных оператором много ниже, чем скорость обработки этих данных компьютером, использование компьютера в «монопольном» режиме (с одним оператором) могло привести к простою дорогостоящих вычислительных ресурсов. Разделение времени позволило создать
«многопользовательские» системы, в которых один центральный процессор и блок оперативной памяти соединялся с многочисленными терминалами. При этом часть задач (таких, как ввод или редактирование данных оператором) могла исполняться в режиме диалога, а другие задачи (такие, как массивные вычисления) – в пакетном режиме.
Распространение многопользовательских систем потребовало решения задачи разделения
полномочий, позволяющей избежать возможности модификации исполняемой программы или данных одной программы в памяти компьютера другой (содержащей ошибку или злонамеренно подготовленной) программы, а также модификации самой ОС прикладной программой. Реализация разделения полномочий в
ОС была поддержана разработчиками процессоров, предложивших архитектуры с двумя режимами работы процессора - «реальным» (в котором исполняемой программе доступно всё адресное пространство компьютера) и «защищённым» (в котором доступность адресного пространства ограничена диапазоном, выделенном при запуске программы на исполнение).
Применение универсальных компьютеров для управления производственными процессами потребовало реализации «реального масштаба времени» («реального времени») - синхронизации исполнения программ с внешними физическими процессами; включение функции реального масштаба времени в ОС позволило создавать системы, одновременно обслуживающие производственные процессы и решающие другие задачи (в пакетном режиме и (или) в режиме разделения времени); постепенная замена носителей с последовательным доступом (перфолент, перфокарт и магнитных лент) накопителями произвольного доступа (на магнитных дисках).
Упомянем теперь существующие операционные системы: Unix, стандартизация ОС и POSIX.
К концу 1960-х годов отраслью и научно-образовательным сообществом был создан целый ряд ОС, реализующих все или часть очерченных выше функций. К ним относятся Atlas (Манчестерский университет),
CTTS и ITSS (Массачусетский технологический институт, MIT), THE (Эйндховенский технологический университет), RS400 (Университет Орхуса) и др. (всего эксплуатировалось более сотни различных ОС).
Наиболее развитые ОС, такие как OS/360 (IBM)), SCOPE (CDC) и завершённый уже в 1970- x MULTICS (МТИ и Bell Labs), предусматривали возможность исполнения на многопроцессорных компьютерах. Эклектичный характер разработки ОС привёл к нарастанию кризисных явлений, прежде всего, связанных с чрезмерными сложностью и размерами создаваемых систем. ОС были плохо масштабируемыми (более простые не могли использовать все возможности крупных вычислительных систем; более развитые неоптимально исполнялись на малых или не могли исполняться на них вовсе) и тотально несовместимыми между собой, их разработка и совершенствование затягивались.
Задуманная и реализованная в 1969 К. Томсоном при участии нескольких коллег (включая Д. Ричи и
Б. Кернигана), ОС Unix (первоначально UNICS, что обыгрывало название MULTICS) вобрала в себя многие черты более ранних ОС, но обладала целым рядом свойств, отличающих её от большинства предшественниц: простая метафорика (два ключевых понятия: вычислительный процесс и файл); компонентная архитектура: принцип «одна программа - одна функция» плюс мощные средства связывания различных программ для http://profbeckman.narod.ru/EVM
решения возникающих задач («оболочка»); минимизация ядра (кода, выполняющегося в «реальном»
(привилегированном) режиме процессора) и количества системных вызовов; независимость от аппаратной архитектуры и реализация на машиннонезависимом языке программирования (язык программирования Си стал побочным продуктом разработки Unix); унификация файлов. Unix, благодаря своему удобству прежде всего в качестве инструментальной среды (среды разработки), была тепло принята сначала в университетах, а затем и в отрасли, получившей прототип единой ОС, которая могла использоваться на самых разных вычислительных системах и, более того, могла быть быстро и с минимальными усилиями перенесена на любую вновь разработанную аппаратную архитектуру.
В конце 1970-х годов сотрудники Калифорнийского университета в Беркли внесли ряд усовершенствований в исходные коды UNIX, включая работу с протоколами TCP/IP. Их разработка стала известна под именем BSD (Berkeley Software Distribution). Задачу разработать независимую (от авторских прав Bell Labs) реализацию той же архитектуры поставил и Р. Столлмен, основатель проекта GNU. Благодаря конкурентности реализаций архитектура ОС Unix стала вначале фактическим отраслевым стандартом, а затем обрела статус и стандарта юридического – ISO/IEC 9945.
ОС, следующие стандарту или опирающиеся на него, называют «POSIX-совместимыми» (чаще встречается словоупотребление «Unix – подобные» или «семейство Unix», но оно противоречит статусу торгового знака «Unix», принадлежащего консорциуму The Open Group и зарезервированному для обозначения ОС, строго следующих стандарту) благодаря названию стандарта - POSIX. Сертификация на совместимость со стандартом стоит некоторых денег, из-за чего некотрые системы не проходили этот процесс, однако считаются POSIX-совместимыми, просто потому что это так. К Unix-подобным ОС относятся системы, базирующиеся на последней версии Unix, выпущенной Bell Labs (System V), на разработках университета Беркли (FreeBSD, OpenBSD, NetBSD), а также ОС GNU/Linux, разработанная в части утилит и библиотек проектом GNU и в части ядра - сообществом, возглавляемым Л. Торвальдсом.
Стандартизация ОС гарантирует возможность безболезненной замены самой ОС и/или оборудования при развитии вычислительной системы или сети и дешёвого переноса прикладного программного обеспечения (строгое следование стандарту предполагает полную совместимость программ на уровне исходного текста; из-за профилирования стандарта и его развития некоторые изменения бывают всё же необходимы, но перенос программы между POSIX-совместимыми системами обходится на порядки дешевле, чем между альтернативными), а также преемственность опыта пользователей.
Самым заметным эффектом существования этого стандарта стало эффективное разворачивание
Интернета в 1990-х годах.
Коротко остановимс теперь на «Post Unix»-архитектурах ОС.
Коллектив, создавший ОС Юникс, развил концепцию унификации объектов ОС, включив в исходную концепцию UNIX «устройство - это тоже файл» также и процессы, и любые другие системные, сетевые и прикладные сервисы, создав новую концепцию: «что угодно - это файл». Новый концепт получил название
Plan9 (название было позаимствовано из фантастического триллера «План 9 из открытого космоса» Эдварда
Вуда-младшего), и сменил «рабочую лошадку» UNIX System V на компьютерах сети Bell Labs в 1992 году.
Кроме реализации всех объектов ОС в виде файлов и размещения их на едином и персональном для каждого терминала вычислительной сети пространстве (namespace), были пересмотрены другие архитектурные решения UNIX. Например, в Plan9 отсутствует понятие «суперпользователь», и, соответственно, исключаются любые нарушения режима безопасности, связанные с нелегальным получением прав суперпользователя в системе. Для представления (хранения, обмена) информации Р. Пайк и К. Томпсон разработали универсальную кодировку UTF-8, на сегодняшний день ставшую стандартом де-факто. Для доступа к файлам используется единый универсальный протокол 9P, по сети работающий поверх сетевого протокола (TCP или UDP). Таким образом для прикладного ПО сети не существует - доступ к локальным и к удалённым файлам единообразен. 9P - байт-ориентированный протокол, в отличие от других подобных протоколов, являющихся блок-ориентированными. Это также результат работы концепции: доступ побайтно
- к унифицированным файлам, а не поблочно - к разнообразным и сильно изменяющимися с развитием технологий устройствам. Для контроля доступа к объектам не требуется иных решений, кроме уже существующего в ОС контроля доступов к файлам. Новая концепция системы хранения избавила администратора системы от изнурительного труда по сопровождению архивов и предвосхитила современные системы управления версиями файлов.


Поделитесь с Вашими друзьями:
  1   2   3


База данных защищена авторским правом ©nethash.ru 2017
обратиться к администрации

войти | регистрация
    Главная страница


загрузить материал