Читаем Журнал «Компьютерра» № 5 за 7 февраля 2006 года полностью

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

Предыстория

Нельзя сказать, что невеселое положение дел на «командном» фронте устраивало Microsoft – на всем протяжении развития Windows предпринимались попытки улучшить ситуацию в этой области (см. табл. 1). Однако имеющиеся недостатки не позволяли командной строке стать полноценным инструментом.

В command.com и его потомке cmd.exe команды не являлись отдельными программами, как в Unix, а были реализованы непосредственно в самой оболочке. Эта особенность, по-видимому, препятствовала расширению функциональности системы. Команды command.com и cmd.exe оставались плохо документированными и бедными по возможностям, тогда как программы-утилиты Unix-систем активно развивались сообществом пользователей. Кроме всего прочего, обе оболочки не соответствовали стандарту POSIX, разработанному для Unix-оболочек. Следовательно, сценарии, написанные для POSIX-оболочек, не могли быть адаптированы под cmd.exe – равно как и опыт администраторов.

Services For Unix (SFU), разработанные еще для Windows NT, предназначались для упрощения задач по интеграции Windows– и Unix-систем. По сути, SFU – это Unix-система, которая запускается под управлением Windows. В ее состав входят ключевые Unix-сервисы, POSIX-совместимые программные оболочки и более трехсот утилит.

Поначалу продукт не был включен в состав операционной системы – его нужно было приобретать отдельно. И хотя сейчас SFU свободно распространяется и даже входит в Windows Server 2003 R2, коммерческое распространение не способствовало ее популярности. Кроме того, чуждая для Windows модель POSIX оказалась плохо совместимой с большинством продуктов, изначально делавшихся для Windows.

Windows Scripting Host (WSH), разработанный для всех версий Windows, предоставляет доступ к управлению системой с использованием сценариев, написанных на Jscript или VBscript. Однако он не был интегрирован с командной строкой. Непрозрачная документация, сложность в изучении и большое количество вирусов, использующих WSH, не позволили технологии получить широкое распространение.

Несмотря на то что в Windows явно ощущается дефицит полнофункционального консольного интерфейса, программный интерфейс управления системой существует давно: это Windows Management Instrumentation (WMI). История Monad начинается в 2000 году, когда Джеффри Сновер (Jeffrey Snover), архитектор продукта, приступил к созданию пользовательского интерфейса командной строки для WMI, названного WMIC. Пользователи Windows XP и Windows Server 2003 могут ознакомиться с ним, набрав в стандартной командной строке «wmic.exe», и получить справку о командах с помощью команды «/?». Интерфейс получился недостаточно стройным, ориентированным прежде всего на функциональные особенности WMI, а не на пользователя. Этот факт еще мог устроить корпорацию Microsoft, чьи продукты поддерживали WMI, но вряд ли обрадовал разработчиков сторонних компаний, не использующих этот интерфейс. Функциональность WMIC расширялась плохо, поскольку реализована была точно так же, как и в cmd.exe. В то же время инструменты управления продуктами Microsoft подвергались критике Главного Архитектора (Билл Гейтс) из-за слабого использования .NET-языков. Было решено переписать WMIC на C#. В определенный момент Сновер понял, что не обязан ограничиваться классами WMI и может использовать в своем продукте любые классы .NET, получая в распоряжение всю мощь платформы.

Был создан прототип интерфейса, а затем сформирована команда проекта Monad.Знакомство

Итак, Monad (она же Microsoft Shell, или MSH) – это будущая платформа для администрирования операционной системы и программных продуктов Microsoft. Cамая важная идея, заложенная в MSH, состоит в том, что в знакомой нам командной строке вывод результатов команды представляет собой не текст (в смысле последовательности байтов), а объект (данные вместе со свойственными им методами). Все! Остальное так или иначе вытекает из этой идеи.

Вот главные цели, преследуемые разработчиками Monad:

командная строка как основной интерфейс администрирования;

реализация ObjectFlow (элементом обмена информации является объект);

переработка существующих команд, утилит и оболочки;

интеграция командной строки, COM– и .NET-объектов;

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

По словам разработчиков, сильное влияние на Monad оказали следующие продукты:

BASH, KSH – композиционность;

AS400/VMS – стандарт синтаксиса именования команд, облегчающий изучение;

TCL/WSH – поддержка встраиваемости и нескольких языков;

PERL, PYTHON – выразительность и стиль.

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


Маэстро, музыку!

Перейти на страницу:

Похожие книги

Восстановление данных на 100%
Восстановление данных на 100%

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

Петр Андреевич Ташков

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT
Цифровой журнал «Компьютерра» № 4
Цифровой журнал «Компьютерра» № 4

ОглавлениеА где же ГЛОНАСС? Автор: Марина ПелепецНоябрьский приз Автор: Игорь ТереховКивино гнездо: Даёшь молодежь! Автор: БЕРД КИВИСчастливое ПО Автор: Alienatio MentaleЦифровые технологии и английские школьницы Автор: Сергей ВильяновВасилий Щепетнёв: О совпадениях Автор: Василий ЩепетневGlobal Mobile Awards 2010: забавные номинанты Автор: Алексей СтародымовYlmf OS: китайский клон Windows XP Автор: Андрей КрупинLeadtek WinFast PxVC1100 — ускоритель кодирования видео Автор: Игорь ОсколковО производстве, портках и логистике Автор: Ваннах Михаил"Компьютерра" в FB2: всё готово Автор: Сергей ВильяновInternet Explorer под ударом Автор: Андрей КрупинБольшая новость Nokia Автор: Алексей СтародымовГолубятня: Коммуникатор в дорогу Автор: Сергей ГолубицкийВасилий Щепетнёв: Прогулка под присмотром Автор: Василий ЩепетневОблачная веб-система Glide OS Автор: Андрей КрупинБилл Гейтс, Facebook и Twitter Автор: Алексей СтародымовКивино гнездо: Акустическая иллюзия Автор: БЕРД КИВИОперационные системы и маркетинговый взгляд Автор: Алексей СаминскийICQ: седьмое пришествие Автор: Андрей КрупинМини-противостояние: Jetway против Zotac Автор: Константин Иванов"Компьютерра" в формате FB2: релиз-кандидат Автор: Сергей ВильяновВасилий Щепетнёв: Ловцы мгновений Автор: Василий Щепетнев

Журнал «Компьютерра» , Коллектив Авторов , Компьютерра Журнал

Зарубежная компьютерная, околокомпьютерная литература / Прочая компьютерная литература / Книги по IT