
- •Вопросы к государственному междисциплинарному экзамену по специальности
- •230201.65 «Информационные системы в технике и технологиях»
- •Информатика
- •1. Представления информации в вычислительных системах. Позиционные и непозиционные системы исчисления.
- •2. Представление чисел с фиксированной и плавающей запятой. Операции над числами с плавающей запятой.
- •3. Алгебраическое представление двоичных чисел. Прямой, дополнительный и обратный коды.
- •4. Арифметические операции в двоичной системе счисления.
- •5. Восьмеричная, шестнадцатеричная и двоично–десятичные системы счисления.
- •Перевод чисел из двоичной системы в шестнадцатеричную
- •6. Логические основы построения компьютера.
- •7. Элементы алгебры логики. Выполнение логических операций на компьютере.
- •8.Логический синтез вычислительных схем.
- •9. Общие принципы построения персональных компьютеров.
- •10. Структурная схема и основные компоненты персонального компьютера.
- •11. Функциональная и структурная организация компьютера Общие принципы функциональной и структурной организации эвм
- •12. Основные типы вычислительных процессов.
- •13. Основные принципы и приемы процедурного программирования.
- •14. Основные принципы и приемы объектно-ориентированного программирования.
- •15. Структурное программирование. Принцип локализации имен. Модульное построение программ.
- •16. Понятие рекурсии. Прямая и косвенная рекурсии.
- •17. Структура типов данных языков программирования.
- •18. Распределение памяти под объекты программы. Статическая и динамическая память.
- •19. Списковые динамические структуры. Стеки. Деки. Очереди. Бинарные деревья.
- •Прикладное программирование
- •1С: Предприятие как проблемно-ориентированная прикладная система. Подсистемы и компоненты среды 1с: Предприятие.
- •Понятие конфигурации 1с: Предприятия. Типы данных. Иерархия объектов. Агрегатные и подчиненные объекты. Типы значений объектов конфигурации.
- •Виды программных модулей 1с: Предприятия. Понятие контекста. Глобальный контекст задачи и локальный контекст модуля.
- •Справочники, документы и журналы документов среды 1с: Предприятие.
- •Подсистема «Оперативный учет» среды 1с: Предприятие. Понятие регистра. Виды регистров.
- •Точка актуальности итогов в среде 1с: Предприятие и ее связь с последовательностями и движениями регистров.
- •Запросы к данным в среде 1с: Предприятие.
- •Подсистема «Расчет» среды 1с: Предприятие. Понятие вида расчета. Журналы расчетов.
- •Подсистема «Управление распределенной информационной базой» среды 1с: Предприятие.
- •Администрирование в среде 1с: Предприятие. Пользовательские интерфейсы и права пользователя.
- •Информационные основы обработки данных
- •Базы данных и системы управления базами данных. Роль и место банков данных в информационных системах.
- •Уровни представления данных: концептуальный, логический, физический.
- •Понятие модели данных. Иерархическая, сетевая, реляционная модели данных, их типы структур, основные операции и ограничения.
- •Основные понятия реляционной модели данных: отношение, экземпляр, атрибут. Объектные и связные отношения. Операции над отношениями.
- •Нормализация отношений в реляционной базе данных. Нормальные формы.
- •Инфологическое проектирование базы данных.
- •Программная реализация бд и субд.
- •Глава 2. Разработка базы данных по рынку бытовой химии.
- •Эксплуатация системы: наполнение базы данных реальными данными, поддержание
- •Пользователи банков данных. Преимущества централизованного управления данными. Архитектура банка данных.
- •Строение пакета субд. Компиляция и интерпретация программ.
- •Многопользовательские системы. Файл-серверная и клиент-серверная технологии. Трехзвенная архитектура.
- •2. Файл-серверная архитектура программы.
- •Операционные системы
- •1.Принципы построения операционных систем (ос), вычислительный процесс и его реализация с помощью ос; основные функции ос.
- •4.Сетевые ос и протоколы передачи информации, организация управления доступом и защиты ресурсов ос
- •5.Основные механизмы безопасности: средства и методы аутентификации в ос, модели разграничения доступа, организация и использование средств аудита; администрирование ос.
- •6.Классификация вычислительных сетей. Одноранговая сеть. Сети с централизованным управлением.
- •7.Сетевые компоненты ос семейства Windows. Сетевые протоколы. Сетевые клиенты.
- •Организация общего доступа к сетевому ресурсу.
- •Принципы управления ресурсами в операционной системе; управление вычислительными процессами, вводом-выводом, реальной памятью; управление виртуальной памятью. Управление процессами
- •Функции базовой подсистемы ввода-вывода
- •Физическая организация памяти компьютера
- •Функции системы управления памятью
- •Простейшие схемы управления памятью
- •Понятие виртуальной памяти
- •11.Состояния процессов, наследование ресурсов, тупиковые ситуации, обработка исключений, сохранение и восстановление процессов
- •12.Операции над процессами. Pcb и контекст процесса. Одноразовые операции. Многоразовые операции. Переключения контекста.
- •13.Планирование заданий пользователей. Критерии планирования и требования к алгоритмам. Вытесняющее и невытесняющее планирование.
- •Взаимодействие процессов в ос, синхронизация процессов, обмен сообщениями. Взаимодействие процессов
- •Средства межпроцессного взаимодействия
- •Динамические, последовательные и параллельные структуры программ. Логическая организация механизма передачи информации. Нити исполнения.
- •Информационные сети
- •1. Типы вычислительных сетей.
- •2. Стандартизация в компьютерных сетях. Понятие протокола и интерфейса.
- •Сетевые интерфейсы:
- •3. Эталонная модель взаимодействия открытых систем – osi. Графическое представление модели.
- •Взаимодействие уровней
- •4. Прохождение запроса между двумя узлами сети.
- •5. Функции и сетевые задачи уровней модели osi. Прикладной уровень (Application layer)
- •Уровень представления (Presentation layer)
- •Сеансовый уровень (Session layer)
- •Транспортный уровень (Transport layer)
- •Сетевой уровень (Network layer)
- •Канальный уровень (Data Link layer)
- •Физический уровень (Physical layer)
- •6. Сетевые топологии.
- •7. Строение сетей Ethernet. Домен коллизий в сетях Ethernet.
- •8. Повторители. Мосты. Концентраторы. Коммутаторы. Маршрутизаторы. Повторитель
- •Различия между коммутаторами и мостами
- •9. Сети Token Ring. Метод доступа к разделяемой среде для сетей Token Ring .
- •10. Технология Fast Ethernet.
- •11. Технология Gigabit Ethernet.
- •12. Технология 100 vg-AnyLan. Суть метода доступа - приоритетные требования в технологии 100 vg-AnyLan.
- •13. Технология fddi. Особенности метода доступа fddi.
- •14. Задачи сетевого уровня открытых систем osi. Понятие «Подсеть», «Сеть» и «Составная сеть».
- •15. Многоуровневая структура стека tcp/ip. Уровень межсетевого взаимодействия, основной (транспортный) уровень, прикладной уровень, уровень сетевых интерфейсов.
- •Физический уровень
- •Канальный уровень
- •Сетевой уровень
- •Транспортный уровень
- •Прикладной уровень
- •16. Механизм гнезд и мультиплексирование соединений.
- •17. Типы адресов стека tcp/ip. Локальные адреса. Ip – адреса. Символьные доменные имена.
- •Корпоративные информационные системы
- •Структура корпоративной ис. Функциональные компоненты кис. Классификация кис.
- •Структура корпораций и предприятий; архитектура, эксплуатация и сопровождение информационных систем ис.
- •Понятие и структура erp – системы. Пример erp – систем.
- •Понятие и структура olap – системы. Архитектура olap – приложений.
- •Понятие гиперкуба. Метки. Иерахии и уровни. Срезы гиперкуба.
- •Операции манипулирования данными в гиперкубе. Агрегация данных в гиперкубе.
- •Разреженный гиперкуб данных. Бинарное представление гиперкуба данных. Выборка данных из гиперкуба.
- •Карта заполненности гиперкуба данных. Одномерная, двумерная и трехмерная проекции карты. Организация доступа к данным в гиперкубе. Агрегация разреженного гиперкуба данных.
- •Многомерное хранение данных. Сравнение оперативных и аналитических ис. Концепция хранилища данных.
- •Компоненты хранилища данных. Проблемы интеграции данных в информационном хранилище. Реализация хранилищ данных. Витрины данных.
- •Понятие Data Mining. Приложения Data Mining.
- •Разведочный анализ данных и его методы. Типы закономерностей, используемых Data Mining.
- •Классификация систем Data Mining.Нейронные сети в Data Mining.
- •Виды команд сетевых субд. Виды блокировки файлов и записей. Обработка ошибок сетевыми приложениями. Тестирование сетевого приложения.
- •Буферизация редактирования данных. Обновление данных с использованием буферизации. Работа с транзакциями.
- •Основные понятия web-технологий.
- •Сервисы Интернет.
- •Электронная почта
- •Списки рассылки
- •Система гипермедиа www
- •Сервисы irc, icq и т.П.
- •3. Служба dns Отображение символьных адресов на ip-адреса: служба dns
- •Серверные языки программирования
- •Технологии Java. Особенности версий jdk.
- •Виды Java-приложений.
- •Принципы ооп в Java-технологиях.
- •Обзор операторов языка программирования Java.
- •Обработка исключений в Java.
- •Событийные модели в Java.
- •Программирование Java-апплетов
- •Принципы программирования оконных приложений на Java.
- •Элементы web-дизайна. Основные понятия, влияющие факторы.
- •Системы навигации сайта.
- •Понятие хостинга
- •1. Типы и преобразование данных в клиентских сценариях.
- •2. Типы данных в php-приложениях
- •3. Типы данных в Java-приложениях.
- •4. Валидаторы в web-приложениях. Разновидности.
- •5. Клиентские валидаторы в web-приложениях.
- •6. Серверные валидаторы в web-приложениях.
- •7. Основные понятия языков разметки. Формы.
- •8. Технология css.
- •9. Организация взаимодействия страниц во фреймовой структуре.
- •10. Плавающие фреймы (iFrame) на web-страницах
- •11. Понятие о серверных сценариях web-приложений.
- •Организация авторизованного доступа в web-приложениях.
- •Сессионные переменные в web-приложениях.
- •Представление о стеке протоколов tcp/ip.
- •Интегрированные среды разработки web-приложений.
- •Модель "клиент-сервер" для web-приложений.
- •Клиентские сценарии web-приложений.
- •Обработка событий в клиентских сценариях web-приложений.
- •Программирование типовых функциональных блоков серверных сценариев php-web-приложений.
- •9.Организация взаимодействия серверных сценариев с субд с использованием php и MySql.
- •Обзор среды разработки Java-приложений на примере NetBeans.
- •Этапы разработки Java-приложений в среде NetBeans.
- •Структура справочной системы Java. Утилита javadoc.
- •3. Основные понятия теории графов, граф, подграф, сеть, дерево, связность. Операции над графами, их свойства.
- •4. Нахождение минимального и максимального пути, задача о максимальном потоке.
- •5. Основные понятия логики высказываний, методы представления логических функций, логические операции, их свойства, конъюнктивные и дизъюнктивные нормальные формы.
- •Элементарные функции алгебры логики
- •Фал одного аргумента
- •Инверсия
- •Конъюнкция
- •Дизъюнкция
- •Логическая равнозначность
- •Импликация
- •Эквивалентности
- •Сложение по mod 2
- •Правило де Моргана
- •Понятие функциональной полноты фал
- •Минимизация фал и ограничения при ее рассмотрении
- •Понятие покрытия
- •Метод минимизации фал по Квайну
- •6. Общезначимость, противоречивость, выводимость, теоремы о выводимости, метод резолюций для логики высказываний.
- •Метод резолюций для логики высказываний
- •7. Основные понятия логики предикатов первого порядка, кванторы, предваренные нормальные формы, избавление от кванторов.
- •8. Выводимость в логике предикатов первого порядка, унифицирующие подстановки, метод резолюций для логики предикатов первого порядка. Метод резолюций для логики предикатов первого порядка
- •9. Основные понятия теории автоматов, виды автоматов, методы представления автоматов, абстрактный и структурный автомат. Метод синтеза автоматов по граф-схеме алгоритма.
- •10. Понятие модели, алгоритмический и функциональный подходы к моделированию. Виды моделей, виды математических моделей, основные этапы моделирования.
- •1. Основные понятия и определения теории надежности.
- •2. Математическая модель функционирования информационных систем
- •3.Способы описания надежности функционирования информационных систем.
- •Методы анализа надежности. Топологический метод анализа надежности.
- •Анализ надежности восстанавливаемых систем.
- •Факторы, влияющие на надежность информационных систем.
- •Классический метод оптимизации судовых систем. Метод множителей Лагранжа.
- •Градиентные методы оптимизации судовых систем.
- •Оптимизация судовых систем на основе симплексных методов с постоянным и переменным шагами.
- •Оптимизация судовых систем на основе метода деформированного многогранника.
- •Оптимизация судовых систем на основе метода скользящего допуска.
- •Задачи многокритериальной оптимизации. Выбор оптимальных решений на основе безусловного и условного критериев качества.
- •Формирование критериев качества на основе экспертных оценок. Методы ранга, парных сравнений и непосредственной оценки.
- •Определение полиномиальных моделей судовых систем на основе метода наименьших квадратов. Система нормальных уравнений.
- •Матричная форма системы нормальных уравнений. Информационная матрица.
- •Исследование судовых систем на основе полного факторного эксперимента.
- •Исследование судовых систем на основе планов второго порядка.
- •Исследование судовых систем на основе планов третьего порядка.
- •Ранжирование параметров судовых систем на основе дробного факторного эксперимента.
- •Ранжирование параметров судовых систем на основе метода случайного баланса.
- •Определение программной системы.
- •Аксиоматика сложных систем.
- •Методология программирования: каскадная, итерационная, спиральная.
- •4. Основные задачи поддержки процесса разработки программных систем: методическая, организационная, инструментальная, кадровая, технологическая.
- •5. Стратегии «направленности» разработки программных систем: «сверху вниз», «снизу вверх», «изнутри к границам», «от границ внутрь».
- •6. Основные понятия программного обеспечения. Классификация программного обеспечения.
- •7. Повышение надежности программного обеспечения введением избыточности: информационной, программной, временной.
- •8. Принципы и методы разработки надежного программного обеспечения: предупреждения, обнаружения, исправление ошибок, обеспечение устойчивости к ошибкам.
- •9. Основные определения, связанные с обнаружением и исправлением ошибок: тестирование, доказательство, контроль, испытание, аттестация, отладка.
- •10. Структурное или модульное программирование. Стиль разработки, правила написания программ.
- •11. Преобразование неструктурированных алгоритмов к структурному виду: дублирование блоков, введение переменной состояния.
- •12. Понятия модульности, связанности, сцепления.
Взаимодействие процессов в ос, синхронизация процессов, обмен сообщениями. Взаимодействие процессов
Средства межпроцессного взаимодействия
( IPC - Inter-Process Communications)
Конвейеры
Конвейер представляет собой буфер в оперативной памяти, поддерживающий очередь байт по алгоритму FIFO
Системный вызов pipe позволяет двум процессам обмениваться неструктурированным потоком байт через этот буфер, который выглядит как безымянный файл, в который можно писать и читать, осуществляя тем самым обмен данными.
конвейеры, создаваемые системным вызовом pipe, иногда называют программными конвейерами (software-pipes).
Именованные конвейеры
Именованные конвейеры представляют собой развитие механизма обычных конвейеров. Такие конвейеры имеют имя, которое является записью в каталоге файловой системы ОС, поэтому они пригодны для обмена данными между двумя произвольными процессами или потоками этих процессов.
Именованные конвейеры основаны на файловой системе, в отличии от обычных, но используют файловую систему только для хранения имени конвейера в каталоге, а данные между процессами передаются через буфер в оперативной памяти и в случае программного конвейера.
Очереди сообщений
Механизм очередей сообщений похож на механизм конвейеров с тем отличием, что он позволяет процессам и потокам обмениваться структурированными сообщениями.
Очереди сообщений являются глобальными средствами коммуникаций для процессов ОС, как и именованные конвейеры, так как каждая очередь имеет в пределах ОС уникальное имя
Разделяемая память
Разделяемая память представляет собой сегмент физической памяти, отображенной в виртуальное адресное пространство двух или более процессов.
Механизм разделяемой памяти поддерживается подсистемой виртуальной памяти, которая настраивает таблицы отображения адресов для процессов, запросивших разделение памяти, так что одни и те же адреса некоторой области физической памяти соответствуют виртуальным адресам разных процессов.
Специфические средства межпроцессного обмена в конкретных ОС
Динамические, последовательные и параллельные структуры программ. Логическая организация механизма передачи информации. Нити исполнения.
Логическая организация механизма передачи информации
Могу ли я использовать средство связи непосредственно для обмена информацией сразу после создания процесса или первоначально необходимо предпринять определенные действия для инициализации обмена? Например, для использования общей памяти различными процессами потребуется специальное обращение к операционной системе, которая выделит необходимую область адресного пространства. Но для передачи сигнала от одного процесса к другому никакая инициализация не нужна. В то же время передача информации по линиям связи может потребовать первоначального резервирования такой линии для процессов, желающих обменяться информацией.
К этому же вопросу тесно примыкает вопрос о способе адресации при использовании средства связи. Если я передаю некоторую информацию, я должен указать, куда я ее передаю. Если я желаю получить некоторую информацию, то мне нужно знать, откуда я могу ее получить.
Различают два способа адресации: прямую и непрямую. В случае прямой адресации взаимодействующие процессы непосредственно общаются друг с другом, при каждой операции обмена данными явно указывая имя или номер процесса, которому информация предназначена или от которого она должна быть получена. Если и процесс, от которого данные исходят, и процесс, принимающий данные, указывают имена своих партнеров по взаимодействию, то такая схема адресации называется симметричной прямой адресацией. Ни один другой процесс не может вмешаться в процедуру симметричного прямого общения двух процессов, перехватить посланные или подменить ожидаемые данные. Если только один из взаимодействующих процессов, например передающий, указывает имя своего партнера по кооперации, а второй процесс в качестве возможного партнера рассматривает любой процесс в системе, например ожидает получения информации от произвольного источника, то такая схема адресации называется асимметричной прямой адресацией.
При непрямой адресации данные помещаются передающим процессом в некоторый промежуточный объект для хранения данных, имеющий свой адрес, откуда они могут быть затем изъяты каким-либо другим процессом. Примером такого объекта может служить обычная доска объявлений или рекламная газета. При этом передающий процесс не знает, как именно идентифицируется процесс, который получит информацию, а принимающий процесс не имеет представления об идентификаторе процесса, от которого он должен ее получить.
При использовании прямой адресации связь между процессами в классической операционной системе устанавливается автоматически, без дополнительных инициализирующих действий. Единственное, что нужно для использования средства связи, – это знать, как идентифицируются процессы, участвующие в обмене данными.
При использовании непрямой адресации инициализация средства связи может и не требоваться. Информация, которой должен обладать процесс для взаимодействия с другими процессами, – это некий идентификатор промежуточного объекта для хранения данных, если он, конечно, не является единственным и неповторимым в вычислительной системе для всех процессов.
Нити исполнения
В свое время внедрение идеи мультипрограммирования позволило повысить пропускную способность компьютерных систем, т.е. уменьшить среднее время ожидания результатов работы процессов. Но любой отдельно взятый процесс в мультипрограммной системе никогда не может быть выполнен быстрее, чем при выполнении в однопрограммном режиме на том же вычислительном комплексе. Тем не менее, если алгоритм решения задачи обладает определенным внутренним параллелизмом, мы могли бы ускорить его работу, организовав взаимодействие нескольких процессов
Введем новую абстракцию внутри понятия “процесс” – нить исполнения или просто нить (в англоязычной литературе используется термин thread). Нити процесса разделяют его программный код, глобальные переменные и системные ресурсы, но каждая нить имеет свой собственный программный счетчик, свое содержимое регистров и свой собственный стек. Теперь процесс представляется как совокупность взаимодействующих нитей и выделенных ему ресурсов. Процесс, содержащий всего одну нить исполнения, идентичен процессу в том смысле, который мы употребляли ранее. Для таких процессов мы в дальнейшем будем использовать термин “традиционный процесс”. Иногда нити называют облегченными процессами или мини-процессами, так как во многих отношениях они подобны традиционным процессам. Нити, как и процессы, могут порождать нити-потомки, правда, только внутри своего процесса, и переходить из состояния в состояние. Состояния нитей аналогичны состояниям традиционных процессов. Из состояния рождение процесс приходит содержащим всего одну нить исполнения. Другие нити процесса будут являться потомками этой нити прародительницы. Мы можем считать, что процесс находится в состоянии готовность, если хотя бы одна из его нитей находится в состоянии готовность и ни одна из нитей не находится в состоянии исполнение. Мы можем считать, что процесс находится в состоянии исполнение, если одна из его нитей находится в состоянии исполнение. Процесс будет находиться в состоянии ожидание, если все его нити находятся в состоянии ожидание. Наконец, процесс находится в состоянии завершил исполнение, если все его нити находятся в состоянии завершили исполнение. Пока одна нить процесса заблокирована, другая нить того же процесса может выполняться. Нити разделяют процессор так же, как это делали традиционные процессы, в соответствии с рассмотренными алгоритмами планирования.
Поскольку нити одного процесса разделяют существенно больше ресурсов, чем различные процессы, то операции создания новой нити и переключения контекста между нитями одного процесса занимают существенно меньше времени, чем аналогичные операции для процессов в целом. Предложенная нами схема совмещения работы в терминах нитей одного процесса получает право на существование.
Различают операционные системы, поддерживающие нити на уровне ядра и на уровне библиотек. Все выше сказанное справедливо для операционных систем, поддерживающих нити на уровне ядра. В них планирование использования процессора происходит в терминах нитей, а управление памятью и другими системными ресурсами остается в терминах процессов. В операционных системах, поддерживающих нити на уровне библиотек пользователей, и планирование процессора, и управление системными ресурсами осуществляется в терминах процессов. Распределение использования процессора по нитям в рамках выделенного процессу временного интервала осуществляется средствами библиотеки. В таких системах блокирование одной нити приводит к блокированию всего процесса, ибо ядро операционной системы ничего не знает о существовании нитей. По сути дела, в таких вычислительных системах просто имитируется наличие нитей исполнения.