Архитектура Microsoft Windows для разработчиков
Это официальное учебное пособие рекомендовано корпорацией Microsoft для подготовки к экзаменам по программе сертификации разработчиков решений на базе продуктов Microsoft (Microsoft Certified Solution Developer, MCSD). Курс адресован разработчикам программного обеспечения и системным администраторам, а также всем, кто готовится к сдаче экзаменов по программе сертификации Microsoft. Здесь подробно рассмотрена архитектура операционных систем семейства Windows и различные аспекты разработки приложений для этих ОС, включая создание клиент-серверных и Web-приложений.Об этой курсе
Мы рады представить Вам курс «Архитектура Microsoft® Windows для разработчиков», посвященный архитектуре и сервисам семейства операционных систем Microsoft® Windows®. Изучив его, Вы приобретете знания и навыки, необходимые для разработки приложений для Windows 95 и Windows NT®. Настоящий учебный курс содержит все материалы, необходимые для подготовки к экзаменам «Архитектура Microsoft Windows I» (70-160) и «Архитектура Microsoft Windows II» (70-161).
Операционные системы Windows и их архитектура
Сейчас чаще всего используются три операционные системы (ОС) семейства Windows. К 16-разрядным версиям относятся Windows 3.1 и Windows 3.11 (другое название — Windows for Workgroups), которые обсуждаются в первой части этого занятия. Далее же речь пойдет о 32-разрядных операционных системах Windows 95 и Windows NT. На этом занятии Вы познакомитесь с возможностями трех операционных систем семейства Windows.
Концепции построения сетей
В настоящее время разработчикам корпоративных приложений доступны несколько сетевых архитектур. Их подразделяют на локальные (Local Area Network, LAN) и глобальные (Wide Area Network, WAN) сети. В настоящее время большинство приложений для бизнеса должны поддерживать обе эти среды. Первое занятие посвящено современным сетевым архитектурам.
Создание решений с использованием Microsoft BackOffice
Microsoft BackOffice позволяет создавать решения для корпоративной среды. Этот интегрированный набор серверных приложений поможет Вам управлять своим бизнесом. Объединение компонентов BackOffice упрощает их установку, развертывание и сопровождение. На этом занятии Вы познакомитесь с компонентами семейства Microsoft BackOffice.
Разработка приложений
Компания Microsoft предлагает широкий спектр средств разработки решении. В настоящее время наиболее популярны две среды разработки: Microsoft Visual Studio и Microsoft Office. Visual Studio 97 — многопрофильное семейство визуальных средств создания многоуровневых клиент-серверных приложений и приложений для Интернета. Microsoft Office позволяет быстро создавать, модифицировать и развертывать полнофункциональные решения.
Архитектура компонентных решений
Модель многокомпонентных объектов (Component Object Model, СОМ) позволяет определить стандарт взаимодействия между объектами-приложениями и объектами-компонентами (например, Microsoft Word или приложение на Visual Basic), a также совместно использовать данные. Объекты взаимодействуют через интерфейсы СОМ.
Базы данных: принципы построения
Бизнес-решения почти всегда требуют поддержки баз данных. В настоящее время наиболее распространены два типа реляционных БД: файловые и клиент-серверные. На этом занятии обсуждаются реляционные базы данных, характеристики файловых и клиент-серверных баз данных, а также описываются области применения каждой из этих архитектур.
Базы данных: интерфейсы для разработчиков
Для подключения к внешним БД приложение может использовать несколько методов доступа к информации, основанных на соответствующем интерфейсе. Последние разделены на три категории: файловые (включая ISAM), ODBC и OLE DB (тип интерфейса соответствует типу БД). Из этого занятия Вы узнаете о трех основных интерфейсах, используемых для соединения с внешними базами данных.
Технологии ActiveX
ActiveX — это основанная на СОМ технология, предоставляющая в распоряжение разработчика базовые строительные блоки для создания Windows-приложений. ActiveX применяют для создания элементов управления, документов и компонентов, предназначенных как для рабочего стола, так и для работы в Интернете. Компоненты ActiveX можно реализовать на многих языках программирования, включая все средства разработки приложений, выпускаемые компанией Microsoft.
Реализация клиентских решений
Сценарий — это код, включенный в состав Web-страницы. Сценарий выполняется либо на клиентском компьютере, когда пользователь работает с элементом управления, либо на Web-сервере перед отправкой страницы клиенту. В обоих случаях Вы добавляете сценарий в Web-страницу в виде текста ASCII. На этом занятии сопоставляются серверные и клиентские сценарии; здесь же Вы узнаете о реализации сценарной части клиентских решений и о VBScript — языке создания сценариев, который используется в этой главе.
Реализация серверных решений
Сценарии серверной части выполняются на Web-сервере, а не на компьютере-клиенте. Web-сервер обрабатывает или создает HTML-страницы, возвращаемые программе просмотра. И это главное отличие от традиционных моделей — теперь содержимое HTML создается динамически в процессе предоставления страниц клиентам. Любые элементы управления или компоненты, которые Вы используете в серверном сценарии, должны находиться и запускаться на Web-сервере.
Дополнительные интерфейсы
В состав ОС семейства Windows входит интерфейс прикладного программирования коммуникационных приложений Messaging Application Programming Interface (MAPI), позволяющий разрабатывать приложения для доступа к почтовой, факсимильной и другим видам информации. На этом занятии Вы узнаете о преимуществах MAPI и принципах его работы.
Пользовательский интерфейс
Одно из основных преимуществ операционной системы Windows — стандартный интерфейс всех приложений. Пользователь, знакомый с одним приложением этого семейства, легко изучит другие. Например, в большинстве Windows-приложений строка меню (оно расположено в верхней части окна) начинается с меню File, продолжается дополнительными меню — например, Edit и Tools — и завершается меню справочной системы (Help). Возможно, название Documents нравится Вам больше, чем File, или Вы сочтете, что меню Help лучше смотрится слева. В принципе, ничто не мешает Вам откорректировать свою программу, но отклонение от общепринятых соглашений сделает ее менее удобной. Если Вы измените стандартный формат, пользователю при каждом переключении между Вашей и другими приложениями придется вспоминать, что где находится и как называется.
Методики разработки и управления проектами
Методология разработки решений Microsoft (Microsoft Solutions Framework, MSF) — это набор взаимосвязанных моделей, позволяющих подобрать необходимые ресурсы, персонал и методы. Эти модели помогают надлежащим образом организовать все стадии — планирования, создания и управления, составляющие разработку и реализацию программного обеспечения.
Архитектура Microsoft Windows для разработчиков 2
Сейчас чаще всего используются три операционные системы (ОС) семейства Windows. К 16-разрядным версиям относятся Windows 3.1 и Windows 3.11 (другое название — Windows for Workgroups), которые обсуждаются в первой части этого занятия. Далее же речь пойдет о 32-разрядных операционных системах Windows 95 и Windows NT. На этом занятии Вы познакомитесь с возможностями трех операционных систем семейства Windows.Поддержка аппаратуры Plug-and-Play
Стандарт Plug-and-Play (PnP) позволяет изменять конфигурацию персонального компьютера без вмешательства пользователя. Автоматическая установка устройства — простым подсоединением его к компьютеру — мгновенно делает это устройство доступным. Plug-and-Play поддерживается не всеми устройствами и системами, например его не поддерживает Windows NT 4.0, однако это будет исправлено в следующей версии Windows NT Workstation.
Локальные сети
Когда впервые потребовалось соединить компьютеры для совместного использования файлов и принтеров, они находились на небольшом расстоянии друг от друга, а число пользователей было невелико. Например, в начале 80-х годов наиболее популярный кабельный способ соединения в локальную сеть (Local Area Network, LAN) допускал подключение до 30 пользователей при максимальной длине кабеля до 200 метров.
Характеристики IIS
В состав IIS входят компоненты, обеспечивающие расширение возможностей Web-узла ( 3.2). Вот основные компоненты: высокопроизводительный сетевой сервер приложений; среда разработки приложений; встроенная система текстового поиска; средства поддержки мультимедиа; расширенные средства управления Web-узлом.
Microsoft Visual Basic
Microsoft Visual Basic — самый простой метод разработки приложений для Microsoft Windows. Он включает полный набор средств быстрого создания приложений (Rapid Application Development, RAD) как для опытных профессионалов, так и для тех, кто только начинает программировать для Windows.
Архитектура СОМ
Модель многокомпонентных объектов (Component Object Model, СОМ) позволяет определить стандарт взаимодействия между объектами-приложениями и объектами-компонентами (например, Microsoft Word или приложение на Visual Basic), a также совместно использовать данные. Объекты взаимодействуют через интерфейсы СОМ.
Файловые базы данных
Многие популярные системы управления базами данных (СУБД) для персональных компьютеров являются файловыми реляционными БД. Эти базы данных, как правило, размещают на сервере для совместного использования, и поэтому такая архитектура считается файл-серверной.
Обзор методов доступа к данным
DAO, RDO, ADO и SQL-DMO — это методы доступа, предназначенные для манипулирования данными в реляционных БД. Все они выполняют сходные функции, однако каждый оптимизирован для определенной ситуации. Например, DAO лучше подходит для работы с записями в локальной БД Microsoft Access, a RDO — в базе данных SQL Server. Кроме того, у каждого метода свой API или ядро БД.
Преимущества элементов управления ActiveX
Элементы управления ActiveX используются программистами при разработке приложении средствами Visual Basic и конечными пользователями при создании документов Microsoft Office.
Серверные сценарии
Серверный сценарий выполняется в рамках активной страницы на Web-сервере до того, как тот вернет пользователю готовую HTML-страницу. Когда пользователь запрашивает активную серверную страницу, сервер выполняет сценарии и создает HTML-код, который и передается пользователю. В результате пользователь не видит серверного сценария на полученной Web-странице.
Реализация серверных решений
Используя сценарии серверной части, Вы можете выполнять множество задач, например получать информацию от пользователя, запрашивать данные из БД или строить динамические HTML-страницы для передачи на компьютер-клиент. На этом занятии Вы познакомитесь с архитектурой и синтаксисом активных страниц и узнаете, как их создавать.
Интерфейсы доступа к сервису
Третий функциональный уровень MAPI обеспечивает независимость программ от конкретной системы сообщений. Коммуникационные приложения, отвечающие стандарту MAPI, могут при наличии соответствующих драйверов общаться с любыми службами сообщений, также как при наличии соответствующих драйверов документ можно распечатать на разных принтерах.
Реализация функции OLE Drag-and-Drop
Если Вы хотите создавать программы на базе интерфейса Win32 (Win32 API), Вам нужно протестировать их на всех Windows-платформах. Это исключит вероятность использования функций (или класса функций) Win32 API, которые поддерживаются только на одной платформе. Например, интерфейс графических устройств (GDI) в Windows NT работает с 32-битной системой координат, которая недоступна в Windows 95. Применение 32-битных координат в приложении под управлением Windows 95 приведет к неверному результату.
Модель «Группа»
Эта модель позволяет отслеживать состояние проекта, обеспечивает разделение обязанностей и распределение ответственности за выполнение составных задач проекта. Основные объекты ее внимания в сложных программных проектах — персонал, компетентность, управление, ответственность и качество. В частности, она помогает определить, как подбирать группы разработчиков для создания решений с хорошим соотношением цены и качества.
Словарь терминов
Common Messaging Calls, CMC — интерфейс прикладного программирования, предоставляющий в распоряжение разработчиков приложений электронной почты 10 функций высокого уровня для отправки и приема сообщений. При разработке API акцент делался на простоту использования. В результате прием сообщения осуществляется за один вызов, а отправка — за два, так что разработчик без труда может снабдить свое приложение средствами поддержки электронной почты.
Секреты настройки Windows
Раздел«STANDARD CMOS SETUP» («MAIN»). Определение параметров устройств, подключенных к IDE контроллеру: (В ряде вариантов BIOS это просто установка геометрии жесткого диска. В BIOS, появившихся после августа 1999 года, параметры определяют несколько установочных значений в зависимости от типа IDE устройства. Здесь приводится описание этих параметров именно для новых BIOS.)Primary Master (Master на первом канале IDE) — в ряде вариантов BIOS просто установка геометрии жесткого диска. В BIOS, появившихся после августа 1999 года, параметр определяет несколько установочных значений в зависимости от типа IDE устройства. После выбора Primary Master возможна установка следующих параметров (их количество и названия могут изменяться в зависимости от типа IDE устройства)
Раздел«STANDARD CMOS SETUP» («MAIN»)
Здесь описываются практически все (по мере создания) параметры, устанавливаемые в программе SETUP для BIOS фирмы , которая в начале 1999 года стала частью фирмы . В конкретной материнской плате каких-то из описываемых параметров может и не быть. Одни и те же параметры могут называться по разному в зависимости от производителя материнской платы, поэтому здесь в некоторых случаях приведено несколько вариантов.
Запрет запуска редактора реестра
Параметр с именем «DisableRegistryTools» (dword) и значением «1» запрещает возможность запуска редакторов реестра «Regedit.exe» или «Regedt32.exe». Внимание! Будте осторожны с этой настройкой, потому что, если вы установите этот параметр в реестре, то не сможете использовать «Regedit» для отмены этой команды
Прошивка в диалоговом режиме
Утилита «AwardFlash» (Flash Memory Writer), предназначенная для обновления BIOS, позволяет обновлять его, перезаписывая новый BIOS-файл в программируемый Flash ROM чип на материнской плате. Для определения версии BIOS вашей материнской платы проверьте четыре последние цифры кода, отображаемого в верхнем левом углу экрана в процессе загрузки. Большее число означает более новую версию BIOS-файла. Эта программа работает только в DOS-режиме.
Прошивка
BIOS («Basic Input-Output System» – «Базовая Система Ввода-Вывода») – это программа, доступная компьютеру без обращения к диску и содержащая код, необходимый для управления ключевыми устройствами системы (клавиатурой, видео картой, дисками, портами и другими устройствами). Логично предположить, что, если BIOS не нуждается в дисковых накопителях, то для его хранения используется принципиально другой носитель информации, всегда доступный независимо от состояния дисковой системы, что, собственно, и позволяет компьютеру самостоятельно загружаться.
Если диск не был разбит на разделы
Винчестер, он же HDD («Hard Disk Drive» — «жёсткий диск») начинается с загрузочной записи, а данные о разделах заносятся в MBR («Master Boot Record» — «главная загрузочная запись»), находящуюся в самом первом секторе жёсткого диска. «FDisk» — сокращение от «Fixed Disk» — основная программа для редактирования разделов жёсткого диска. Если Ваш винчестер ещё не разбит на логические диски и Вы собираетесь это сделать, не забудьте сохранить всю нужную Вам информацию (см. ), так как все данные на диске будут уничтожены.
Интернет
Модем должен подключаться к линии первым, то есть телефоны (особенно дисковые) нужно подключать ко второму разъёму модема. Таким образом телефоны будут автоматически отключаться при подсоединении модема к линии и не повлияют на качество связи. (Однако, это актуально только в том случае, если у Вас внешний модем, внутренние, как правило, не отключают линию без дополнительной доработки электронной части, но этот вопрос выходит за рамки этой статьи.)
Конфигурирование локальной сети (для Windows 98)
После того, как Вы подключили все компоненты сети и перезагрузились, «Windows» попросит Вас войти в систему первый раз и выведет на экран окно идентификации пользователя и предложит ввести имя и пароль, то есть зарегистрироваться. Если с компьютером будете работать только Вы, пароль можно вообще не вводить, так как он, в дальнейшем, будет только мешать. Просто нажмите кнопку «ОК» и при следующем запуске «Windows» не будет требовать введения пароля.
Разгон процессора
Прежде чем приступить к разгону, убедитесь, что у Вас всё сделано правильно. Проверьте, нанесена ли термопаста, правильно ли установлен и подключён кулер. Системный блок лучше оставить открытым, пока Вы не закончите все работы. Замерьте производительность своего компьютера, чтобы было потом с чем сравнивать результаты разгона.
Максимальный размер нефрагментируемого блока данных на диске
Этот параметр нужен для того чтобы операционная система при записи файла на диск сначала нашла для него наиболее подходящее по размеру место и поместила его туда, как можно меньше дробя на части, он определяет максимальный размер нефрагментируемого блока данных на диске. При желании размер такого блока можно еще увеличить.
Лишние команды в контекстном меню
Если контекстное меню вашего браузера, выпадающего, если нажать правую кнопку мыши на ссылке, содержит слишком много лишних команд, то их можно удалить, удалив в этом разделе соответствующий подраздел. И, наоборот, можно добавить нужную Вам команду.
Установка «Windows 98»
Перед установкой «Windows 98» нужно создать или раздобыть у знакомых загрузочную (системную) дискету.
CHM-версия сайта
Если включить поддержку больших дисков и создать на них новый диск, невозможно будет получить доступ к новому диску из другой операционной системы, включая некоторые версии Windows 95 и Windows NT, а также более ранние версии Windows и MS-DOS. Кроме того, дисковые служебные программы, которые не поддерживают явно файловую систему FAT32, не смогут работать с этим диском.
Установка «Windows XP»
После ввода серийного номера, копирования файлов и перезагрузки Вам будет предоставлена возможность, нажав клавишу F6, установить SCSI- или RAID-драйвер от независимого поставщика, а затем возможность удалить существующие разделы жёсткого диска и создать на их месте новые. Удалить можно все диски кроме системного, то есть того, на котором находится загруженная в данный момент операционная система.
Отключение панели переключения программ
Создайте в этом ключе параметр с именем «CoolSwitch» (string — строковый) и значением «0», чтобы отключить панель переключателя задач (который выводится при нажатии клавиш Alt+Tab). Чтобы изменить число строк и колонок, показываемое на его панели, необходимо отредактировать значения строковых параметров «CoolSwitchRows» и «CoolSwitchColumns», соответственно.
Системные настройки «Windows 98»
При начальной загрузке после завершения выполнения файла «CONFIG.SYS» автоматически выполняется командный файл «AUTOEXEC.BAT», если он имеется в корневом каталоге загрузочного диска. Как правило в этот файл записывают команды для запуска резидентных программ, а также программ, которые целесообразно запускать при каждом запуске компьютера, команды для установки переменных окружения (SET), задания списка каталогов, в которых производится поиск запускаемых программ (PATH).
Системные настройки «Windows XP»
Специальный текстовый конфигурационный файл «BOOT.INI», который используется в процессе загрузки — один из важнейших системных файлов «Windows XP». Этот файл должен находиться в корневом каталоге загрузочного диска. Перед тем как модифицировать файл измените его аттрибуты, так чтобы он не был «Только для чтения» (щёлкните правой кнопкой мыши по файлу и выберите в контекстном меню последний пункт — «Свойства» и скиньте соответствующий флажок, устанавливаемый по умолчанию при инсталляции ОС).
Программирование драйверов Windows
При выводе системных сообщений о прекращении работы (известные как bug-checks), выводятся также коды, по которым можно определить, что побудило систему запаниковать. В зависимости от ошибки, система сообщает до 4-х дополнительных параметров, которые дают дополнительную информацию о возникшей проблеме.Коды ошибочных ситуаций
Хотя полный перечень кодов можно найти в заголовочном файле bug-codes.h, входящий в пакет DDK, расшифровки значений там не приводится. По этой причине ниже приводятся наиболее часто встречающиеся коды, основные причины данных ситуаций и расшифровка дополнительных параметров. Данному вопросу посвящена статья Microsoft Knowledge Base Q103059.
Рабочая процедура выгрузки драйвера
При следовании WDM модели, драйвер должен был бы зарегистрировать обработчик PnP запросов (то есть IRP_MJ_PNP) и перед вызовом UnloadRoutine получал бы IRP пакеты с кодом IRP_MJ_PNP и суб-кодом IRP_MN_STOP_DEVICE (например, когда пользователь решил отключить устройство, воспользовавшись окном Диспетчера Устройств в Настройках системы). В этом обработчике и следует выполнять действия, предшествующие удалению WDM драйвера.
Приемы программирования в режиме ядра
Приемы программирования в режиме ядра носят характерный отпечаток: здесь имеются свои ограничения и тактика, применяется свой набор служебных функций, не совпадающий с API набором пользовательского режима. Наконец, на использование системных функций в режиме ядра влияет приоритет программного кода, из которого предполагается их вызов: некоторые функции не могут быть вызваны при слишком высоких уровнях IRQL, некоторые, наоборот, не должны применяться на низких.
Объекты события
Событие есть синхронизационный примитив (объект), который должен быть явно установлен в сигнальное либо несигнальное состояние. Событие похоже на бинарный флаг, позволяющий одному потоку подавать сигналы другим потокам о том, что нечто, оговоренное заранее, произошло, и этот сигнал подается путем установки объекта события в сигнальное состояние.
Программирование игр для Windows. Советы профессионала
Если вы не играли в свою любимую аркадную игру и не убивали кучу монстров уже несколько месяцев — вы явно заработались! Вернитесь к играм и увидите, как вы помолодеете и как разгладятся морщины на вашем утомленном лице. Дни Hunt the Wampus и Lunar Lander миновали, и теперь игры стали намного ярче, красочней и хитрее.Игра сегодняшнего дня содержит целые мили туннелей, дорог и странных созданий. Они сопровождаются потрясающей графикой и звуком. DOOM - хороший пример такой игры. Она включает запутанные переходы и тайники с сокровищами, чудовищ, на которых вы можете охотиться и которых вы должны убить прежде, чем они убьют вас. Если вы хоть раз играли в DOOM, то не перестанете тосковать по кислотным лужам, ружьям, чудовищам, скрытым проходам, лифтам, взрывам... этот список можно продолжать до бесконечности. Все это было создано благодаря комбинации графики и звукового сопровождения.
Графика DOOM дает вам полное ощущение пространства и перспективы — как если бы вы действительно находились в центре событий. Для этого DOOM использует приемы работы с трехмерной графикой. Разработчики игр для ПК используют трехмерную графику для увеличения реалистичности игры любого типа — посмотрите на 7th Guest, MYST, X-Wing, Outpost, Indy Car Racing. Часто трехмерная графика применяется и в имитаторах спортивных игр, таких как скачки или бокс.
Что вы должны знать
Для понимания большинства материала, представленного в этой книге, вы должны хорошо владеть языком программирования Си. Большинство книг по созданию компьютерных игр ориентируются на ассемблер. В этой книге ассемблеру уделено совсем немного внимания, а основной акцент сделан на Си. Однако, она содержит несколько ассемблерных примеров, так что знакомство с этим языком вам не помешает.
Алгоритм художника
Алгоритм Художника — это один из тех алгоритмов, которые могут создавать ощущение реальности. Основная идея Алгоритма Художника состоит в сортировке поверхностей таким образом, что при рендеринге это выглядит корректно. Наиболее просто этот алгоритм может быть реализован, когда каждая поверхность параллельна плану просмотра (то есть перпендикулярна лучу зрения).
Использование звука в играх
Я, конечно, не могу не рассказать о правильном и своевременном использовании звуков в компьютерных играх. Я видел людей, которые приходили в экстаз от того, что именно в нужный момент в игре звучал гармонирующий с сюжетом звук.
Синхронизация состояния ввода/вывода
Синхронизация состояния ввода/вывода является методом, при котором статус устройств ввода данных передается на другой ПК в реальном времени. Все, что игрок делает на одном компьютере, принимающая система воспринимает как входные данные, которые использует для корректировки в своем игрового пространстве поведения образа отдаленного игрока
Программирование видеоадаптеров CGA,EGA и VGA
Подробно описана архитектура этих видеоадаптеров, их регистры. Для каждого регистра воспроизводится его формат и описывается назначение. В наиболее интересных случаях представлены программы, использующие непосредственный доступ к регистрам. Благодаря этому читатель сможет получить на экране своего компьютера видеоэффекты, недоступные при использовании только функций BIOS или функций библиотек трансляторов языков высокого уровня.Читателю предоставляется возможность подробно рассмотреть стандартные режимы работы видеоадаптеров, структуру видеопамяти в этих режимах. Знание структуры видеопамяти позволяет создавать программы, отображающие информацию на экране путем непосредственного доступа к видеопамяти. А это, в свою очередь, важно при создании быстрых видеопрограмм, в частности, динамических игр и графических редакторов.
В качестве примера рассмотрены два не стандартных режима видеоадаптера VGA. Эти режимы не поддерживаются функциями BIOS и позволяют в режиме с 256 цветами иметь большую разрешающую способность.
Далее в книге излагаются традиционные методы управления видеоадаптерами. Приведен обзор всех прерываний и функций BIOS, предназначенных для работы с видеоадаптерами. Описываются также наиболее важные функции cтандартных библиотек трансляторов Microsoft Quick C 2.5 и C 6.0. Применение каждой группы функций иллюстрируется примерами программ.
Большое количество программ, составленных с использованием таких распространенных языков программирования, как Си и ассемблер, значительно облегчают понимание материала, изложенного в книге.
Книга предназначена для специалистов по вычислительной технике, системных и прикладных программистов, студентов вузов, специализирующихся на вычислительной технике.
Введение
Подробно описана архитектура этих видеоадаптеров, их регистры. Для каждого регистра воспроизводится его формат и описывается назначение. В наиболее интересных случаях представлены программы, использующие непосредственный доступ к регистрам. Благодаря этому читатель сможет получить на экране своего компьютера видеоэффекты, недоступные при использовании только функций BIOS или функций библиотек трансляторов языков высокого уровня.
Типы дисплеев
Композитный дисплей. Имеет одну аналоговую входную линию. Дисплей может быть как цветным, так и монохромным. Видеосигнал поступает в дисплей в стандарте NTSC (National Television System Committee). Данный стандарт используется также в телевидении. Композитный дисплей применяется совместно с видеоадаптером CGA. Цифровой дисплей. Имеет от одной до шести входных линий. На цифровом дисплее может отображаться до 2n различных цветов, где n равно количеству входных линий. Данный тип дисплеев может использоваться вместе с EGA и CGA. Аналоговый RGB дисплей.
Режимы работы видеоадаптеров
Существуют несколько стандартных режимов работы видеоадаптеров, определенных фирмой IBM. Список стандартных режимов работы видеоадаптеров представлен в таблице 3.1. Стандартные раежимы работы не включают все режимы, в которых могут работать видеоадаптеры. Многие фирмы - производители видеоадаптеров выпускают адаптеры, поддерживающие нестандартные режимы, имеющие улучшенные характеристики.
Системы с двумя видеоадаптерами
В некоторых случаях желательно или необходимо, чтобы компьютер имел два дисплея. Например, для отладки приложений, созданных с использованием SDK Windows можно применять отладчики CodeView и Symdeb. Данные отладчики при отладке приложений Windows нуждаются в компьютере, имеющем два дисплея. На одном дисплее отображается исходный текст отлаживаемого приложения и информация отладчика, а другой используется самим приложением.
Архитектура видеоадаптера CGA
Видеоадаптер CGA построен на основе мкросхемы Motorolla 6845 или ее аналога. Эта микросхема содержит контроллер электронно-лучевой трубки (ЭЛТ). Контроллер ЭЛТ Motorolla 6845 устанавливает формат экрана, управляет курсором и световым пером, а также управляет цветовыми характеристиками изображения.
Архитектура видеоадаптеров EGA и VGA
Видеопамять. В видеопамяти размещаются данные, отображаемые адаптером на экране дисплея. Для видеоадаптеров EGA и VGA видеопамять, как правило, имеет объем 256К байт. На некоторых моделях Super VGA и XGA объем видеопамяти может быть увеличен до 1М байт. Видеопамять находится в адресном пространстве процессора и программы могут непосредственно производить с ней обмен данными. Физически видеопамять разделена на четыре банка или цветовых слоя, разделяющих единое адресное пространство. Графический контроллер. Посредством его происходит обмен данными между центральным процессором компьютера и видеопамятью. Аппаратура графического контроллера позволяет производить над данными, поступающими в видеопамять, и над данными, расположенными в регистрах-защелках (регистры-защелки описаны ниже) простейшие логические опрерации (И, ИЛИ, ИСКЛЮЧАЮЩЕЕ ИЛИ, циклический сдвиг).
Регистры видеоадаптера CGA
В этой главе мы опишем все основные регистры видеоадаптера CGA, которые могут быть полезны при написании программ. Необходимо заметить, что хотя программирование видеоадаптеров на уровне регистров позволяет увеличить скорость работы программ и решить некоторые задачи, которые нельзя решить при помоши функций BIOS, это может вызвать ряд проблем при переносе ваших программ на другие машины.
Регистры видеоадаптеров EGA и VGA
В этой главе мы опишем все основные регистры видеоадаптеров EGA и VGA, которые могут быть полезны при написании программ. Необходимо указать, что хотя программирование видеоадаптеров на уровне регистров позволяет увеличить скорость работы программ и решить некоторые задачи, которые нельзя решить при помоши функций BIOS, это может вызвать ряд проблем при переносе ваших программ на другие машины. Дело в том, что не все адаптеры совместимы на уровне регистров. Например, оригинальный видеоадаптер CGA создан на основе микросхемы Motorola 6845, а видеоадаптеры EGA и VGA используют более совершенный аналог этой микросхемы.
Основные средства BIOS для работы с видеоадаптерами
Подробно описаны все основные функции BIOS, предназначенные для работы с видеоадаптерами. Основные функции BIOS реализуются на всех компьютерах серии IBM PC/XT/AT, PS/2. На каждую группу функций данная глава содержит примеры программ.
Дополнительные средства BIOS для управления EGA и VGA
В этой главе описаны остальные функции BIOS, которые реализованы только на видеоадаптерах EGA и VGA. Так же, как и в предыдущей главе, использование каждой группы функций иллюстрируется соответствующими примерами программ.
Область данных видеофункций BIOS
Глава описывает переменные BIOS, размещенные в младших адресах памяти (в так называемой системной области) и используемые видеофункциями BIOS. Знание адресов этих переменных позволяет программе определить количество и тип видеоадаптеров, подключенных к компьютеру, объем видеопамяти, текущий режим работы адаптера.
Использование функций MS-DOS для управления видеоадаптерами
MS-DOS предоставляет программистам несколько функций для работы с дисплеем
Стандартные функции вывода языка Си
В главе рассмотрены основные стандартные функции вывода текстовых данных на экран (через стандартный выходной поток и через консоль). К ним относятся функции putc, putchar, putch, puts, cputs, printf и cprintf.
Функции управления видеоадаптером
Глава знакомит читателей с основными функциями стандартной библиотеки трансляторов Microsoft Quick C 2.5 и C 6.0, предназначенными для управления экраном дисплея в текстовом режиме. Глава содержит описание функций, управляющих формой и координатами курсора, текущим режимом работы видеоадаптера и переключением страниц видеопамяти, отображением текста и изменением цвета символов и цвета фона.
Основные графические функции
Глава знакомит читателей с основными функциями стандартной графической библиотеки трансляторов Microsoft Quick C 2.5 и C 6.0. Функции, описанные в этой главе, предоставляют программисту разнообразные возможности управления графическим экраном дисплея.
Приложение
В приложения к книге вынесены наиболее полезные таблицы: таблица ASCII-кодов символов; карта памяти, используемой видеоадаптерами CGA/EGA/VGA; значения регистров, устанавливаемые BIOS по умолчанию, список стандартных режимов видеоадаптеров с их основными параметрами. Приложение содержит также словарь терминов (глоссарий).
Японские свечи - перейти
Японские свечи - перейти
Анализ японских свечей - перейти
Свечи Intraday - перейти
Графический анализ - перейти
Графический анализ - перейти
Графика Демарка - перейти
Паттерны - перейти
Microsoft Excel 2003 - перейти
Введение в Excel - перейти
Составление таблицы - перейти
Как обращаться с рабочими книгами - перейти
Работа с листами - перейти
Печать - перейти
Обнаружение ошибок и получение справок - перейти
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий