- •Дисциплина «Системное программирование» Теоретические вопросы
- •Операционные системы: история
- •Системные вызовы управления терминалом
- •Операционные системы: назначение и основные функции
- •Управление процессами в операционных системах
- •Конкуренция процессов
- •Базовые примитивы доступа к файлам
- •Файлы с несколькими именами
- •Базовые примитивы для работы с процессами.
- •Каталоги, файловые системы и специальные файлы
- •Обработка сигналов в unix Нормальное и аварийное завершение
- •Примитивы межпроцессного взаимодействия: программные каналы.
- •Дополнительные средства межпроцессного взаимодействия в unix.
- •14. Напишите аналог команды ls –l
- •15. Напишите «часы», выдающие текущее время каждые 3 секунды
- •16. Напишите программу, которая ожидает ввода с клавиатуры в течение 10 секунд.Если ничего не введено – печатает «Нет ввода», иначе – «Спасибо».
- •17. Используя файловую систему /proc, получите информацию об открытых всеми процессами файлах
- •18. Напишите функцию mysleep(n), задерживающую выполнение программы на n секунд.
- •19. Составьте программу вывода строк файла в инверсном отображении
- •20. Создайте аналог команды df
- •21. Напишите программу создания и записи образов дискет
- •22. Напишите функции включения и выключения режима эхо-отображения набираемых на клавиатуре символов
- •23. Напишите программу для запуска команды ls в качестве дочернего процесса
- •24. Создайте два процесса, взаимодействующих через программный канал.
- •25.Создайте аналог команды sync
- •Понятие алгоритма. Свойства, способы задания, основные структуры алгоритма. Понятие о структурном подходе к разработке алгоритма.
- •Алгоритмическая структура цикл. Типы циклов. Способы управления циклами. Итерационные циклы. Простые и вложенные циклы.
- •Типы данных в языке Паскаль. Действия над ними. Стандартные типы данных и типы пользователя.
- •Операторы циклов в языке Паскаль. Примеры использования.
- •Цикл с предусловием
- •5.Условный оператор и оператор выбора вариантов в языке Паскаль. Структурная схема. Примеры использования.
- •6 Структурные типы данных. Массивы. Записи, вариантные, вложенные.
- •7.Обработка строковых данных в Паскале. Особенности использования.
- •8.Процедуры и функции в Паскале. Особенности использования.
- •Стандартные файлы и файлы пользователя в Паскале. Типы файлов. Процедуры и функции для работы с файлами.
- •10.Прямая и косвенная рекурсия. Особенности использования.
- •11.Структура языка Паскаль. Структура программ на языке Паскаль.
- •Модульное программирование. Стандартные модули. Назначение и использование.
- •Образцы решений задач
- •1. Написать программу для вычисления функции:
- •2. Сформировать двухмерный массив, состоящий из n X n элементов.
- •5. Задан текст s. Сколько раз в тексте встречается заданное слово (слова разделены пробелами)
- •Дисциплина «Основы баз данных и знаний»
- •1. Архитектура бд. Понятие 3-вой архитектуры бд. Ее преимущества. Внешний уровень. Концептуальный уровень. Внутренний уровень.
- •2. Классификация моделей данных.
- •3. Иерархическая модель. Преимущества и недостатки иерархических структур.
- •4. Сетевая модель данных.
- •5. Реляционная модель данных.
- •6. Нормализация. Пять нормальных форм.
- •7. Физические модели бд.
- •8. Файловые структуры. Файлы прямого доступа. Файлы последовательного доступа.
- •9. Индексные файлы. Индексно-прямые файлы. Индексно-последовательные файлы.
- •10. Распределенные субд. Распределенная обработка данных. Параллельные субд.
- •11. Преимущества и недостатки сурбд.
- •12 Правил Дейта для сурбд.
- •12. Объектно-ориентированные субд. Требования к оосубд.
- •13. Объектно-реляционные субд.
- •14. Структура языка sql.
- •15. Типы данных языка sql.
- •16. Создание схем, бд, таблиц операторами языка sql.
- •17. Индексация в субд. Типы индексов. Создание и удаление индекса операторами языка sql.
- •18. Редактирование данных в таблице бд операторами языка sql.
- •19. Построение запросов операторами языка sql.
- •20. Понятие агрегирующих функций.
- •21. Объединение таблиц. Построение многотабличных запросов операторами языка sql.
- •22. Субд Access. Понятия таблицы, запроса, формы, отчета, макроса.
- •Примеры решений задач
- •Дисциплина «Организация и функционирование эвм»
- •Характеристики жесткого диска.
- •2.Структура дискового сектора. Коды исправления ошибок ecc.
- •3.Назначение коэффициента чередования секторов и коэффициента перекоса головки.
- •4.Сравнительная характеристика интерфейсов жестких дисков.
- •5.Позиционирование магнитной головки. Виды сервосистем.
- •6.Кэширование диска. Виды кэша. (Кэш считывания, кэш со сквозной записью, кэш с отложенной записью и элеваторный кэш).
- •7.Форматирование жесткого диска. Физическое форматирование. Организация разделов на жестком диске.
- •8.Логическое форматирование. Таблица размещения файлов, ее виды.
- •9. Основная оперативная память. Динамическая память, принцип действия запоминающих ячеек. Архитектура динамической памяти, виды сигналов.
- •Типы динамической памяти. Асинхронная, синхронная память.
- •Модули памяти. Организация банков памяти.
- •12.Статическая память, ее разновидности. Кэш-память. Первичный и вторичный кэш.
- •13.Энергонезависимая память, типы памяти. Флэш-память.
- •14.Логическая структура памяти пэвм.
- •15.Сравнительная характеристика видов оптических дисков.
- •16.Сравнительная характеристика видов мониторов.
- •17.Текстовый и графический режим работы монитора. Формирование цвета.
- •18.Сравнительная характеристика видов принтеров.
- •«Теория автоматического управления»
- •Классификация сау
- •Связь входа и выхода. Способы построения моделей. Переходная функция и импульсная характеристика.
- •Типовые звенья линейных систем (усилитель, апериодическое звено, интегрирующее звено, колебательное звено, звено запаздывания).
- •4. Типовые звенья линейных систем (усилитель, апериодическое звено, интегрирующее звено, колебательное звено, звено запаздывания).
- •5. Частотные характеристики. Понятие лачх и лфчх.
- •6. Логарифмические частотные характеристики типовых линейных звеньев.
- •7. Структурные схемы и правила их преобразования.
- •8. Требования к системам автоматического управления (перечислить). Понятие точности управления.
- •9. Частотные критерии устойчивости. Критерий Найквиста.
- •10. Алгебраические критерии устойчивости. Критерий Гурвица. Критерий Вишнеградского.
- •11. Оценка качества системы. Запасы устойчивости.
- •12. Синтез регуляторов. Задачи синтеза
- •13. Синтез линейны непрерывных сау. Коррекция сау
- •14. Разновидности и свойства сау в зависимости от параметров синтеза.
- •15. Приведение задач тау к нулевым начальным условиям. Линеаризация математического описания системы.
- •16. Математические модели. Способы их построения. Линейность и нелиней-ность систем и моделей.
- •17. Преобразование произвольного сигнала линейным звеном
- •18. Интегральные оценки качества переходных процессов: линейные, квадра-тичные.
- •19. Типовые линейные законы регулирования. Виды регуляторов.
- •20. Расчет оптимальных параметров настройки регуляторов.
- •8.Характеристическое уравнение замкнутой системы
8.Процедуры и функции в Паскале. Особенности использования.
Важным принципом современного программирования является модульность. Преимущества такого подхода являются следующие: один и тот же фрагмент можно использовать многократно; маленькими фрагментами программу легче считать и отлаживать. В Паскале модульность реализуется за счет использования процедур и функций. Это относительно самостоятельные фрагменты программ оформленные специальным образом и имеющие имя. В простом варианте подпрограммы могут не содержать не параметров, ни описания параметров, а быть последовательностью операторов. (Procedure obmen begin work:=a[i]; a[i]:=a[j]; a[j]:=work; end;) Процедуры пишутся пользователем или содержатся в готовом наборе процедур (библиотечном модуле). Для вызова подпрограммы необходимо указать имя процедуры в операторе вызова или имя функции в выражении. Каждую процедуру или функцию необходимо описать в разделе описаний. Описать подпрограмму это значит: указать ее заголовок и тело. В заголовке объявляются имя программы и формальные параметры (если они есть). Для функции, кроме этого, определяется тип возвращаемого результата. За заголовком следует тело подпрограмм, которое состоит из раздела описаний и раздела операторов. В разделе описаний подпрограмм могут встречаться описания подпрограмм низшего уровня ,в тех, описания других подпрограмм и т. д. . Подпрограмма любого уровня имеет много имен. Констант, переменных, вложенных в неё подпрограмм низшего уровня. Все имена как бы не видны с наружи подпрограмм. Из основной программы можно обратится к процедурам А и В, но нельзя обратится ни к одной из вложенных в них подпрограмм (А1,А2,В1,В2). Подпрограмма как бы окружена полупрозрачными стенками. Снаружи подпрограммы мы не видим ее внутренности, но находясь внутри подпрограммы видно все. Любая подпрограмма может вызвать саму себя. Этот процесс называется рекурсией.
Процедура - это подпрограмма, в которой результат не обязательно окончательно рассчитанное значение. Процедура дает возможность заменить группу команд одной командой. Выполняется процедура только в момент обращения к ней. Обращение к процедуре называется вызовом процедуры. Вызвать процедуру можно из раздела операторов программы, из другой подпрограммы – процедуры или подпрограммы-функции. Для того, чтобы использовать процедуру, ее надо описать. Описывается процедура в тексте программы после раздела описания переменных. “Устройство” процедуры напоминает устройство программы. Она состоит из заголовка, раздела описаний и набора операторов, заключенного в операторные скобки begin…end. В общем виде описание процедуры выглядит так: procedure имя_процедуры (var параметр_1: тип_1; var параметр_2: тип_2; …..var параметр_N: тип_N); раздел описаний процедуры begin раздел операторов процедуры end;). Все переменные описанные в подпрограмме являются локальными и действуют только внутри подпрограммы. Связи между ними и объектами вызывающей программы. В подпрограмме можно использовать идентификаторы, описанные в вызывающей программе. Смысл и значение их ,и в вызывающей, и в процедуре одинаково. Такие идентификаторы называются глобальными.
Функции. Функция – это процедура особого характера, результатом работы которой является обязательное значение. Описание функции начинается со служебного слова function имя_функции (параметры): тип результат; function Geron (x:real):real; . Список параметров может отсутствовать. Структура функций аналогична структуре программы. В разделе описаний функций могут содержаться описание других подпрограмм. Таких описаний может быть несколько. В теле функций должен быть оператор присваивания, в левой части которой имя функции, а в правой – выражение. Обращение к функции выполняется путем указания ее имени в составе какого-либо выражения. Имя функции в вызывающей программе может появится только в правой оператора присваивания. Возможности функции ограничены. При создании процедур и функций преследуют следующие цели: 1)разбиение больших программ на более маленькие по объему и сложности; 2) уменьшение объема программы за счет многократного использования подпрограмм; 3) создание универсальных блоков программ пригодных для использования в др. программах. Имя процедур используется только для вызова процедуры, а имя функции еще связано с результатом. Оформлять подпрограмму как функцию целесообразно, когда необходимо получить числовое значение. А оформлять процедуру надо, когда есть необходимость выполнить последовательность действий.
