Кафедра информационно-измерительных систем
и физической электроники


english version


КИИСиФЭ 40 лет!

Главная
История кафедры
Преподаватели и сотрудники
Научная деятельность
Учебная деятельность
Публикации
Конференции
Сотрудничество
Лаборатории
Методические пособия
Доска объявлений
Абитуриентам

Физико-технический институт
НОЦ "Плазма"
Веб-ресурсы ПетрГУ
Петрозаводский университет

185910, Республика Карелия,
г. Петрозаводск, ПетрГУ,
ул. Университетская, 10А,
каб. 111
телефоны
dfe@petrsu.ru
Подписка на новости
(введите свой e-mail
и нажмите Enter)

Разработка беспроводных сетей датчиков nanoLOC

The Optical Society OSA

ITMULTIMEDIA.RU


"ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ИЗМЕРИТЕЛЬНЫХ ПРОЦЕССОВ"


  1. Основные понятия
    • Информационные процессы. Измерительный процесс как вид информационного процесса
    • Типовая схема измерительного комплекса. Его состав и структура. Объект измерений, датчики, приводы, устройства сопряжения.
    • Способы обмена данными между ЭВМ и внешними устройствами
    • Способы и средства сопряжения ЭВМ с датчиками и исполнительными механизмами
  2. Типовые архитектуры (несетевого) программного обеспечения для измерительных процессов
    • Понятие операционной системы (ОС). Ее основные функции.
    • Доступ к аппаратуре ЭВМ и работа с прерываниями.
    • ПО без операционной системы. Встраиваемые системы.
    • Непосредственный доступ к аппаратуре без использования драйверов в различных ОС.
    • Доступ к аппаратуре с использованием средств ОС. Драйвера устройств.
  3. Языки программирования
    • Понятие языка программирования. Процесс создания программы. Препроцессоры, компиляторы, компоновщики, отладчики. Библиотеки подпрограмм. Классификация языков программирования. Роль и место различных языков при создании ПО для измерительных процессов. Преимущества и недостатки различных типов языков.
    • Языки ассемблера. Области применения языков ассемблера.
    • Языки структурного программирования, концепции, области применения.
    • Объектно-ориентированные языки. Основные концепции и понятия, области применения.
    • Событийно-управляемое программирование.
    • Языки описания сценариев, области применения.
    • Графические языки программирования.
    • Человеко-машинный интерфейс. Графический интерфейс и интерфейс командной строки, их сравнительный анализ, преимущества и недостатки.
  4. Структуры данных и алгоритмы работы с ними
    • Понятие типа в языках программирования. Скалярные и векторные типы данных. Типы, определяемые пользователем. Указатели и работа с ними. Динамическая память.
    • Структуры. Применение структур.
    • Массивы. Применение массивов в ПО для измерений. Прием "двойного буфера".
    • Битовые поля, их применение. Битовые операции. Сброс, установка и инвертирование битов по маске.
    • Связанные списки. Операции со списками (создание, удаление, добавление элемента в список, удаление элемента из списка, прохождение по списку, поиск элемента в списке). Применение списков.
    • Деревья. Операции с деревьями. Прохождение дерева. Добавление узлов.
    • Стеки. Операции со стеком (создание, удаление, помещение данных в стек, извлечение данных из стека, неразрушающее извлечение данных). Применение стеков.
  5. Удаленный доступ к измерительным комплексам. Измерительные сети
    • Компьютерные сети. Сетевые протоколы. Модель OSI. Семейство протоколов TCP/IP. Технология клиент-сервер.
    • Типовые архитектуры ПО для удаленного доступа к измерительным комплексам.
    • Разработка собственных прикладных протоколов на базе транспортных.
    • Использование стандартных прикладных протоколов. Возможности использования современных WEB-технологий для организации удаленного доступа к измерительным комплексам. Расширения WEB-серверов. CGI интерфейс. ISAPI интерфейс. Сервлеты.
  6. Периферийные устройства на шинах ISA и PCI
    • Устройство шин ISA и PCI. Временные диаграммы циклов шины.
    • Обмен данными с устройствами на шинах ISA и PCI в различных операционных системах.
  7. Разработка драйверов устройств.
    • Использование языков ассемблера для разработки программного обеспечения.
    • Ассемблер процессоров i80x86, мнемоники Intel и AT&T.
    • Архитектура ОС MSDOS. Структура драйверов для MSDOS.
    • Архитектура ОС Windows 95/98/NT/2000/XP. Драйверы устройств в ОС Windows 95/98/NT/2000/XP.
    • Архитектура ОС Linux. Понятие процесса и нити. Режимы работы процессора. Пользовательское пространство и пространство ядра. Модули ядра. Драйверы устройств. User-space драйверы.
    • Разработка драйверов устройств для ОС Linux. Типы драйверов в ОС Linux. Драйверы символьных и блочных устройств. Драйверы сетевых интерфейсов. Структура драйвера символьного устройства. VFS. Внутрение интерфейсы ядра. Регистрация устройств и снятие их с регистрации. Проверка доступности аппаратных ресурсов (портов ввода-вывода, областей памяти, линий прерывания), резервирование и освобождение ресурсов. Запросы на использование памяти. Работа с прерываниями. Вывод на консоль. Чтение из пространства памяти прикладного процесса. Запись в пространство памяти прикладного процесса. Работа с аппаратурой на шинах ISA и PCI. Работа со временем. Глобальные переменные ядра. Вспомогательные макроопределения.

Рекомендуемая литература

  1. Зубков С.В. Assembler для Dos, Window и Linux.- 2-е изд. испр. и доп.- М.: ДМК, 2000. - 608 с.: ил.
  2. Alessandro Rubini, Jonathan Corbet. Linux Device Drivers. 2-nd Edition. O'Reily.

Составил ст. преподаватель КИИСиФЭ Жиганов Е.Д.

Last revised November 20, 2003


Последнее обновление
21.07.2009

Поддержка: Lab 127 team

Дизайн: студия "PetroL@B"