Исследование современных операционных систем. Исследование операционных систем, используемых в современных системах чпу. Основные сложности при реализации систем реального времени в среде LINUX

Введение

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

Операционная система – это комплект программ, организующих работу компьютера и управляющих им.

Цель работы: провести сравнительный анализ операционных систем семейства Windows и Mac OS.

Задачи:

  • Дать определение операционной системы;
  • Рассмотреть функции операционных систем;
  • Провести сравнительный анализ операционных систем.

1. Основные определения и понятия

1.1. Операционная система

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

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

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

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

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

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

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

Существует несколько видов операционных систем: Windows, Mac OS.

1.2. Функции операционной системы

В функции операционной системы входит:

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

2. Сравнительный анализ операционных систем

2.1. Windows XP

История Windows (разработка фирмы Microsoft) берет свое начало в 1986 году. Популярность она завоевала в 1990 году, когда вышла версия Windows 3.0. Популярность новой версии Windows объяснялась несколькими причинами. Графический интерфейс позволяет работать с объектами вашего компьютера не с помощью команд, а с помощью наглядных и понятных действий над значками, обозначающими эти объекты. Возможность одновременной работы с несколькими программами значительно повысила удобство и эффективность работы. Кроме того, удобство и легкость написания программ для Windows привели к появлению все больше разнообразных программ, работающих под управлением Windows. Наконец, лучше была организована работа с разнообразным компьютерным оборудованием, что также определило популярность системы. Последующие версии Windows были направлены на повышение надежности, а также поддержку средств мультимедиа (версия 3.1) и работу в компьютерных сетях (версия 3.11).

В 1995 появилась система Windows 95, ставшая новым этапом в истории Windows: значительно изменился интерфейс, выросла скорость работы программ, в состав системы был включен браузер Internet Explorer.

Продолжением развития Windows 95 стала операционная система, появившаяся в 1998 году (Windows 98). При сохранившемся интерфейсе внутренняя структура была значительно переработана. Много внимания было уделено работе с Интернетом, а также поддержке современных протоколов передачи информации – стандартов, обеспечивающих обмен информацией между различными устройствами. Кроме того, особенностью Windows 98 является возможность работы с несколькими мониторами.

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

Операционная система Microsoft Windows XP (от англ. eXPerience – опыт), или Microsoft Codename Whistler, является ОС семейства Windows, созданной на базе технологии NT.

В настоящее время Windows XP для настольных ПК и рабочих станций выпускается в трех модификациях: Home Edition для домашних персональных компьютеров, Professional Edition – для офисных ПК и, наконец, Microsoft Windows XP 64bit Edition – это версия Windows XP Professional для персональных компьютеров, собранных на базе 64-битного процессора Intel Itanium с тактовой частотой более 1 ГГц.

Если сравнить Windows XP с более ранними версиями Microsoft Windows, в новой операционной системе легко обнаружить множество значительных отличий. Несмотря на то, что эта ОС была разработана на основе платформы NT и, на первый взгляд, по своим характеристикам во многом схожа с Microsoft Windows 2000, фактически Windows XP относится к принципиально иному поколению операционных систем семейства Windows. Теперь пользователь Windows не привязан к какому-либо стандартному интерфейсу, устанавливаемому в системе по умолчанию: без труда можно изменить вид окон, загрузив из Интернета любой из сотен специально разработанных "Тем". Традиционное Главное меню, открывающее доступ к установленным на компьютере программам, хранящимся на дисках документам и настройкам операционной системы, также претерпело ряд значительных изменений. Теперь при нажатии кнопки Пуск появляется динамическое меню, содержащее значки лишь пяти программ, которыми пользуется наиболее часто. Благодаря этому можно начать работу с нужными приложениями значительно быстрее. Здесь же расположены кнопки Выход из системы (Log Off) и Выключение компьютера (Turn Off Computer), позволяющие завершить текущий сеанс работы с Windows и выключить компьютер.

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

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

2.2. Mac OS

Переход на новую архитектуру, сильно трансформировал Mac-сообщество и, фактически, разделил представление об их компьютерах на две эры – “до перехода на Intel” и “после перехода на Intel”.

Первая Mac OS появилась в 1984 году, значительно раньше Windows. Она была разработана специально для компьютеров Мacintosh (Mac). Эти компьютеры имеют закрытую архитектуру, то есть сами компьютеры собирает только Apple.

Сильной стороной Мас OS является практическое отсутствие вирусов для Мacintosh. И дело не только в не очень большой распространенности Mac OS по сравнению с Windows, но и в том, что традиционные вирусы просто не работают в UNIX среде. Теоретически конечно существуют образцы вирусов, которые могут работать с некоторыми приложениями к Mac OS, но их количество по сравнению с вредоносным программным обеспечением, написанным для Windows, просто ничтожно. Даже удаленный взлом компьютера, работающего под управлением Mac OS, значительно сложнее, чем взлом машины, работающей под управлением Windows, а антивирусные программы могут понадобиться только для того, чтобы не переслать зараженный файл на машину под управлением Windows, вам же он никакого вреда не принесёт.

Интерфейс системы тоже имеет существенные отличия от Windows. Например, если в Windows каждой программе обычно соответствует одно окно с открывающимися в нем вкладками и панелями инструментов, то в Мас OS используются "плавающие" окна и панели, не привязанные к общему окну, а располагающиеся на рабочем столе.

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

Ещё одной отличительной особенностью интерфейса является панель dock. Это панель в нижней части рабочего стола, где находятся значки файлов и приложений, к которым требуется быстрый доступ, а также запущенные приложения. Панель можно редактировать, менять размеры, убирать и добавлять значки приложений. Можно также отметить такие элементы интерфейса, как Dashboard и Expose. Dashboard – панель для работы с "виджетами", простейшими графическими приложениями, которые, как правило, выполняют информационные функции. Expose – функция отображения на экране в виде миниатюр всех открытых окон или только окон активной программы.

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

2.3. Достоинства и недостатки операционных систем
Достоинства и недостатки операционных систем Windows и Mac OS

Достоинства

Недостатки

Windows 1. Широкий выбор ПО
2. Полная совместимость со всем оборудованием
3. Техническая поддержка
4. Широкая распространенность
5. Легкость настройки
1. Плохая безопасность
2. Несколько завышенные системные требования
3. Множество ограничений (система контроля цифрового контента, впервые появилась в Windows Vista, Microsoft всегда пытается навязать свое мнение, что лучше для пользователя)
Mac OS 1.Легкая настройка
2. Не требует знания технических деталей от пользователя
3. Интуитивность использования
4. Удобная организация окон – все окна видимы и нет необходимости переключаться между ними.
5. Установлен базовый набор ПО
6.Хорошая безопасность
1. Высокая стоимость компьютеров с Mac OS X
2. Закрытая архитектура компьютеров –нет возможности провести модернизацию оборудования

Заключение

За последние 10 лет компьютеры буквально наводнили квартиры, офисы, предприятия. «Умный ящик» уверенной походкой входит в нашу жизнь.Многие люди уже не представляют, как могли раньше без него обходиться.

Большое число пользователей предпочитает использовать компьютер для развлечения. В этом случае Windows – подойдет людям, которым нужен мультимедийный центр (музыка, кино, интернет, игры). И для тех, кому нужен не дорогой и не слишком сложный в использовании компьютер для работы, а Mac OS X – лучший вариант для людей, которые хотят работать на компьютере, не вникая в особенности системы

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

МИИНИСТЕРСТВО ОБРАЗОВАНИЯ РФ

СОЧИНСКИЙ ИНСТИТУТ (ФИЛИАЛ) АВТОНОМНОГО ОБРАЗОВАТЕЛЬНОГО УЧРЕЖДЕНИЯ ВЫСШЕГО ОБРАЗОВАНИЯ

«РОССИЙСКИЙ УНИВЕРСИТЕТ ДРУЖБЫ НАРОДОВ»

