Программирование для Windows NT© Александр Фролов, Григорий ФроловТом 26, часть 1, М.: Диалог-МИФИ, 1996, 272 стр. Рецензия PC WEEK ВведениеЕсли вы думаете, что такая серьезная операционная система, как Microsoft Windows NT, не для вас, то не исключено, что находитесь в заблуждении. Благодаря значительному прогрессу в технологии изготовления модулей оперативной памяти, дисков и других периферийных устройств, стала возможной установка этой операционной системы в компьютер стоимостью не более 1300 - 1500 долларов. За последний год цена основных компонент компьютера снизилась почти в два раза. Поэтому теперь вряд ли у программиста возникнет зависть при взгляде на компьютер с 16 Мбайтами оперативной памяти и диском с объемом 540 Мбайт - такая конфигурация стала доступна не только разработчикам программного обеспечения, но и для многим пользователям. А ведь этих ресурсов вполне достаточно для нормальной работы операционной системы Microsoft Windows NT Workstation версии 3.51 или 4.0. Обладатель компьютера, оснащенного 16 Мбайт оперативной памяти, может выбирать между операционными системами Microsoft Windows NT, Microsoft Windows 95 или IBM OS/2 Warp. Что касается операционной системы IBM OS/2 Warp, то ей мы посвятили 20 и 25 тома “Библиотеки системного программиста”, рассмотрев вопросы установки, использования и программирования для системы Presentation Manager. Однако многие пользователи, работавшие ранее с операционной системой Microsoft Windows версии 3.1, выберут Microsoft Windows 95 или Microsoft Windows NT. Чем же отличаются друг от друга эти две операционные системы? Операционная система Microsoft Windows 95 создавалась таким образом, чтобы максимально облегчить переход от 16-разрядной Microsoft Windows версии 3.1 к 32-разрядной операционной среде. При разработке Microsoft Windows 95 очень много внимания уделялось вопросам совместимости с программами MS-DOS и старыми 16-разрядными приложениями Windows, в результате чего пострадала устойчивость работы этой операционной системы. Несмотря на то, что в целом Microsoft Windows 95 ведет себя значительно устойчивее по сравнению с Microsoft Windows версии 3.1, плохо спроектированные приложения или приложения, содержащие ошибки, могут полностью вывести ее из строя. А что может быть хуже для пользователя, чем зависание системы или ее аварийное завершение, в результате которого оказываются потеряны важные данные! Что же касается того, как Microsoft Windows 95 работает с файлами, то в этом она недалеко ушла от операционной системы MS-DOS. Фактически кроме разрешения использовать для имен каталогов и файлов строки увеличенного размера, новая файловая система VFAT не дает пользователям ничего нового. В частности, по-прежнему никак не решен вопрос разграничения доступа к данным и защиты данных от несанкционированного доступа. Есть и другие, менее заметные для пользователей недостатки, источником которых является совместимость со старыми программами. Например, использование дисковых драйверов реального режима, загружаемых через файл config.sys (например, драйвера магнитооптического устройства), может привести к снижению производительности системы. Теперь сделаем замечание относительно требований Microsoft Windows 95 к объему оперативной памяти. Хотя нам удавалось запустить эту операционную систему в 4 Мбайтах памяти, работала она при этом исключительно медленно, так как выполнялся непрерывный свопинг. Если мы устанавливали 8 Мбайт оперативной памяти, ситуация сильно улучшалась, однако при использовании “тяжеловесных” офисных приложений, таких как Microsoft Word или Microsoft Excel, быстродействие системы оставляло желать лучшего. Особенно, если было запущенно одновременно несколько таких приложений или выполнялось редактирование объекта OLE. Лишь только после установки 16 Мбайт памяти свопинг сократился настолько, что он перестал существенным образом ухудшать производительность системы. Кстати, операционная система Microsoft Windows Workgroups версии 3.11 ведет себя аналогичным образом, особенно если используются ее сетевые возможности. Таким образом, для нормальной работы офисных приложений в среде Microsoft Windows 95 вам придется установить не менее 16 Мбайт оперативной памяти. Но именно столько нужно и для работы Microsoft Windows NT Workstation. При этом последняя будет обладать такой же (если не большей) производительнстью, что и Microsoft Windows 95. У вас нет возможности работать с Microsoft Windows NT только в том случае, если в вашем компьютере установлена оперативная память объемом 8 Мбайт и вы не в состоянии расширить ее до 16 Мбайт, заплатив 150 - 160 долларов. Что же касается операционной системы Microsoft Windows NT, то при ее создании разработчики из Microsoft руководствовались в первую очередь вопросами обеспечения надежности, а не совместимости со старыми программами. Сказанное не означает, что вы не сможете запустить в среде Microsoft Windows NT программу MS-DOS или 16-разрядное приложение Windows. Однако в отличие от Microsoft Windows 95, операционная система Microsoft Windows NT контролирует выполняемые такими программами действия намного строже. В результате у вас, например, могут возникнуть трудности при запуске некторых игровых программ, рассчитанных на MS-DOS, или других программ, обращающихся непосредственно к аппаратуре компьютера. Раньше, когда 32-разрядных программ, предназначенных специально для Microsoft Windows NT, было очень мало, ограниченная совместимость со старыми программами MS-DOS и повышенные требования к системным ресурсам сдерживали распространение этой операционной системы. На сегодняшний день 32-разрядных программ появилось очень много. Более того, практически прекратился выпуск новых 16-разрядных приложений Windows и программ MS-DOS. Вы можете приобрести 32-разрядную версию большинства известных 16-разрядных приложений, а также игровые программы, специально предназначенные для работы в среде Microsoft Windows NT или Microsoft Windows 95. Например, потребности большинства фирм удовлетворяет пакет Microsoft Office for Windows 95, который прекрасно работает в среде Microsoft Windows NT. В результате развития рынка 32-разрядных приложений актуальность совместимости со старыми программами значительно снизилась. Что же дает пользователю переход от операционных систем Microsoft Windows версии 3.1 или Microsoft Windows 95 к Microsoft Windows NT? Прежде всего, увеличится надежность и производительность. К другим преимуществам можно отнести возможность использования мощных средств разграничения доступа. Файловая система NTFS, использованная в Microsoft Windows NT, является на сегодняшний день одной из лучших и надежных. У нее отсутствуют все недостатки файловой системы FAT, такие как сильные ограничения на длину имени файлов и каталогов, быстрая фрагментация дискового пространства при интенсивной работе. Система разграничения доступа, встроенная в Microsoft Windows NT, очень удобна, если компьютером пользуются несколько человек. Она позволяет организовать работу таким образом, чтобы пользователи имели доступ только к своим каталогам, а также каталогам, выделенным в совместное пользование. При необходимости администратор компьютера (да, теперь вы можете завести в вашем домашнем компьютере отдельного пользователя с правами администратора) может защитить некоторые каталоги, предоставив к ним доступ только на чтение. Это значительно сократит ущерб, например, в результате вирусной атаки или неосторожных действий начинающего пользователя. К другим преимуществам файловой системы NTFS можно отнести использование системы транзакций, а также B-деревьев для поиска файлов в каталогах. Первое из этих преимуществ увеличивает надежность файловой системы, второе - быстродействие при поиске файлов в каталогах. Конечно, при установке Microsoft Windows NT могут возникнуть и трудности. Так как эта операционная система, в отличие от Microsoft Windows 95 и Microsoft Windows версии 3.1, не может работать с драйверами для MS-DOS, вы должны иметь полный комплект драйверов от ваших периферийных устройств для Microsoft Windows NT. Если вы устанавливаете Microsoft Windows NT на новый компьютер, проблемы с драйверами у вас скорее всего не возникнут. Однако в любом случае перед установкой вам необходимо убедиться, что контроллер диска, видеоадаптер, устройство чтения CD-ROM и звуковой адаптер имеют драйверы для работы в Microsoft Windows NT. Если нужного драйвера нет, вы можете попытаться отыскать его в сети Internet. О работе в этой сети мы рассказали в 23 томе “Библиотеки системного программиста”, который называется “Глобальные сети компьютеров”. Пользовательский интерфейс операционной системы Microsoft Windows NT версии 3.51 напоминает интерфейс Microsoft Windows версии 3.1, что в значительной мере упрощает переучивание пользователей. Тем не менее, будущее за объектно-ориентированным интерфейсом, использованном в Microsoft Windows 95. Уже сейчас вы можете бесплатно получить бета-версию объектно-ориентированной оболочки с сервера WWW корпорации Microsoft. А в самое ближайшее время выйдет Microsoft Windows NT версии 4.0, в которую такая оболочка будет встроена. Подводя итог сказанному выше, мы делаем заключение, что операционная система Microsoft Windows NT готовится корпорацией Microsoft “на первые роли”. При общей тенденции снижения цен на компьютерное оборудование и лавинообразное появление новых 32-разрядных приложений пользователи смогут, наконец, выполнять всю свою работу в среде высоконадежной и удобной операционной системы Microsoft Windows NT. Теперь о том, что вам потребуется для работы с нашей книгой. Прежде всего, мы предполагаем, что вы уже умеете программировать для операционной системы Microsoft Windows версии 3.1. Несмотря на то что в Microsoft Windows NT появилось очень много нового, базовые понятия, такие как окна или обработка сообщений, не изменились. Создавая новую операционную систему, в Microsoft позаботились о том, чтобы программисты смогли легче перейти к ней от старой, 16-разрядной версии. Во многом это получилось. Поэтому мы решили рассказывать о программировании для Microsoft Windows NT не с самого начала, а в предположении о наличии у программиста определенных знаний о Microsoft Windows версии 3.1. Если же вы ранее создавали программы только для MS-DOS или IBM OS/2, имеет смысл вначале прочитать 11 - 17 тома “Библиотеки системного программиста”, где мы рассказываем о программировании для Microsoft Windows версии 3.1. Мы также очень рекомендуем вам ознакомиться с 22 томом “Библиотеки системного программиста”, который называется “Операционная система Windows 95 для программиста”. Практически все, изложенное в этой книге, применимо и для операционной системы Microsoft Windows NT. Что же касается сетевых возможностей этой операционной системы, то в 23 томе “Библиотеки системного программиста”, который называется “Глобальные сети персональных компьютеров”, мы рассказали об использовании программного интерфейса Windows Sockets. С помощью этого интферфеса вы сможете создавать приложения для Microsoft Windows NT и Microsoft Windows 95, способные передавать данные по локальным или глобальным сетям с использованием протокола TCP/IP. Примеры приложений, приведенные в книге, транслировались в системе разработки Microsoft Visual C++ версии 4.0. Вы таже можете воспользоваться версией 2.0 или 4.1 этой системы. Для того чтобы не набирать исходные тексты вручную и избежать ошибок, мы рекомендуем приобрести дискету с исходными текстами приложений, которая продается вместе с книгой. Для проверки приложений мы использовали компьютер на базе процессора Pentium-90 с объемом оперативной памяти 16 Мбайт. Хотя такой объем памяти вполне достаточен для трансляции наших примеров, при возможности имеет смысл увеличить его до 32 Мбайт. В этом случае работа над большими проектами пойдет заметно быстрее. Объем дисковой памяти в нашем компьютере составляет 2,5 Гбайт, однако для установки Microsoft Windows NT и Microsoft Visual C++ вполне хватит 540 Мбайт. Для установки Microsoft Windows NT и системы разработки Microsoft Visual C++ удобно иметь устройство чтения компакт-дисков. Выбирая это устройство, поинтересуйтесь, есть ли к нему драйвер для Microsoft Windows NT. Мы использовали 4-скоростное устройство Mitsumi FX-400. Что касается видеомонитора, то мы рекомендуем использовать такой, который может работать с разрешением 800х600, а лучше 1024х768 пикселов или даже с еще более высоким разрешением. В этом случае использовать систему Microsoft Visual C++ будет намного удобнее. Мы приобрели 15-дюймовый монитор Sony Multiscan 15sf, отличающийся достаточно малым размером зерна - 0,25 мм, что позволило нам работать при разрешении 1024х768 пикселов. В качестве видеоадаптера был применен Diamond Stealth 64 DRAM PCI, для которого в составе Microsoft Windows NT имеется подходящий драйвер. Для работы с мультимедиа необходим звуковой адаптер. Мы использовали адаптер Creative Sound Blaster 16. Отладку мультизадачных приложений мы выполняли на четырехпроцессорном компьютере Compaq Proliant-2000. Если вы собираетесь заниматься разработкой приложений для Microsoft Windows NT профессионально, вам следует приобрести набор компакт-дисков “Microsoft Developer Network. Developer Platform”. В состав этого набора входят многочисленные версии Microsoft Windows, MS-DOS, огромный запас различной документации и средств разработки. Стоимость комплекта невысока (около 250 долларов США), особенно если учесть все, что в него входит. БлагодарностиАвторы выражают благодарность сотруднику фирмы Interactive Products Inc. Максиму Синеву за многочисленные консультации. Мы также благодарим корректора Кустова В. С. и сотрудников издательского отдела АО “Диалог-МИФИ” Голубева О. А., Голубева А. О., Дмитриеву Н. В., Виноградову Е. К., Кузьминову О. А. Как связаться с авторамиВы можете передать нам свои замечания и предложения по содержанию этой и других наших книг через электронную почту:
Если электронная почта вам недоступна, присылайте ваши отзывы в АО “Диалог-МИФИ” по адресу: 115409, Москва, ул. Москворечье, 31, корп. 2, тел. 324-43-77 Приносим свои извинения за то что не можем ответить на каждое письмо. Мы также не занимаемся рассылкой дискет и исходных текстов к нашим книгам. По этому вопросу обращайтесь непосредственно в издательство “Диалог-МИФИ”. |