- •Оглавление
- •Классификация операционных систем
- •2. Структура, состав и назначение подсистем типовой системы программирования (Visual Studio или Delphi).
- •4. Взаимодействие программ — интеграция приложени: технология com — основные принципы, типы и правила построения программных интерфейсов, достоинства и недостатки.
- •5. Объект, сервер, клиент. Схема взаимодействия клиента и объекта com. Объект
- •Интерфейс
- •Интерфейс iUnknown
- •Библиотека сом
- •Создание объекта
- •6. Технологи обмена сообщениями: проблемы интеграции приложений, основные принципы, шаблоны, достоинства и недостатки.
- •7. Принципы построения корпоративных информационных систем (кис), их типы и проблемы. Основные проблемы реализации архивных хранилищ. К основным принципам построения кис относятся:
- •Корпоративные информационные системы можно также разделить на два класса: финансово-управленческие и производственные.
- •Также различают виды кис, такие как заказные (уникальные) и тиражируемые кис.
- •Основные проблемы реализации архивных хранилищ
- •8. Синхронизация: семафоры, мьютексы, барьеры, взаимоблокировки — реентерабельность.
- •Семафоры
- •Мьютексы
- •Барьеры
- •Взаимоблокировки
- •Реентерабельность
- •Синхронизация при низком irql
- •Механизмы синхронизации режима ядра
- •Объекты диспетчера ядра
- •Условия освобождения различных синхронизирующих объектов
- •10. Основные системные механизмы Windows и их назначение.
- •Диспетчеризация ловушек
- •Диспетчер объектов
- •Синхронизация
- •Системные рабочие потоки
- •Глобальные флаги Windows
- •Трассировка событий ядра
- •Объекты исполнительной системы
- •Структура объектов
- •Методы объекта
- •Описатели объектов и таблица описателей, принадлежащая процессу
- •Внутренние объекты, объекты исполнительной системы (executive objects)
- •Хранение объектов в памяти
- •Имена объектов
- •Стандартные каталоги объектов
- •Пространство имен сеанса
- •Диспетчеризация 32-разрядных системных сервисов
- •Диспетчеризация 64-разрядных системных сервисов
- •Диспетчеризация системных сервисов режима ядра
- •Прерывания dpc или диспетчеризации
- •Прерывания apc
- •Необработанные исключения
- •Трассировка событий ядра
- •17. Реестр Windows: назначение, организация, ключи, ульи, редактирование, достоинства и недостатки. Реестр
- •Логическая структура реестра
- •Структура реестра
- •Хранение реестра
- •18. Статическое и динамическое связывание, dll-библиотеки — назначение, структура. Статические и динамические библиотеки.
- •Основные этапы компьютерного моделирования
- •Виды алгоритмов
- •Основные этапы полного построения алгоритма.
- •Правильность алгоритма.
- •Реализация алгоритма.
- •Принципы эффективных алгоритмов.
- •Правила оформления текстов программ.
- •Архитектура программного обеспечения в качестве классического жизненного цикла системы — недостатки классического цикла.
- •Основные параметры при разработке архитектуры.
- •Примеры технологии проектирования пс (стратегии проектирования: водопадная, инкрементная, эволюционная, спиральная стратегии)
- •Понятие надежности по
- •Отказы, сбои, восстановление
- •Основные задачи технической диагностики
- •Показатели качества и надежности программных средств (iso 9126:1991)
- •Тестирование корректности определения и использования данных на маршрутах исполнения программы.
- •Основные типы
- •Средства разработки
- •Загрузка/выгрузка
- •Организация и точки входа
- •Диспетчер PnP
- •Структуры драйверов в ос
- •23. Администрирование программного обеспечения пк: принципы, задачи, документирование, регламентные работы — профилактика. Администрирование программного обеспечения пк
- •Принципы
- •Документирование
- •Регламентные работы — профилактика.
- •Средства разработки .Net-приложений
- •Корпоративные .Net-серверы и их краткие характеристики
- •Сервер Application Center
- •Реализация Web-ферм, кластеров
- •Exchange Server и его основные функции
2. Структура, состав и назначение подсистем типовой системы программирования (Visual Studio или Delphi).
Система программирования представляет собой совокупность средств разработки программ (языки программирования, текстовые редакторы, трансляторы, редакторы связей, библиотеки подпрограмм, утилиты и обслуживающие программы), обеспечивающих автоматизацию составления и отладки программ, подготовку соответствующей документации. Как правило, включает не эталонный вариант языка, а его версию, содержащую определенные упрощения иди расширения. Некоторые системы программирования могут поддерживать разработку программ на нескольких языках. Наиболее известные системы программирования для персональных компьютеров: Visual Studio, созданная фирмой Microsoft, поддерживающая языки программирования Бейсик, Java, C++; Delphi.
Типовая система программирования состоит из следующих компонент:
язык программирования – семантическая система описания алгоритмов или иных действий по обработке информации;
транслятор (интерпретатор или компилятор) – обработчик языка программирования, переводящий символические директивы на язык машинных кодов;
библиотека стандартных программ и функций – совокупность отлаженных программных модулей, вызываемых из пользовательской программы для выполнения стандартных действий;
средства трассировки (отладки), текстовый редактор и ряд других служебных утилит.
3. Взаимодействие приложений — реализация с помощью COM, ActiveX, обмена сообщениями (основные принципы). Причины возникновения большого числа таких технологий (в т.ч. LPC, DPC, APC) и имеющиеся проблемы. Краткая характеристика известных технологий организации взаимодействия ПО.
COM (Component Object Model) - это метод разработки программных компонентов, небольших двоичных исполняемых файлов, которые предоставляют необходимые сервисы приложениям, операционным системам и другим компонентам. Другими словами, COM определяет стандартный механизм, с помощью которого одна часть программного обеспечения предоставляет свои сервисы другой независимо от способа их реализации.
COM - это не язык программирования, а подход (спецификация) к созданию программ, обеспечивающий взаимодействие программ любых типов. Компоненты COM объединяются друг с другом для создания приложений или систем компонентов. Компоненты можно менять во время выполнения, без перекомпиляции или перекомпоновки приложения. COM - это основа, на которой построены такие технологии Microsoft, как ActiveX, DirectX и OLE.
Таким образом, ключевое слово при использовании COM - компонент. К компонентам обычно предъявляются следующие требования:
Компонент должен скрывать используемый язык программирования.
Компоненты должны распространяться в двоичной форме. Их необходимо поставлять уже скомпилированными, скомпонованными и готовыми к использованию.
Должна быть возможность модернизировать компоненты, не затрагивая уже существующих пользователей. Новые версии компонента должны работать как со старыми, так и с новыми клиентами.
Компоненты должны перемещаться по сети. Необходимо, чтобы компонент и использующая его программа могли выполняться внутри одного процесса, в разных процессах и на разных машинах.
ActiveX - технология создания приложений на основе СОМ. Спецификация управляющих элементов ActiveX определяет четыре основных аспекта их функционирования: обеспечение пользовательского интерфейса, обеспечение вызова методов управляющего элемента контейнером, посылка событий контейнеру, получение информации о свойствах среды контейнера и обеспечение доступа к свойствам управляющего элемента и их модификации.
Обмен сообщениями позволяет наладить асинхронное взаимодействие между слабо связанными приложениями. Передачу данных между интегрированными приложениями обеспечивает система обмена сообщениями. Основные концепции обмена сообщениями.
Как и большинство технологий, обмен сообщениями характеризуется несколькими базовыми концепциями (шаблонами):
Каналы. Приложения, объединенные с помощью технологии обмена сообщениями, передают данные по каналам сообщений . Изначально система обмена сообщениями не содержит каналов; они создаются по мере определения способов взаимодействия приложений.
Сообщения. Сообщение ⎯ это наименьшая единица данных, которая может быть передана по каналу сообщений. Следовательно, для передачи данных отправитель должен разбить их на пакеты, которые затем будут упакованы в сообщения и помещены в канал. Подобным образом получатель извлекает сообщения из канала и выделяет из них полезные данные. Система обмена сообщениями гарантирует доставку сообщений путем их повторной отправки.
Каналы и фильтры. В самом простом случае система обмена сообщениями доставляет сообщение непосредственно с компьютера отправителя на компьютер получателя. Однако во многих ситуациях необходима промежуточная обработка отправленного сообщения (например, преобразование формата или проверка соответствия некоторым правилам) прежде, чем оно будет принято получателем. Архитектура каналов и фильтров описывает процесс организации многоэтапной обработки сообщения с использованием каналов.
Маршрутизация. Для того чтобы достичь конечной точки назначения, сообщению может потребоваться пройти через несколько различных каналов. Иногда сложность маршрута сообщения приводит к тому, что отправитель не может определить канал, в который необходимо поместить сообщение для его доставки получателю. В этом случае отправитель передает сообщение маршрутизатору сообщений ⎯ программному компоненту, играющему роль фильтра в рамках архитектуры каналы и фильтры. Маршрутизатор определяет канал, в который необходимо поместить сообщение для его доставки конечному получателю или следующему маршрутизатору.
Преобразование. Зачастую отправитель и получатель используют различные форматы для представления одних и тех же данных. Для преобразования формата отправителя в формат получателя сообщение должно пройти через промежуточный фильтр, получивший название транслятор сообщений .
Конечные точки. Большинство приложений не обладает встроенными средствами интеграции. Для подключения таких приложений к системе обмена сообщениями необходим промежуточный код, учитывающий особенности приложения и системы обмена сообщениями. Этот код является совокупностью конечных точек сооб щения , позволяющих приложению отправлять и принимать сообщения.
Появление подобных технологий (в т.ч. LPC(local procedure call), DPC(англ. Deferred procedure call — отложенный вызов процедуры) , APC(asynchronous procedure call)) обусловлено развитием многозадачных ОС и многопоточных процессов.