По предмету «Информационные технологии»

На тему «Анализ современных операционных систем»

Выполнила студентка СПО:

Мигинеишвили Виолетта

Введение

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

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

1. Операционные системы

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

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

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

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

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

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

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

В большинстве вычислительных систем операционная система является основной, наиболее важной (а иногда и единственной) частью системного программного обеспечения. С 1990-х годов наиболее распространёнными операционными системами являются системы семейства Windows, Linux и Mac OS.

2. Семейство ОС-Windows

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

Наиболее популярными версиями стали:

· Windows XP (25 октября 2001 года)

Название XP происходит от англ. eXPerience (опыт). Представляет из себя улучшенный вариант Windows 2000Professional, причем первоначально изменения коснулись большей частью внешнего вида и пользовательского интерфейса. В отличие от Windows 2000, которая выпускалась как для рабочих станций, так и для серверов, Windows XP является исключительно клиентской системой. Было выпущено 2 основных версии XP -- Home и Professional Edition, для домашнего и корпоративного использования. Также в апреле 2005 года вышла Windows XP Professional x64 Edition -- первая настольная 64-разрядная операционная системаWindows.

Для быстрой и стабильной работы ваш компьютер должен обладать процессором Pentium-II, частота процессора от 500 МГц, свободным дисковым пространством не менее 2 Гбайт и, соответственно, устройством для чтения дисков.

· Windows Vista (30 ноября 2006 года)

Шестое поколение операционных систем Windows NT. Vista имеет номер версии 6.0, поэтому для ее обозначения иногда используют аббревиатуру «WinVI», которая объединяет название «Vista» и номер версии, записанный римскими цифрами. Как и Windows XP, Vista -- исключительно клиентская система. Ее серверный аналог -- Windows Server 2008. Всего было выпущено целых 6 версий системы -- Starter, Home Basic, Home Premium, Business, Corporate и Ultimate, и каждая версия (кроме Starter) в 32-х и 64-разрядном варианте.

В Windows Vista содержится большое количество нововведений -- интерфейс Windows Aero, режим гибернации, технология Ready Boost (использование флеш-накопителей под файл подкачки). Очень много изменений в плане безопасности -- появилась система контроля учётных записей пользователей, была улучшена система шифрования файлов EFS, а также появилась система шифрования дисков Bitlocker, а в состав домашних версий Windows Vista включена функция родительского контроля.

Если вы остановили свой выбор на Vista, то система вашего компьютера должна быть не слабее данных системных требований: процессор с тактовой частотой не менее 800 МГц, 512 Мб оперативной памяти, 32 Мб видео памяти, графическая плата с поддержкой DirectX 9, устройство для чтения DVD и не менее 15 Гб свободного места на жестком диске.

Вышла меньше чем через три года после Windows Vista и по сути является ее «вылизанной» и доведенной до ума версией. Реализована более гибкая настройка User Account Control (UAC), которая в отличие от Windows Vista теперь имеет ещё два промежуточных состояния, улучшена совместимость со старыми приложениями, внесены изменения в технологию шифрования BitLocker и добавлена функция шифрования съёмных носителей BitLocker to go, позволяющая шифровать съёмные носители. Также немного изменен внешний вид, а к интерфейсу Aero добавлено несколько новых функций (shake, peak и snap). Появились новые сетевые технологии -- DirectAccess и Branch Cache,правда доступны они только в старших версиях Windows 7.

Как и Vista, Windows 7 выпушена в 6 редакциях -- Starter, Home Basic, Home Premium, Professional, Corporate иUltimate, и все кроме Starter есть в 64-разрядном варианте. Серверный вариант семерки -- Windows Server 2008 R2, вышел только в 64- разрядном исполнении.

На сегодняшний день Windows 7 занимает почти 50% рынка настольных операционных систем и находится на первом месте в мире по использованию.

Для работы этой системы вам необходим процессор с частотой не менее 1 ГГц, 1 Гб оперативной памяти или выше, более 16 Гб свободного места на жестком диске, устройство для чтения DVD и графическая карта совместимая с DirectX 9.

3. Семейство ОС-Linux

Операционные системы типа UNIX изначально разрабатывались для работы на больших многопользовательских компьютерах - мейнфреймах. В начале 90-х годов студент хельсинкского университета Линус Торвальдс приступил к разработке UNIX-подобной ОС для IBM-совместимых персональных компьютеров.

Файлы первого варианта Linux (исходные коды) были опубликованы в Интернете в 1991 года. Л.Торвальдс не стал патентовать или иным образом ограничивать распространение новой ОС. С самого начала Linux распространяется на условиях, определяемых лицензией General Public License (GPL), принятой для программного обеспечения, разрабатываемого в рамках движения Open Sourceи проекта GNU. Разработка Линуса Торвальдса представляла собой только ядро операционной системы.

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

К 1991 году в рамках проекта GNU уже было разработано большое количество разного рода утилит. Но для превращения GNUв полноценную ОС не хватало ядра. Разработка ядра также велась, но по разным причинам задерживалась. Поэтому появление разработки Л. Торвальдса было очень своевременным. Таким образом, более правильным было бы называть операционную систему Linux - GNU/Linux.

Если вы решили установить Linux на ваш компьютер, то вам понадобится процессор с частотой 33МГц, 8 Мб оперативной памяти и 120 Мб дискового пространства.

4. Семейство ОС-Mac

Последней в списке самых распространенных операционных систем является ОС Mac OS. Самое важное - Mac OS X устанавливается только на компьютеры Мacintosh производства фирмы Apple. Кроме того, в отличие от открытой Linux, Mac OS X является проприетарным обеспечением, т.е. имеется запрет на свободное распространение, внесение изменений и т. д. Первая Mac OS появилась в 1984 году, что значительно раньше появления Windows. Компания Apple хотела, чтобы Макинтош представлялся как компьютер «для всех остальных». Сам термин «Mac OS» в действительности не существовал до тех пор, пока не был официально использован в середине 1990-х годов. С тех пор термин применяется ко всем версиям операционных систем Макинтоша как удобный способ выделения их в контексте других операционных систем. Mac OS устанавливается только на компьютеры Мacintosh производства фирмы Apple.

Таблица 1. Сравнительный анализ

Аппаратная совместимость

Разнообразные аппаратные платформы.

Только компьютеры Apple.

Заводская установка

Очень немногие компьютеры.

Большинство компьютеров.

Только компьютеры Apple.

Бесплатные программы

Огромный выбор.

Некоторые, в основном условно-бесплатные.

Уязвимость к вредным программам

Безопасна для доступа в интернет.

Поддерживает шифрование файлов и папок.

Более безопасная система.

Шифрование жесткого диска требует наличие сторонних программ.

Четкое разделение системных и

пользовательских файлов. Возможность загрузки макинтоша в

режиме внешнего диска помогает при восстановлении системы.

Интерфейс

Отсутствие единого интерфейса.

Быстрый поиск файлов.

Моментами похожа на Windows.

Использование нескольких виртуальных столов.

Возможность включение графического интерфейса.

Интерфейс четкий, неперегруженный и логичный.

Наличие виртуальных рабочих столов

с возможностью перетаскивания

окон между столами.

Возможность использования виджетов.

Программное обеспечение

Множество разнообразных ПО от сторонних производителей.

Система для компьютерных игр.

Доступ к тысячам бесплатных приложений.

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

Производительность.

Хорошо работает на небыстрых процессорах и не большом объеме памяти.

Поддержка нового оборудования зачастую отстает.

Существую дистрибуты для работы на старых ПК.

Производительность на высоте, т.к. программное обеспечение очень

хорошо оптимизировано под конкретную

платформу.

программный операционный алгоритм компьютер

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

Размещено на Allbest.ru

Подобные документы

    Основные моменты истории операционных систем, связывающих аппаратное обеспечение и прикладные программы. Характеристика операционной системы Microsoft Windows Seven, анализ операционной системы Linux. Преимущества и недостатки каждой операционной системы.

    курсовая работа , добавлен 07.05.2011

    Основные понятия операционных систем. Современное оборудование компьютера. Преимущества и недостатки операционной системы Linux. Функциональные возможности операционной системы Knoppix. Сравнительная характеристика операционных систем Linux и Knoppix.

    реферат , добавлен 17.12.2014

    Основные понятия об операционных системах. Виды современных операционных систем. История развития операционных систем семейства Windows. Характеристики операционных систем семейства Windows. Новые функциональные возможности операционной системы Windows 7.

    курсовая работа , добавлен 18.02.2012

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

    курсовая работа , добавлен 08.01.2011

    Назначение и функции операционных систем компьютера. Аппаратные и программные ресурсы ЭВМ. Пакетные ОС. Системы с разделением времени: Multics, Unix. Многозадачные ОС для ПК с графическим интерфейсом: Windows, Linux, Macintosh. ОС для мобильных устройств.

    курсовая работа , добавлен 05.12.2014

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

    курсовая работа , добавлен 13.10.2011

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

    курсовая работа , добавлен 10.01.2012

    Графические интерфейсы и расширения для DOS. История развития операционной системы Microsoft Windows. Новшества ее современных версий: пользовательский интерфейс, языковая интеграция, системы защиты. Хронология развития и архитектура системы GNU/Linux.

    реферат , добавлен 25.10.2010

    История создания и общая характеристика операционных систем Windows Server 2003 и Red Hat Linux Enterprise 4. Особенности установки, файловых систем и сетевых инфраструктур данных операционных систем. Использование протокола Kerberos в Windows и Linux.

    дипломная работа , добавлен 23.06.2012

    Использование операционных систем Microsoft Windows. Разработка операционной системы Windows 1.0. Возможности и характеристика последующих версий. Выпуск пользовательских операционных систем компании, доработки и нововведения, версии Windows XP и Vista.

Опубликовано: 06.01.2006
Версия текста: 1.0

1. Общее описание операционных систем реального времени

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

Основными ресурсами являются процессор (процессорное время), оперативная память и периферийные устройства.

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

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

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

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

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

В настоящее время существует большое разнообразие ОС, которые классифицируются по следующим признакам:

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

    число процессов, которые могут одновременно выполняться под управлением ОС;

    тип доступа пользователя к системе;

    тип аппаратно-программного комплекса.

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

В соответствии с третьим признаком ОС делятся на:

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

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

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

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

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

В настоящее время существует огромное количество типов ОС, но в дальнейшем рассматриваются только ОС РВ.

Сначала необходимо дать определение системе реального времени.

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

Для событий, происходящих в такой системе, важно время, когда эти события происходят, и их логическая корректность.

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

1.1 Что такое система реального времени

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

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

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

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

Кроме того, СРВ можно разделить на системы специализированные и универсальные.

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

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

1.2 Основные требования к СРВ

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

    предсказуемость;

    важно максимальное (не среднее) время отклика на событие;

    особые требования в вопросах безопасности;

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

1.3 Общие характеристики СРВ

    большие и сложные системы;

    распределенные системы;

    жесткое взаимодействие с аппаратурой;

    выполнение задач зависит от времени;

    сложность тестирования.

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

1.4 Способы использования ОС

5 видов операционных систем:

    Классическая ОС. Win NT, Linux и Unix.

    Классическая ОС с расширением РВ (Win NT - RTX, RT Linux, RT Unix)

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

    Коммерческая ОС. Примером могут служить такие системы как VxWorks, OS9 и т.п. Необходимо отметить, что такие системы очень дорогие. Например, стоимость полного пакета ОС VxWorks (Tornado 1.0) в 2002 году составляла около 15 000 долларов США. Впрочем, с годами такая система значительно дешевеет - сегодня ее стоимость составляет около 10 000 долларов (Tornado версии 2.0 и выше - полная стоимость зависит от выбираемых компонентов).

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

Из таблицы видно, что временные рамки ОСРВ достаточно жесткие. Среди современных операционных систем есть класс продуктов, разработанных специально для построения систем жесткого реального времени - VxWorks, OS9, QNX, LynxOS, OSE и другие. Эти системы содержат необходимый набор инструментов, и в некоторых случаях являются единственным выбором - на него приходится идти, невзирая на затраты. Однако достаточно часто требования к реальному времени (полная предсказуемость времени реакции) становятся менее жесткими, например, необходимо добиться только нужной средней производительности.

Иногда достаточно жестко контролировать только одно из событий, допуская при этом задержки реакций на остальные. В подобных случаях возможности выбора расширяются, и желаемых результатов можно достичь, используя такие широко распространенные операционные системы как LINUX, Windows NT, Windows CE, дополняя их расширениями реального времени (RTAI, RT LINUX, RTX).

1.5 Требования, предъявляемые ОС при проектировании ОСРВ

1.5.1 Требование 1. ОС должна быть многонитевой (multi-threaded) и прерываемой

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

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

1.5.2 Требование 2. Должно существовать понятие приоритета нити

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

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

1.5.3 Требование 3. ОС должна обеспечивать предсказуемые механизмы синхронизации задач

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

1.5.4 Требование 4. Должна существовать система наследования приоритетов

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

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

Чтобы устранить такие инверсии, ОСРВ должна допускать наследование приоритета, т. е. повышение приоритета до уровня вызывающей нити. Наследование означает, что блокирующая ресурс нить наследует приоритет блокируемой нити (справедливо лишь в том случае, если блокируемая нить имеет более высокий приоритет).

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

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

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

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

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

максимальное время маскирования прерываний драйверами и ОС.

системные уровни прерываний;

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

Когда все указанные характеристики ОС известны, можно представить разработку СРВ на базе данной ОС с учетом возможностей выбранной ОСРВ и аппаратуры.

2. Обзор операционных систем реального времени

На сегодняшний день существует более 100 коммерческих ОСРВ. Есть множество бесплатных (или условно бесплатных) СРВ и систем, имеющих статус исследовательских или университетских проектов. Сначала рассмотрим краткое описание некоторых систем реального времени, а затем более подробно остановимся на СРВ Win NT RTX, как наиболее перспективной системе.

2.1 QNX

Операционная система QNX является разработкой канадской компании QNX Software System Ltd (1981).

Операционная система QNX представляет собой гибрид 16/32-битовой операционной системы, которую пользователь может конфигурировать по своему усмотрению. Наиболее часто она применяется для создания систем, работающих в реальном масштабе времени. Время, необходимое для полной инсталляции системы, включая сетевые средства, составляет всего 10-15 мин, после чего можно начинать работу. Нетребовательность системы к ресурсам проявляется уже в том, что система с необходимой и достаточной средой разработки в виде компилятора Watcom C/C ++ (основной компилятор для QNX) умещается на 10 Мб.

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

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

    предсказуемость, означающая ее применимость к задачам жесткого реального времени. Ни одна версия UNIX не может достичь подобного качества, поскольку код ядра слишком велик. Любой системный вызов из обработчика прерывания в UNIX может привести к непредсказуемой задержке (как и в Windows NT);

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

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

Система построена по технологии FLEET , которая характеризуетмя следующим. QNX является ОСРВ на основе микроядра (размером около 10 Кб). В качестве основного средства взаимодействия между процессами система использует передачу сообщений. Благодаря этому в 32-битовой среде возможно взаимодействие процессов с 32 и 16-битовыми кодами, причем сообщения передаются между любыми процессами, независимо от того, находятся ли процессы на одном компьютере или на разных узлах сети.

Пользователь, работая на одном из узлов сети, может иметь доступ к любым ресурсам остальных узлов, включая порты, файловую систему и задачи. Пользователю нет необходимости вникать в сетевой протокол, который, кстати, не является тайной, вплоть до его структуры. Он содержит пакеты, которые применяются и для передачи сообщений. Сетевой администратор распознает эти пакеты и переправляет микроядру, которое, в свою очередь, переправляет их в шину локальных сообщений. QNX распознает не только пакеты сообщений QNX-процессов. Можно также легко обращаться к сетевому администратору для передачи таких пакетных протоколов, как TCP/IP, 8MB и др. Возможно обращение к различным сетевым администраторам через один кабель.

Операционная система QNX объединяет всю сеть ПК в единый набор ресурсов с абсолютной прозрачностью доступа к ним. Узлы могут добавляться и исключаться из сети, не влияя на целостность системы. Сетевая обработка данных в QNX является настолько гибкой, что можно объединить в одну сеть любой разнородный набор Intel совместимых компьютеров, соединенных через Arcnet, Ethernet, Token Ring или через последовательный порт, к которому также может быть подключен модем. Кроме того, возможно участие компьютера одновременно в нескольких сетях, и если одна из них окажется перегруженной или выйдет из строя, то QNX автоматически будет использовать другие доступные сети без потери информации.

QNX имеет некоторые ограничения, связанные с ориентацией системы на рынок встроенных систем реального времени:

    нет поддержки SMP;

    отсутствует запись виртуальной памяти на диск;

    неэффективная и нестандартная поддержка нитей;

    неполноценная реализация отображения файлов в памяти;

    нет поддержки UNIX-domain sockets;

    слабые средства безопасности в рамках собственного сетевого протокола.

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

В российской промышленности QNX встречается достаточно часто. Это объясняется наличием достаточного количества программного обеспечения под QNX (драйверы и т. д.) для различного оборудования, представленного на российском рынке.

2.2 VxWorks/Tornado

Операционная система реального времени VxWorks и инструментальная среда Tornado фирмы Wind River Systems предназначены для разработки ПО встроенных компьютеров, работающих в системах жесткого реального времени. Операционная система VxWorks является системой с кросс-средствами разработки прикладного программного обеспечения. Разработка ведется на инструментальном компьютере (host) в среде Tornado для последующего исполнения на целевой машине (target) под управлением VxWorks.

VxWorks поддерживает целевые архитектуры (targets):

    Motorola 680x0 и CPU32, PowerPC;

    Intel 386/486/Pentium, Intel 960;

    Spare, Mips R3000/4000;

    AMD 29K, Motorola 88110;

  • Инструментальные платформы, поддерживаемые для Tornado (hosts):

    Sun SPARCstation (SunOS и Solaris);

    HP 9000/400,700 (HP-UX);

    IBM RS6000 (AIX);

    Silicon Graphics (IRIX);

    DEC Alpha (OSF/1);

  • Поддерживаемые интерфейсы host-target:

    host-target Ethernet;

    внутрисхемный эмулятор ICE (In-Circuit Emulator);

    кросс-шина (backplane).

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

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

Все аппаратно-зависимые части VxWorks вынесены в отдельные модули для того, чтобы разработчик встроенной системы мог сам портировать VxWorks на свою нестандартную целевую машину. Этот комплект конфигурационных и инициализационных модулей называется BSP (Board Support Package) и поставляется для стандартных компьютеров (VME-процессор, PC или Sparcstation) в исходных текстах. Разработчик нестандартной машины может взять за образец BSP наиболее близкий по архитектуре стандартный компьютер и перенести VxWorks на свою машину путем разработки собственного BSP с помощью BSP Porting Kit.

2.2.1 Базовые сетевые средства VxWorks: UNIX-networking, SNMP и STREAMS.

VxWorks была первой операционной системой реального времени, в которой реализован протокол TCP/IP с учетом требований реального времени. С тех пор VxWorks поддерживает все сетевые средства, стандартные для UNIX: TCP/UDP/ICMP/IP/ARP, Sockets, SLIP/CSLIP/PPP, telnet/rlogin/rpc/rsh, ftp/tftp/bootp, NFS (клиент и сервер).

Wind River Systems анонсировала (1994) программу WindNet, по которой ведущие фирмы-производители программных средств в области коммуникаций интегрировали свои программные продукты с VxWorks.

На сегодняшний день - это сетевые протоколы Х.25, ISDN, ATM, SS7, Frame Relay и OSI; CASE-средства разработки распределенных систем на базе стандартов ROOM (Real-Time Object Oriented Modelling) и CORBA (Common Object Request Broker Architecture); менеджмент сетей по технологиям MBD (Management By Delegation) и CMIP/GDMO (Common Management Information Protocol/Guidelines for Definition of Managed Objects).

2.2.2 Мониторинг и отладка в реальном масштабе времени: WindView.

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

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

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

Специально для систем с сильно ограниченным объемом памяти компания Wind River Systems разработала редуцированное ядро WindStream, которое требует для работы не более 8 Кб ПЗУ и 2 Кб ОЗУ. При этом для WindStream применим весь спектр инструментальных средств VxWorks, включая WindView.

Инструментальная среда Tornado имеет открытую архитектуру, что позволяет другим фирмам-производителям инструментальных средств разработки ПО реального времени интегрировать свои программные продукты с Tornado. Пользователь может подключать к Tornado свои собственные специализированные средства разработки, а также расширять возможности инструментальных средств фирмы Wind River Systems.

В стандартную конфигурацию Tornado входят ядро VxWorks и системные библиотеки, GNU C/C ++ Toolkit, дистанционный отладчик уровня исходного языка CrossWind, оболочка WindSh, конфигуратор BSP WindConfig и др.

Существует множество программных продуктов, интегрированных с Tornado, производства других фирм.

2.3 RTLinux

2.3.1 Основные сложности при реализации систем реального времени в среде LINUX

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

Linux - современная POSIX-совместимая и Unix-подобная операционная система для ПК и рабочих станций, т. е. многопользовательская сетевая операционная система.

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

Характерные особенности Linux как ОС:

    многозадачность (является обязательным условием);

    многопользовательский режим;

    защищенный режим процессора (386 protected mode);

    защита памяти процесса (сбой программы не может вызвать зависания системы);

    разделение страниц по записи между экземплярами выполняемой программы. Это значит, что процессы-экземпляры программы могут использовать при выполнении одну и ту же память. Когда такой процесс пытается произвести запись в память, то 4-килобайтная страница, в которую идет запись, копируется на свободное место. Это свойство увеличивает быстродействие и экономит память;

    виртуальная память со страничной организацией (т. е. на диск из памяти вытесняется не весь неактивный процесс, а только требуемая страница); виртуальная память в самостоятельных разделах диска и/или файлах файловой системы; объем виртуальной памяти до 2 Гб; изменение размера виртуальной памяти во время выполнения программ;

    общая память программ и дискового кэша: вся свободная память используется для буферизации обмена с диском;

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

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

    сертификация по стандарту POSIX.1, совместимость со стандартами System V и BSD на уровне исходных текстов;

    через iВS2-согласованный эмулятор совместимость с SCO, SVR3, SVR4 по загружаемым программам;

    наличие исходного текста всех программ, включая тексты ядра, драйверов, средств разработки и приложений. Эти тексты свободно распространяются. В настоящее время некоторыми фирмами для Linux поставляется ряд коммерческих программ без исходных текстов, но все, что было свободным так и остается свободным;

    управление заданиями в стандарте POSIX;

    эмуляция сопроцессора в ядре, поэтому приложение может не заботиться об эмуляции сопроцессора. Конечно, если сопроцессор имеется в наличии, то он и используется;

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

    поддержка ряда распространенных файловых систем (MINIX, Xenix, файловые системы System V); наличие собственной передовой файловой системы объемом до 4 Тб и с именами файлов до 255 знаков;

    прозрачный доступ к разделам DOS (или OS/2 FAT): раздел DOS выглядит как часть файловой системы Linux; поддержка VFAT (WNT, Windows 95);

    доступ (только чтение) к файловой системе HPFS-2 OS/2 2.1;

    поддержка всех стандартных форматов CD ROM;

    поддержка сети TCP/IP, включая ftp, telnet, NFS и т. д.

