Системное программирование в среде Windows - [3]
В пределах каждой главы, после краткого обсуждения отдельной функциональности, например, управления процессами или отображения файлов, подробно рассматриваются наиболее важные из соответствующих функций Windows и их взаимосвязь между собой. Изложение сопровождается иллюстративными примерами. В основной текст включены лишь наиболее существенные части листингов программ; полные тексты программ, а также необходимые включаемые файлы, вспомогательные функции и прочий код приведены в приложении А или доступны на Web-сайте книги (http://www.awprofessional.com/titles/0321256190). Во всех случаях, когда какие-либо возможности поддерживаются только текущими версиями Windows (XP, 2000 и Server 2003) и не поддерживаются предыдущими, например, Windows 9x и Windows NT, в которых не реализованы многие из усовершенствованных возможностей, делаются отдельные оговорки. В каждой главе приводится список дополнительной рекомендованной литературы и предлагается несколько упражнений. Многие упражнения акцентируют внимание на вопросах, которые имеют важное значение и представляют определенный интерес, но не были отражены в основном тексте, тогда как другие упражнения заставляют читателя глубже разобраться в темах более сложного или специального характера.
В главе 1 предлагается высокоуровневое введение в семейство ОС Windows и Windows API. Используемая в качестве примера простая программа демонстрирует основные элементы стиля программирования Windows и создает фундамент для реализации усовершенствованных возможностей Windows. Win64 и проблемы межплатформенной миграции программ предварительно рассматриваются в главе 1, более полно изучаются в главе 16, и обсуждаются по мере изложения в остальной части книги там, где это оказывается необходимым.
В главах 2 и 3 рассматриваются файловые системы, операции консольного ввода/вывода, блокирование файлов и управление каталогами. В главе 2 также рассказывается о кодировке Unicode — расширенном символьном наборе, который используется в Windows. Соответствующие иллюстративные примеры охватывают последовательный и прямой доступ к содержащимся в файле данным, обход дерева каталогов и архивирование файлов. Глава 3 заканчивается обсуждением программного управления реестром, имеющего много общего с управлением файлами и каталогами.
Глава 4 знакомит читателя с обработкой исключений в Windows, включая структурную обработку исключений (Structured Exception Handling, SEH), которая будет широко использоваться на протяжении всей книги. Во многих книгах изучение SEH откладывается до последних глав, однако мы, ознакомившись с этим средством уже на начальной стадии, получим возможность сразу же пользоваться им, что значительно упростит для нас некоторые задачи программирования и позволит повысить качество программ. Кроме того, здесь описано также одно из новейших средств — векторная обработка исключений.
В главе 5 рассмотрены вопросы управления памятью в Windows и показано, каким образом отображение файлов используется не только для упрощения программирования, но и для повышения производительности программ. В этой же главе рассмотрена организация библиотек DLL.
В главе 6 приводятся начальные сведения о процессах, управлении процессами и простых методах синхронизации в Windows. Далее в главе 7 эти понятия используются для описания управления потоками. Примеры в каждой из глав иллюстрируют многочисленные преимущества, включая упрощение программ и повышение их производительности, которые обеспечивает использование потоков и процессов.
Главы 8, 9 и 10 предлагают углубленный анализ одного из наиболее мощных средств Windows — синхронизации потоков. Синхронизация — сложная тема, и поэтому в данных главах содержатся многочисленные примеры и описания вполне понятных моделей, которые должны помочь читателю в полной мере воспользоваться преимуществами потоков для повышения эффективности программирования и производительности программ и вместе с тем обойти множество подводных камней. В эти главы включен новый материал, охватывающий вопросы повышения производительности и масштабируемости, что приобретает особое значение при создании серверных приложений, включая те из них, которые предположительно должны выполняться на SMP-системах.
Главы 11 и 12 посвящены межпроцессным и межпоточным взаимодействиям, а также сетевому программированию. В главе 11 главное внимание уделено средствам, являющимся частью Windows, а именно, анонимным каналам, именованным каналам и почтовым ящикам. В главе 12 обсуждаются сокеты Windows (Windows Sockets), обеспечивающие возможность взаимодействия с системами, не входящими в семейство Windows, посредством стандартных протоколов, главным образом, TCP/IP. И хотя интерфейс Windows Sockets, строго говоря, не является частью Windows API, он способен обеспечивать связь и взаимодействие через сети и Internet, так что предмет рассмотрения данной главы согласуется с остальной частью книги. На примере многопоточной клиент-серверной системы проиллюстрировано, каким образом можно обеспечить межпроцессное взаимодействие наряду с потоками.
Применение виртуальных машин дает различным категориям пользователей — от начинающих до IT-специалистов — множество преимуществ. Это и повышенная безопасность работы, и простота развертывания новых платформ, и снижение стоимости владения. И потому не случайно сегодня виртуальные машины переживают второе рождение.В книге рассмотрены три наиболее популярных на сегодняшний день инструмента, предназначенных для создания виртуальных машин и управления ими: Virtual PC 2004 компании Microsoft, VMware Workstation от компании VMware и относительно «свежий» продукт — Parallels Workstation, созданный в компании Parallels.
Книга содержит подробные сведения о таких недокументированных или малоизвестных возможностях Windows XP, как принципы работы с программами rundll32.exe и regsvr32.exe, написание скриптов сервера сценариев Windows и создание INF-файлов. В ней приведено описание оснасток, изложены принципы работы с консолью управления mmc.exe и параметрами реестра, которые изменяются с ее помощью. Кроме того, рассмотрено большое количество средств, позволяющих выполнить тонкую настройку Windows XP.Эта книга предназначена для опытных пользователей и администраторов, которым интересно узнать о нестандартных возможностях Windows.
Реестр Windows является важной частью операционной системы, во многом определяющей ее работу. Изучив приведенный в этой книге материал, вы научитесь редактировать реестр Windows Vista по своему усмотрению, а также освоите многочисленные приемы оптимизации содержащихся в нем настроек операционной системы.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Iptables Tutorial 1.1.19Автор: (C) Oskar AndreassonCopyright (C) 2001-2002 by Oskar AndreassonПеревод: (C) Андрей КиселевПоследнюю версию документа можно получить по адресу: http://iptables-tutorial.frozentux.netfb2-документ отформатирован с использованием большого количества тегов и . Чтобы в «читалке» (в частности, Haali Reader) текст выглядел «красиво», настройте свойства соотвествующих стилей (emphasis и strong), изменив, например, их цвета или начертания. (прим. автора fb2-документа)
Курс лекций, включенных в брошюру, знакомит читателя с популярными свободными программами и системами, полезными при преподавании информатики в средней школе. В обзор вошли основы открытых операционных систем, сведения о пакете «офисных» программ OpenOffice.org, коммуникационном пакете Mozilla, графическом редакторе GIMP, современных графических средах GNOME и KDE и других программах.Для преподавателей информатики и методистов, а также для студентов и аспирантов соответствующих специальностей.© 2002-3, Максим Отставнов.© 2002, Андрей Добровольский (раздел 3.1).Использован текст лекций, публиковавшихся автором в приложении к газете «Первое сентября» «Информатика» (http://inf.1september.ru) в 2002-3 г., материалы брошюры «Прикладные свободные программы в школе» (М.: 2003 г.), а также фрагменты статей, ранее публиковавшихся в журналах «Компьютерра» и «Домашний компьютер».Материалы, представленные в этой книге, также доступны в Интернет на странице www.otstavnov.com/fsft на условиях Свободной лицензии ГНУ на документацию (GNU FDL)