ЖУРНАЛ СТА 2/1997

М ожно ли обойтись без упоми- нания Microsoft, обсуждая те- му операционных систем? Читатель, конечно, понял, что вопрос этот — чисто риторический. Пожа- луй, не осталось сфер человеческой деятельности, где не ступала бы нога корпорации, ведомой самым бога- тым человеком Америки (в простона- родье называемым большим Биллом). Разумеется, доминирование Microsoft в области операционных систем для персональных компьютеров не могло остаться без последствий для рынка ОС реального времени. Давайте по- пробуем проанализировать эти по- следствия как с точки зрения сегод- няшних реалий, так и с точки зрения их влияния на будущее программной индустрии. Первое, что бросается в глаза, — это то, что многие ОС РВ обеспечивают возможность работы с файловой сис- темой MSDOS, несмотря на то, что MSDOS всегда была «мальчиком для битья» (точнее, наверное, сказать «де- вочкой для битья») со стороны адеп- тов классических ОС РВ за свои не- достатки и неприспособленность к задачам реального времени. Второе, что необходимо в этой свя- зи отметить, — это то, что нашлись всетаки энтузиасты и изобретатель- ные головы, которые с разной сте- пенью успеха приспособили «ста- рушку» MSDOS для решения задач реального времени. Типичными примерами могут слу- жить такие ядра РВ, как CTASK и RTKernel, создатели которых про- явили чудеса изворотливости, обходя «подводные камни», щедро разбро- санные в недрах MSDOS. Нерукот- ворного памятника заслуживают та- кие фирмы, как General Software, ко- торые с нуля писали операционные системы, полностью совместимые с MSDOS и обладающие в то же время необходимыми средствами для рабо- ты в реальном времени. Мы не будем больше задерживаться на этой теме, так как сама Microsoft несколько лет назад создала операционную систе- му, которой суждено сыграть роль могильщика для MSDOS. Речь, конечно, идет о Windows. Пер- вые версии Windows были скорее гра- фическими оболочками над MSDOS и справедливо разделяли с ней роль «мальчиков для битья». Кооперативная многозадачность Windows была объ- ектом постоянных насмешек со сто- роны «зубров» реального времени. До- бавьте сюда недостаточную надеж- ность, способность «спать на ходу», и вы поймете, почему Windows ранее не рассматривалась в качестве серьезно- го ПО для систем реального времени. Ситуация стала кардинально ме- няться с появлением Windows NT. Microsoft сделала правильный ход, пригласив для разработки новой ОС свежих людей, работавших в том числе над операционной системой VAX/VMS фирмы DEC. Несмотря на некоторую путаницу на начальном этапе с раз- личными версиями интерфейса при- кладного программирования WIN 32, мы имеем уже четвертую версию Windows NT и обещание конверген- ции всех разновидностей Windows в некий единый продукт в недалеком будущем. Нетрудно заметить, что уже сегодня Windows оказывает весьма заметное влияние на рынок систем промыш- ленной автоматизации. Безусловно, эта операционная система доминиру- ет в области ПО операторского ин- терфейса (MMI/SCADA системы), и не видно ничего, что могло бы изменить эту ситуацию в ближайшем будущем. Более того, влияние Microsoft в этой области продолжает усиливаться. Опрос, проведенный недавно среди фирм, которые собираются менять свое ПО операторского интерфейса, показал, что более 60% из них собира- ются переходить на Windows NT. Ин- тересно, что ни одна из опрошенных фирм не собирается использовать Unix или DOS на своих операторских станциях, а доля желающих исполь- зовать операционные системы, вы- шедшие не из недр Microsoft, такие как OS/2, QNX и т. п., составляет всего 10%. Поклонники Microsoft имеют все основания воспринимать такое поло- жение дел на рынке MMI/SCADA с чув- ством глубокого удовлетворения. «Жесткое» реальное время Повернем теперь свой взор к сис- темам «жесткого» реального времени. Законодатели мод на этом рынке уже не могут игнорировать тот факт, что людям почемуто нравится програм- мировать под Windows. Появились различные библиотеки и инструмен- тальные средства, позволяющие по- ртировать Windowsпрограммы для работы под управлением других ОС. Например, для QNX подобные средст- ва разработала фирма Willows Software. Соответствующее ПО можно приоб- рести у дистрибьюторов QSSL. Факти- чески эти средства позволяют транс- лировать вызовы WIN 32 в соответ- ствующие вызовы целевой операцион- ной системы (для QNX это POSIX API). Однако может ли сама Windows NT потеснить другие ОС на рынке ПО для систем «жесткого» реального времени? Думаю, мы будем свидетелями больших изменений в этой области в ближай- шее время. В принципе, Windows NT с самого начала разрабатывалась как операционная система с вытесняю- щей приоритетной многозадачностью. Многозадачное ядро оптимизировано с точки зрения среднего быстродейст- вия системы и времени ее реакции. Добавьте сюда высокую надежность и поддержку симметричной многопро- цессорности. Казалось бы, что еще на- до для полного счастья? Действительно, уже показано, что Windows NT способ- на обеспечить гарантированное время отклика 510 мс, а одна из фирм, раз- работавшая на базе NT маршрутиза- тор TCP/IP, получила время обра- ботки прерываний всего 1530 мкс (Pentium/90 МГц). Тем не менее время реакции системы зависит от использу- емых драйверов, от того, запрещена подкачка страниц или нет, и от мно- жества других факторов. Более того, механизмы обработки прерываний Windows NT имеют определенные особенности, которые мешают ис- пользовать эту операционную систе- му в приложениях «жесткого» реаль- ного времени. Например, пользова- тельский процесс, независимо от его приоритета, может быть прерван для обработки аппаратного прерывания, даже если последнее пришло от тако- го источника, как манипулятор типа ОБЗОР Программное обеспечение 2/97 18 WINDOWS Сергей Сорокин ОПЕРАЦИОННЫЕ СИСТЕМЫ

RkJQdWJsaXNoZXIy MTQ4NjUy