Рост популярности Linux побуждает разработчиков внимательнее присмотреться к этой операционной системе. В данный момент эта ОС готова к стабильной работе, а открытость ее исходных текстов и архитектуры наряду с растущей популярностью заставляет программистов переносить свои наработки на многие аппаратные платформы: SGI, IBM, Intel, Motorola и т. д.

Для задач РВ сообщество разработчиков Linux активно применяет специальные расширения - RTLinux, KURT и UTIME, позволяющие получить устойчивую среду реального времени. RTLinux представляет собой систему "жесткого" реального времени, a KURT (KU Real Time Linux) относится к системам "мягкого" реального времени. Linux-расширение UTIME, входящее в состав KURT, позволяет добиться увеличения частоты системных часов, что приводит к более быстрому переключению контекста задач.

RTLinux - это операционная система, в которой небольшое ядро реального времени сосуществует с Posix-like ядром Linux. Основная цель - сделать доступными сложные службы и оптимизированное поведение системы в стандартных ситуациях для системы с разделением времени, и, в то же время, выполнять задачи реального времени. В прошлом операционные системы реального времени примитивны - простые программы, которые предлагали пользователю чуть больше, чем просто библиотека основных функций. Но в наше время пользователи требуют доступ к TCP/IP, графическому дисплею и системе окон, базам данных и другим службам, которые не являются ни примитивными, ни простыми. Одно из решений - добавить non-real-time службы к базовому ядру реального времени, что и было проделано в VXworks и, немного по-другому, в микроядре QNX. Вторая возможность - модифицировать стандартное ядро и сделать его полностью прерываемым.

2.3.2 Организация RTLinux

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

В RTLinux все прерывания обслуживаются ядром реального времени, а затем передаются стандартному ядру, но только в том случае, если нет необходимости запускать одну из задач реального времени. Для того чтобы минимизировать количество изменений в стандартном ядре, этот механизм реализован при помощи эмулирования ICH (Interrupt Control Hardware). Ядро реального времени и пользовательские задачи Linux могут обмениваться данными через неблокируемые очереди и сегменты разделяемой памяти.

С точки зрения программиста очереди выглядят как стандартные последовательные устройства UNIX, доступ к которым возможен при помощи системных вызовов POSIX read/write/open/ioctl. Разделяемая память доступна через системный вызов mmap.

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

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

На практике оказалось, что идея RTLinux очень удачна. В самом худшем случае запаздывание прерываний на 486/33Mhz PC оказалось менее 30 мкс, что близко к аппаратному пределу. Для прикладных задач симбиоз систем реального времени и оптимизированной для "общего случая" оказался очень удачным. Наиболее часто используемая конфигурация RTLinux - примитивные задачи реального времени со статически распределяемой памятью без ее защиты, простым планировщиком с фиксированными приоритетами без защиты от нереализуемых планов, аппаратным запрещением прерываний, разделяемая память - единственный механизм синхронизации задач реального времени и ограниченный набором операций над FIFO-очередями, подсоединенными к обычным процессам Linux.

Ядро Linux позволяет в динамике загружать и выгружать модули ядра. Представив отдельные части ядра реального времени в виде модулей, легко изменять ядро реального времени. Уже написаны альтернативные планировщики и модуль семафоров. Во время работы системы можно загрузить модуль с задачами реального времени, затем выгрузить стандартный планировщик и загрузить, например, EDF планировщик. Можно пробовать разные комбинации модулей, пока не будет найдена оптимальная.

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

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

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

Самый короткий период для периодически вызываемых задач реального времени в RTLinux на Pentium 120 - менее 150 мкс. Задачи, вызываемые по прерыванию, могут иметь намного меньший период.

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

Необходимо отметить, что компания LynuxWorks начала поставки (17.05.2002) встраиваемой ОС BlueCat Linux для комплекта разработчика ПО Intel Internet Exchange Architecture Software Developers Kit (Intel IXA SDK) 2.0, предназначенного для семейства сетевых процессоров Intel IXP1200. ОС BlueCat Linux распространяется бесплатно совместно с Intel IXA SDK 2.0.

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

2.4 Контроль и управление в реальном времени с использованием OS9

2.4.1 Введение

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

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

В системе контроля можно выделить два уровня:

    Уровень 1 для сбора и обработки локальных данных;

    Уровень 2 для сбора и анализа данных с удаленных объектов.

Рис.1. Общая концепция системы

Задачи на уровне 1 выполняются блоком GESCAP (например, рабочей станцией на процессоре 68010 фирмы Motorola с ОЗУ 1 Мбайт), а на уровне 2 - блоком GESVA (например, рабочей станцией на процессоре 68030 фирмы Motorola с ОЗУ 4 Мбайт). В блоках GESVA и GESCAP используется одна и та же операционная система (OS-9) и прикладное программное обеспечение. Различны только видеотерминалы и функциональные возможности. Благодаря этой однородности облегчается установка, использование и поддержание работоспособности системы.

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

Конфигурирование аналоговых или цифровых блоков ввода/вывода (аварийные сигналы, сообщения, приоритеты, и т.д.):

    логические операции (И, ИЛИ...) над входными данными;

    установление соответствия разъёмов каждому устройству ввода/вывода;

    перегруппировка устройств ввода/вывода;

    графическое взаимодействие с элементами анимации.

Функции отображения состояния:

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

Графические функции:

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

    перемещение по изображениям источников данных;

    отображение кривых в реальном времени;

    видеоотображение кривых в реальном времени.

Функции связи:

    протокол связи JBUS/MODBUS (RS-232/RS-422);

    связь с системой помощи в локализации и устранении неисправностей (GESDOC).

Функции выдачи на печать:

    распечатка структуры системы;

    распечатка списка сигналов тревоги и событий.

Функции различного назначения:

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

2.4.2 Как развивалась эта прикладная система?

Основными требованиями к программному обеспечению были:

    один и тот же состав прикладных программ и единый пользовательский интерфейс на различных платах и типах отображения;

    быстрая развитая многооконная среда, расходующая как можно меньше памяти;

    многозадачная, прошиваемая в ПЗУ операционная система реального времени с небольшими требованиями к объему памяти.

В результате выбрана операционная система OS9, наилучшим образом отвечающая перечисленным требованиям.

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

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

WINOTOOLS предоставляет следующие утилиты:

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

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

DATABASE (БАЗА ДАННЫХ) - библиотека С-функций, обеспечивающая управление базой данных (соответствие данных и индексных файлов базы данных).

БИБЛИОТЕКА ВВОДА/ВЫВОДА - библиотека С-функций, обеспечивающая сопряжение пользовательского интерфейса с устройствами ввода/вывода.

2.5 Windows NT

2.5.1 Возможность использования Windows NT в качестве ОС реального времени

В последнее время приобретают популярность расширения реального времени для Windows NT. Это обусловлено с одной стороны - расширением областей применения компьютерного управления, с другой стороны - сравнительно малой известностью и высокой стоимостью специализированных операционных систем реального времени. Но даже если бы это было не так и о других системах было бы известно не меньше - все равно Win NT RTX была бы наиболее популярна. Ведь не даром соотношение пользователей ОС семейства Windows к пользователям Linux/Unix систем - 1000 к 1. Вполне логично, что человек, работая дома в одной системе, хочет видеть такую же, понятную ему удобную систему и на работе. Интерфейс Win32 является стандартным и хорошо знакомым большому числу программистов и пользователей. Под NT существует огромное число готовых приложений (в том числе коммуникационных), а также популярные средства разработки. К сожалению, Windows NT "в чистом виде" нельзя отнести к операционным системам реального времени. Обсуждению причин этого посвящены статьи Martin Timmerman и Jean-Christophe Monfret в Real-Time Magazine Q21997.

Вот некоторые из них:

    недостаточное количество real-time приоритетов;

    отсутствие наследования приоритетов, как средства борьбы с инверсией приоритетов;

    неподходящая для RTOS система обработки прерываний.

    В Windows NT доступ к прерываниям осуществляется из драйвера ядра, а сами прерывания обрабатываются в два этапа: сначала вызывается очень короткая Interrupt Service Routine (ISR), осуществляющая критическую обработку, основная обработка прерывания происходит в Deferred Procedure Call (DPC). Все DPC выполняются с одинаковым уровнем приоритета в порядке поступления (FIFO).

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

2.5.2 RTX - real-time extension для Windows NT от компании VenturCom

Одним из возможных решений является использование совместно с Windows NT подсистемы реального времени, исполняющейся на том же процессоре (если процессор один) или на выделенном процессоре(-ах) (если их несколько). Этот подход использован фирмой VenturCom в продукте RTX. Сущность подхода заключается в использовании модифицированного HAL (Hardware Abstraction Level). Изменять kernel Microsoft не разрешает, а исходный код HAL предоставляет своим партнерам, одним из которых является VenturCom.

После установки RTX стандартная NT Workstation или Server превращается в операционную систему реального времени с жестким детерминизмом (hard real-time). Сама NT об этом, правда, не подозревает. Ни ядро, ни исполняющая подсистема NT не были изменены. Подсистема реального времени видна из Windows NT как еще один драйвер устройства.

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

    прикладной программный интерфейс (API) Win32 на данный момент является для программистов стандартом де-факто;

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

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

    разработано множество очень мощных интегрированных инструментальных пакетов (IDE).

2.5.3 Windows NT 4.0 как ОСРВ. Общие требования

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

    операционная система должна поддерживать многопоточность (многонитиевость - multithreaded) и вытеснение задач по приоритетам (preemptable);

    должно существовать понятие приоритета потока (нити);

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

    должен иметься механизм наследования приоритетов;

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

Первому требованию Windows NT явно удовлетворяет. Второму - тоже, но для режима реального времени уровней приоритета маловато. Практически невозможно спроектировать хорошую систему реального времени, например, с диспетчеризацией в зависимости от частоты (rate-monotonic scheduling), поскольку доступного количества приоритетных уровней исполнения потоков не хватит. Кроме того, в NT отсутствует механизм наследования приоритетов.

Для обработки прерываний с целью минимизации затрат времени на подпрограммы обслуживания прерываний (ISR-подпрограммы) в NT была введена концепция отложенных вызовов процедур (deferred procedure calls - DPC). Хотя приоритет этих вызовов выше, чем приоритет пользовательских и системных потоков, все они находятся на одном и том же уровне. Это означает, что все DPC-вызовы выстраиваются в FIFO-очередь и что прерывание высокого уровня будет обслужено только тогда, когда свое исполнение завершат все предшествующие ему DPC-вызовы. Вследствие этого, время отклика системы становится непредсказуемым, что противоречит пятому требованию.

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

2.5.4 Расширения реального времени для Windows NT. Расширение функциональности

Расширения реального времени добавляют к Windows NT специфическую для реального времени функциональность:

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

    Процессы реального времени и стандартные процессы Win32 имеют средства взаимодействия друг с другом.

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

    Одно и то же приложение может использовать как стандартные функции Win32, так и специфические функции API реального времени (RTAPI), что позволяет выделять критические участки кода приложений Windows NT и контролировать время и надежность их выполнения.

    Появляется возможность контроля за работоспособностью и временами реакции системы. "Зависания" стандартных приложений Windows NT или "крах" системы не приводят к "зависанию" приложений реального времени.

    Появляется возможность работы с быстрыми часами и таймерами высокого разрешения.

    Появляется возможность прямого доступа к памяти и физическим устройствам

2.5.4.1 Подсистема реального времени RTSS

Подсистема реального времени RTSS обеспечивает исполнение большинства функций и управление ресурсами расширений реального времени. С точки зрения реализации, RTSS выглядит как драйвер Windows NT и выполняется в режиме ядра. Это позволяет достаточно простым способом устроить взаимодействие между процессами реального времени и процессами Windows NT. RTSS обеспечивает исполнение функций RTAPI и содержит планировщик нитей реального времени со 128-ю фиксированными приоритетами. RTSS содержит также менеджер объектов, предоставляющий унифицированные механизмы использования системных ресурсов.

Управление объектами RTSS: Предоставляет возможности унифицированного управления объектами RTSS (создание,закрытие,доступ). Объектами RTSS являются: таймеры, обработчики прерываний и исключительных ситуаций (startup, shutdown, blue screen), нити, процессы, семафоры, мьютексы, разделяемая память, почтовые ящики, консольный и файловый ввод-вывод, регистры.

2.5.4.2 HAL реального времени

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

2.5.4.3 Программный интерфейс реального времени RTAPI

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

    Управление процессами и нитями: Предоставляет Win32-совместимый интерфейс для управления, создания, изменения приоритетов, профилирования и завершения нитей реального времени.

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

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

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

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

    Часы и таймеры: Содержит функции управления часами и таймерами (создание, удаление, отмена, инициализация таймеров, назначение обработчиков прерываний)

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

3. ОС РВ используемые в современных системах ЧПУ

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

  • RTMX (фирма RTMX-Uniflex);

    AMX (фирма Kadak Products Ltd.);

    OS-9000 (фирма Microwave Systems);

    Lynx OS (фирма Lynx Real-Time Systems);

    VRTX (фирма Ready Systems);

    FlexOS (фирма Novell Dedicated Sys Bus Unit);

    QNX (фирма Quantum Software Systems)

    ОС РВ собственной разработки.

3.1 ОС РВ собственной разработки

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

3.2 FlexOS

В настоящее время используется очень редко. Эта операционная система была современной и популярной, а сейчас является скорее устаревшей. У Siemens была своя операционная система FlexOS, свои языки, полевые шины. Потом Siemens провозгласил своим принципом открытость. Фактическим стандартом для более раннего Siemens"а и вообще программного обеспечения АСУТП разных фирм стала операционная система Windows NT, позволившая использовать в программном обеспечении весь багаж, накопленный в офисных системах.

3.3 QNX

Эта операционная система предназначена не только для персональных компьютеров, но и для самых разных бытовых и промышленных интеллектуальных устройств - систем, управляющих технологическими процессами, станков с ЧПУ, интернет-приставок, видеовоспроизводящих агрегатов, игровых консолей. Данная ОС во многом весьма примечательна и уникальна. В 1982 году в Канаде фирма "Quantum Software Systems, Limited" - QSSL, созданная г-ми Беллом и Доджем (Gordon Bell & Dan Dodge), представила миру новейшую многозадачную многопользовательскую операционную систему реального времени "Quick UNIX", разработка которой, как говорят, началась по заказу Министерства обороны Соединенных Штатов. Это была UNIX-подобная операционная система, вернее, совместимая со стандартом на переносимость приложений POSIX, в соответствии с которым сделаны также UNIX и его популярный клон Linux.

3.4 Windows XP

Как бы странно это ни прозвучало, но бывает, что Windows XP используется в качестве графического интерфейса оператора, а специальная операционная система в реальном времени используется для безопасности обеспечения функций ЧПУ. В случае возникновения проблемы на XP (напр. с подключением к сети) это никак не отразится на обработке или на самом станке, т.к. ЧПУ работает в своей операционной системе.

3.5 Windows NT4

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

    Например фирма Walter Grinders оснащает станки модели Helitronic_Power собственной открытой системой ЧПУ (тип HMC 500). В системе ЧПУ типа HMC 500 используется процессор типа Pentium, операционная система Windows NT и программое обеспечение Walter Window Mode. Программное обеспечение Walter Window Mode - собственная разработка фирмы Walter Grinders.

    Система WinPCNC является однокомпьютерной системой ЧПУ, построенной на мощной платформе персонального компьютера с операционной системой Windows NT и расширением реального времени RTX 4.1. Она относится к классу PCNC (Personal Computer Numerical Control), т.е. к классу так называемых "персональных систем управления", который справедливо считают сегодня наиболее перспективным классом систем ЧПУ нового поколения. Система использует единственный процессор для обслуживания всех ее функций, включая функции электроавтоматики. Аппаратная часть представлена стандартной аппаратурой персонального компьютера и дополнительными интерфейсными модулями для связи со следящими приводами подачи и главного движения, приводами электроавтоматики, панелью оператора. Все эти средства доступны сегодня на компьютерном рынке, а следовательно отсутствует необходимость в организации специального производства систем ЧПУ.

Конечно, хотелось бы иметь в качестве ОС РВ Windows NT. Но может ли потянуть Windows NT сегодня, даже с расширением реального времени (Real-Time Extensions) задачи, которые всегда решали ОС РВ? Многочисленные тесты показали, что на типовых компьютерных платформах на базе процессоров Pentium максимальное время реакции на прерывание (начиная от возникновения прерывания до входа в нить обработки, включая восстановление контекста) составляет 25-80 мкс, при условии значительной загрузки тестируемой системы: проверка диска (chkdsk), GUI приложения и интенсивный сетевой обмен. Эти цифры сравнимы с теми, что обеспечивают другие ОС РВ и превосходят некоторые из них.
Учитывая вышесказанное, имеет смысл начать поиск удачного решения Real-Time Extensions для Windows NT. Нужно сказать, что Windows NT не является открытой системой, и заранее ясно, что проекты Real-Time Extensions сторонних фирм будут только надстройками, не меняющими сути ОС.

Дополнение стандартного ядра NT ядром реального времени - этот подход лежит в основе предложений фирм Radisys, Imagination и LP Elektronik. Имеются две принципиально разные его реализации:

    разместить ядро реального времени внутри программы обслуживания прерываний Windows NT или в драйвере устройства;

    разместить ядро реального времени вне адресного пространства Windows NT.

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

3.6 Windows CE 2.0 - открытые системы ЧПУ

Фирма GE Fanuc Automation подготовила к выпуску системы ЧПУ серии Is - первые в мире открытые системы ЧПУ со встроенной операционной системой Windows CE 2.0. В серию входят три модели: мод. Series 160 Is, мод. Series 180 Is и мод.Series 210. Системы ЧПУ серии Is могут использоваться для управления металлорежущими станками различных типов, начиная от 2-координатных токарных станков и заканчивая 5-координатными обрабатывающими центрами, установками для лазерной резки, дыропробивными прессами и т.п.

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

3.7 Nucleus

Операционная система Nucleus, предназначенная для встраиваемых приложений, была разработана компанией Accelerated Technology Inc. (ATI, США), основанной в 1990 г. двумя программистами. Они ставили перед собой вполне конкретную цель: создать очень компактную ОС реального времени для встраиваемых систем, независимую от типа процессора, полностью открытую (что подразумевает поставку с исходными текстами), хорошо документированную и имеющую приемлемую цену.
Если Nucleus сравнить, например, с такой известной ОС РВ QNX, то нетрудно заметить ряд их различий.

Nucleus является кросс-системой, в то время как QNX - одновременно и средой разработки, и средой исполнения. Под кросс-системой понимается такая технология разработки, при которой ПО создается на одной программно-аппаратной платформе, а исполняется на другой. Совмещение в QNX среды разработки и среды исполнения очень полезно в тех случаях, когда пользователь работает на IBM PC-совместимой архитектуре.

Nucleus позволяет разрабатывать ПО для многих процессоров, а QNX - только для IBM PC-совместимых.

В отличие от QNX, в поставку Nucleus входят исходные тексты. Это особенно важно для военных, так как наличие полных исходных текстов облегчает сертификацию созданного приложения.

Приобретая Nucleus, покупатель оплачивает ее только один раз: за тиражирование своего ПО фирма ATI дополнительной платы не взимает. Стоимость этой ОС вместе с необходимыми инструментальными средствами составляет 10-30 тыс. долл. При покупке QNX пользователь должен заплатить за полную систему (около 2500 долл. за ОС и компилятор Watcom C), а при тиражировании ПО - покупать у фирмы QSSL по крайней мере модульные лицензии за необходимый набор драйверов (от 50 до 1000 долл.).

QNX 4.x удовлетворяет стандарту POSIX 1003. Nucleus не отвечает этому стандарту, но он обладает достаточно мощным набором системных вызовов.

3.8 OSE 5.0

Sharp Microelectronics и Enea Embedded Technology сотрудничают при оптимизации BlueStreak System-on-Chip компонентов, специально примененяемых в мобильных конечных устройствах.

В первом проекте фирма Enea размещает версию 5.0 операционной системы реального времени OSE (RTOS) на 32-разрядном микроконтроллере LH7A400. Эта System-on-Chip, базирующаяся на ядре ARM922TT 200 мегагерц, уже включает в себя многочисленные периферийные модули, такие как USB Device, MultimediaCard Interface, внешний контроллер DMA, последовательные и параллельные интерфейсы, включая поддержку инфракрасного порта, а также программируемые контроллеры с прямыми интерфейсами жидкокристаллических дисплеев для всех распространенных типов дисплеев (STN, Color STN, TFT и Sharps Advanced-TFT). При этом поддерживаются разрешения до 1024x768 пикселей, с числом цветов до 64.000 и с 15 полутонами. Таким образом, BlueStreak SoC LH7A400 предназначен для использования в качестве процессора в мобильных High-End-устройствах.

3.9 OS-9

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

3.10 VxWorks/Tornado

Операционная система VxWorks является системой с кросс-средствами разработки прикладного программного обеспечения, то есть разработка ведется на инструментальном компьютере (host) в среде Tornado для последующего исполнения на целевой машине (target) под управлением VxWorks.

VxWorks поддерживает целевые архитектуры (targets): Motorola 680x0 и CPU32, Intel 386/486/Pentium/.., Intel 960, SPARC, Mips R3000/4000, ARM, Motorola 88110, HP PA-RISC, Hitachi SH7600, PowerPC, DEC Alpha, Siemens C16x.

Инструментальные платформы, поддерживаемые для Tornado (hosts): Sun SPARCstation (SunOS и Solaris), HP 9000/400,700 (HP-UX), IBM RS6000 (AIX), Silicon Graphics (IRIX), DEC Alpha (OSF/1), PC (Windows 95 и NT).

Поддерживаемые интерфейсы host-target: Ethernet, RS-232, внутрисхемный эмулятор ICE (In-Circuit Emulator), кросс-шина (backplane), ROM-эмулятор, BDM-интерфейс (Background Debug Mode).

Инструментальная среда Tornado имеет открытую архитектуру, что позволяет другим фирмам-производителям инструментальных средств разработки ПО реального времени интегрировать свои программные продукты с Tornado. Пользователь также может подключать к Tornado свои собственные специализированные средства разработки, а также расширять возможности инструментальных средств фирмы Wind River Systems.

В стандартную конфигурацию Tornado входят ядро VxWorks и системные библиотеки, GNU C/C++ Toolkit, дистанционный отладчик уровня исходного языка CrossWind, оболочка WindSh, конфигуратор BSP WindConfig и др.

3.12 RTX

Фирма VenturCom разработала подсистему реального времени RTX (Real-Time Extensions) для Windows NT с благословения и при поддержке Microsoft. Microsoft передала лицензию на исходные тексты такого компонента Windows NT, как Уровень Абстракции Аппаратуры (HAL, Hardware Abstraction Level), который в основном и определяет характеристики ОС по обработке прерываний. RTX добавляет дополнительные вызовы к интерфейсу прикладного программирования (RTAPI, Real-Time API), а также загружает модифицированный HAL, который <изолирует> аппаратные прерывания от ядра Windows NT. RTX предоставляет для системы таймер реального времени с расширением 1млс и уменьшает время отклика. RTX обеспечивает для процессов доступ к физическим адресам памяти и портов ввода/вывода, а также специальные методы работы со страничной памятью, исключающие свойственные Windows NT задержки. Соответствующим образом отрабатываются попытки перезагрузки или тяжелые остановы типа <голубой экран>. Кроме того, предлагаются интерфейсы, замещающие функции WIN32, ответственные за планировку и синхронизацию задач, межзадачный обмен сообщениями, работу с аппаратными прерываниями и т.д. Самое интересное, что для этого не нужны изменения Windows NT и это не отразится на работоспособности существующих программ.

Для разработчиков встраиваемых систем VenturCom предлагает версию Windows NT, которая требует менее 10 Мбайт ПЗУ и 8 Мбайт ОЗУ. Подкачка страниц виртуальной памяти при этом запрещена, а в качестве дополнительных драйверов предлагаются драйверы Null-Display и Null-Input, позволяющие системе работать без дисплея и клавиатуры.

3.13 Falcon

Под этим красивым кодовым названием мы можем легко распознать знакомую многим операционную систему iRMX. После того как Intel передала права на эту ОСРВ компании RadiSys, последняя неустанно трудилась над интеграцией полученного продукта с платформой Windows NT. Фирма выбрала стандартный путь лицензирования у Microsoft исходных текстов уровня HAL, с их последующим изменением под требования жесткого реального времени.

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

4. Обзор ЧПУ

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

Система ЧПУ Операционная система
Siemens GmbH
840 D/ 810 D Windows/UNIX Real Time
840 Di MS Win NT/ XP + RTX
802 D Real Time DOS
802 S/C Операционная система собственной разработки
GE Fanuc
0T-D, 1018T, 3000C, 6M, 7,SYS P - Model E QNX 6.2Windows NT
160i-MB Windows 2000 (ISO-DIN программируемая)
Series 210 Is Windowes CE 2.0
Series 180 Is Windowes CE 2.0
Series 160 Is Windowes CE 2.0
Балт-Систем СПб
NC201 Операционная система собственной разработки (нет информации)
NC110
NС210 Операционная система собственной разработки(нет информации)
MSH
MSH PC-104 MS Win NT/ XP + RTX
MSH TURBO-U MS Win NT/ XP + RTX
MSH TURBO-M MS Win NT/ XP + RTX
MSH TURBO-120M MS Win NT/ XP + RTX
FMS
FMS-3000 - Н.Новгород
FMS-3100 - Н.Новгород Программное обеспечение системы реализовано на базе ядра жесткого реального времени с использованием библиотеки RT-Kernel,
Heidenhain (Германия)
TNC 145TNC 151TNC 155TNC 355TNC 4110TNC 426TNC 530 Используются следующие ОС:QNX 6.2DOSWindowsUnixLinux
Gildemeister
Eltra PilotEltra-pilot GD-4A Windows NT4
MAHO (Германия)
MAHO 332MAHO 432 MS DOS, MS Windows 3.x
NCT
NCT 2000 Linux RT или Windows RT
Numerik
CNC 600CNC 645CNC 646 Windows NT4
WinPCNC одно-компьютерная система ЧПУ, построенная на платформе персонального компьютера с ОС Windows NT и расширением реального времени RTX 4.1 фирмы VentureCom
КРТ4-00 - Контур Терминальная частьMS Win NT/ XP + RTX

5. Выводы

Так какую ОС выбрать? Если рассматривать двухпроцессорную архитектуру ЧПУ, то на модуль РС, выполняющий терминальную задачу, лучше установить надёжную ОС с удобным интерфейсом (Windows NT), а на модуль NC, решающий геометрическую и логическую задачи, поставить ОС РВ, допустим QNX, которая хорошо структурирована, имеет развитый набор специфических механизмов реального времени, компактна и предсказуема.
Вычислительные мощности современных персональных компьютеров постоянно растут, и сегодня реально построение однопроцессорной системы ЧПУ. Для ее реализации необходимо объединить две задачи, PC и NC, под управлением единой ОС.

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

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

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

6. Используемая литература

  • Timmerman M., Monfret J-C., "Windows NT as Real-Time OS?", Real- Time Magazine 2/97, 6-13
  • Сорокин С.А. Системы реального времени. СТА. 1997, №2, с. 22-29
  • Шалунов С. ОС Hurd - разработка FSF на основе микроядра. Открытые системы. 1997. №3
  • Володин С.В., Макаров А.Н., Утрихин Ю.Д., Фараджаев В.А. Общесистемное проектирование АСУ реального времени. М. 1984
  • Место систем отображения информации в АСУ реального времени.
  • Windows NT Real-Time Extensions: an Overview, Real-Time Magazine, 97Q2, Dr. ir. Martin Timmerman, Managing Director, Jean-Christophe Monfret, Project Manager, Real-Time Consult.
  • Сосонкин В.Л., Мартинов Г.М. Aнализ современного мирового уровня архитектурных решений в области ЧПУ
  • Мартинов Г.М., Сосонкин В.Л. Проблема реального времени

Предмет, возраст учащихся

информатика и информационно-коммуникационные технологии

Краткая аннотация проекта

На данный момент мировая компьютерная индустрия развивается очень стремительно. Производительность систем возрастает, а следовательно возрастают возможности обработки больших объёмов данных. Все стараются перейти на более совершенные ОС, какими являются Mac OS X, Linux, и Windows. Но из-за ″непопулярности″ UNIX-систем мало кто пользуется этой ОС. Во всем мире все, начиная от домохозяек и заканчивая корпоративными пользователями, пользуются Windows. При работе учащихся по проекту предполагается развитие навыков самостоятельной работы, самообразовательной активности, умения ориентироваться в потоке информации. Отличительной чертой проекта является то, что он предусматривает более глубокое изучение разновидностей операционных систем, их основных отличий. Продуктом работы по проекту планируется представление систематизированной информации по OS, в виде презентации или сводной таблицы.

Вопросы, направляющие проект

Основополагающий вопрос

ОС? «Полосатый мух» или «То, на чем колеса держатся»...

Проблемный вопрос

Операционная система, как основа диалога пользователя и компьютера

Учебные вопросы

Назовите известные Вам операционные системы Сравните известные Вам операционные системы с позиции: - интерфейса - безопасности - стабильности - происхождения и динамики развития Сделайте вывод о роли OS в диалоге пользователя и компьютера

План проведения проекта

Визитная карточка проекта

Публикация учителя

Презентация учителя для выявления представлений и интересов учащихся

Пример продукта проектной деятельности учащихся

Материалы по формирующему и итоговому оцениванию

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

Cекция "Kомпьютерные и информационные технологии в технических системах, экономике, науке и образовании"

НЕКОТОРЫЕ АСПЕКТЫ ИЗУЧЕНИЯ СОВРЕМЕННЫХ
ОПЕРАЦИОННЫХ СИСТЕМ

Савельев А.Н. (Центр информационных технологий МГТУ)

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

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

Таблица 1.

ОС Начало Конец Рекомендованная замена Жизненный цикл
NetWare 3.11 1992 01.1999 NetWare3.2 (с 02.1998) более 6 лет
NetWare 3.12 12.1993 05.2000 NetWare3.2 (с 02.1998) 6 лет 2 месяца
NetWare 4.1 11.1994 05.2000 NetWare 5 (с 09.1998) 5 лет 6 месяцев
NetWare 4.11 08.1996 03.2001 NetWare 4.2 (01.1999) 4 года 7 месяцев

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

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

На рынке существует и успешно применяется большое количество ОС различного применения, включая семейства ОС Microsoft Windows, Novell NetWare, IBM OS/2, а также большое количество разновидностей ОС семейства UNIX. Все они в той или иной степени относятся к одному из направлений в развитии ОС и поэтому могут быть использованы в качестве основы при построении учебного процесса.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: