Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети»



Скачать 258.62 Kb.
страница1/3
Дата25.12.2012
Размер258.62 Kb.
ТипПрограмма
  1   2   3
ФЕДЕРАЛЬНОЕ АГЕНСТВО СВЯЗИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ
ОБРАЗОВАТЕЛЬНОЕ БЮДЖЕТНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ТЕЛЕКОММУНИКАЦИЙ И ИНФОРМАТИКИ»

УТВЕРЖДАЮ
проректор по учебной работе –
ФГОБУ ВПО «СибГУТИ»

_________ д.э.н профессор Л.А. Сафонова

« ___ » ___________ 2011 г.
ПРОГРАММА
ИТОГОВОГО ГОСУДАРСТВЕННОГО ЭКЗАМЕНА
по специальности 230101.65
«Вычислительные машины, комплексы, системы и сети»

Новосибирск – 2011 г.

Итоговая государственная аттестация инженера включает в себя защиту выпускной квалификационной работы и государственный экзамен.

Итоговый государственный экзамен проводится по специальным дисциплинам с целью определения соответствия знаний, умений и навыков студентов по комплексу специальных дисциплин и их соответствия требованиям государственного образовательного стандарта.

К сдаче итогового государственного экзамена допускаются студенты, не имеющие задолженностей по учебной программе.

Экзамен проводится в письменно-устной форме.

На экзамене студент получает билет, содержащий 6 вопросов (по одному на каждый раздел), на которые он отвечает в письменном виде в течение 4 часов.

Результаты сдачи экзамена определяются оценками: «отлично», «хорошо», «удовлетворительно», «неудовлетворительно», которые оглашаются комиссией.

В случае несогласия с оценкой студент имеет право обжаловать её перед комиссией, ответив в устой форме на возникшие у комиссии вопросы.

Студенты, успешно сдавшие Итоговый государственный экзамен, допускаются к прохождению преддипломной практики.

Студенты, получившие оценку «неудовлетворительно», имеют право на одну повторную сдачу экзамена не раньше, чем через месяц. До этого к преддипломной практики они не допускаются.

РАЗДЕЛ 1. АРХИТЕКТУРА ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМ

1.1 Архитектура вычислительных систем

  1. Принципы построения, архитектурные возможности машин ENIAC и EDVAC.

  2. Модель коллектива вычислителей. Основные принципы построения вычислительных систем. Типовые структуры ВС.

  3. Понятие «архитектура вычислительной системы». Классификация архитектур ВС.

  4. Методика крупноблочного распараллеливания сложных задач. Параллельные программы и показатели эффективности параллельных алгоритмов.

  5. Конвейерные вычислительные системы. Системы STAR-100, CRAY-1, CRAY-2, CRAY X-MP.

  6. Матричные вычислительные системы. Системы ILLIAC-IV, DAP.

  7. Мультипроцессорные вычислительные системы. Системы C.mmp, Burroughs, Эльбрус, Cm*.

  8. Архитектура вычислительной системы «Минск-222».

  9. Вычислительные системы с программируемой структурой. МИНИМАКС, СУММА.

  10. Распределённые вычислительные системы. Кластерные ВС и GRID-системы.


1.2 Высокопроизводительные вычислительные системы

  1. Направления развития вычислительных систем.

  2. Теория структур распределённых вычислительных систем. Циркулянтные (Dn-графы). L(n,v,g)-графы.

  3. Структурные характеристики ВС. Оптимальные структуры ВС

  4. Вычислительная система Connection Machine.

  5. Вычислительная система CRAY X.

  6. Вычислительная система МИКРОС.

  7. Семейство вычислительных систем МВС.

  8. Система доменных имен (DNS).

  9. Протокол передачи почтовых сообщений SMTP.

  10. Сетевой экран iptables.

  11. Протокол передачи файлов FTP. Конфигурирование сервера ProFTPD.

1.3 Отказоустойчивые вычислительные системы

  1. Операции, необходимые для обеспечения отказоустойчивости вычислительной системы

  2. Структуры отказоустойчивых систем

  3. Организация отказоустойчивых систем с дублированием

  4. Активная защита от отказов

  5. Поиск одиночных отказов в системах со структурно-временной избыточностью

  6. Графовые модели отказоустойчивых систем

  7. Синдром вычислительной системы

  8. Диагностические модели

  9. Методы дешифрации синдрома системы

  10. Использование парных элементарных проверок между машинами

  11. Использование коллективных диагностических проверок

  12. Состояния отказоустойчивых вычислительных систем

  13. Принципы организации самодиагностирования

  14. Планирование загрузки элементарных машин с учетом операций диагностирования

РАЗДЕЛ 2. СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

2.1 Операционные системы

      1. Перечислите и поясните основные функции операционных систем. Приведите примеры исполнения этих функций, на основе современных ОС.

      2. Опишите, какие типы операционных систем Вы знаете? Поясните что такое ядро ОС? Приведите примеры современных ОС, и поясните, к какому классу они относятся.

      3. Что такое «виртуальный адрес», «виртуальное адресное пространство»? Чем (в общем случае) определяется максимально возможный объём виртуального адресного пространства программы?

      4. Для чего операционные системы используют несколько режимов работы процессора? Чем отличается супервизорный режим (режим ядра) от пользовательского режима? Как часто процессор переводится из одного режима в другой и зачем?

      5. Дайте определение терминам «процесс» и «поток». Объясните в чем их отличия. Определите условия, в которых лучше всего использовать процессы и потоки. Приведите примеры.

      6. Дайте определение термину «состояние процесса». Опишите, в каких состояниях могут находиться процессы. Нарисуйте диаграмму семи состояний процессов.

      7. Что такое «файловая система»? Что дает использование той или иной файловой системы? Приведите примеры файловых систем, используемых в современных операционных системах.

      8. Дайте определение задачи «производитель – потребитель». Приведите алгоритм её решения с использованием семафоров.

      9. Дайте определение понятию «взаимоблокировка». Опишите условия, при которых взаимоблокировка не может возникнуть. Приведите пример.

      10. Зачем используются алгоритмы планирования выполнения процессов? Приведите примера алгоритмов. Укажите, какие из них используются в современных операционных системах.

2.2 Системное программное обеспечение

      1. Написать КС-грамматику для языка L, построить дерево вывода и левосторонний вывод для цепочки aabbbcccc

L = {a2nbmc2k | m = n + k, m  1}

      1. Построить грамматику, порождающую сбалансированные относительно круглых скобок цепочки в алфавите {a, (, ), }. Сбалансированную цепочку определим рекуррентно: цепочка  сбалансирована, если:

  •  не содержит круглых скобок;

  •  = (1) или  = 12, где 1 и 2 сбалансированы.

      1. Дан язык L = {13n+20n | n ≥ 0}. Определить его тип, написать грамматику, порождающую язык L. Построить левосторонний и правосторонний выводы, дерево разбора для цепочки 1111111100.

      2. Построить КС-грамматику, эквивалентную грамматике с правилами:

SAB | ABS

ABBA

BAAB

Aa

Bb

      1. Дана грамматика с правилами:

Sif B then S | B = E

EB | B + E

Ba | b

Построить восходящим и нисходящим методами дерево вывода для цепочки:

if a then b = a + b + b

      1. Написать леволинейную регулярную грамматику, эквивалентную данной праволинейной, допускающую детерминированный разбор

SAb

BaC | aD | dB

CaB

D  

      1. Для данной грамматики:

а) определить ее тип;

в) какой язык она порождает;

с) написать Р-грамматику, почти эквивалентную данной;

d) построить ДС и анализатор на Си.

S  0S | S0 | D

DDD | 1A | 

A  0B | 

B  0A |0

      1. Преобразовать грамматику к виду, допускающему детерминированный разбор (использовать алгоритм преобразования НКА к детерминированному КА). Какой язык порождает грамматика? Написать анализатор.

SC

CB1

B  0 | D0

DB1

      1. Написать регулярную грамматику, порождающую язык:
        L = {11 |   {0,1}+, где все подряд идущие 0 – подцепочки нечетной длины}; по грамматике построить ДС, а по ДС написать на Си анализатор.

      2. Написать для данной грамматики (предварительно преобразовав ее, если это требуется) анализатор, действующий методом рекурсивного спуска.

SP = E | while E do S

PI | I (E {, E})

EE + T | T

TT * F | F

FP | (E)

I a | b | c

      1. Написать для данной грамматики процедуры анализа методом рекурсивного спуска, предварительно преобразовав ее.

Ffunction I(I) S; I:=E end

S  ; I:=E S | 

EE*I | E+I | I

      1. Восстановить Кс-грамматику по функциям, реализующим синтаксический анализ методом рекурсивного спуска. Можно ли было по этой грамматике вести анализ методом рекурсивного спуска?

#include

int c; FILE *fp;

void A( );

void ERROR( );

void S (void)

{

A( );

if( c != ‘’ )

ERROR( );

}

void A (void)

{

B( );

while ( c = = ‘a’ ){

c = fgetc(fp);

B( );

}

B();

}

void B(void)

{

if( c = = ‘b’ )

c = fgetc(fp);

}

void main ( )

{

fp = fopen(“data”, “r”);

c = fgetc(fp);

S( );

printf(“O.K.!”);

}

      1. Записать в ПОЛИЗе следующий оператор языка Си, используя стек, выполнить его при указанных начальных значениях переменных:

S = 0;

for ( I = 1; I <= k; I = I + 1)

S = S +i*i;

при k = 3.

      1. Записать в ПОЛИЗе следующий оператор языка Си, используя стек, выполнить его при указанных начальных значениях переменных:

switch (k) {

case 1: a = not a; break;

case 2: b = a or not b;

case 3: a = b;

}

      1. Написать грамматику для выражений, содержащих переменные, знаки операций + , -, *, / и скобки ( ), где операции должны выполняться строго слева направо, но приоритет скобок сохраняется. Определить действия по переводу таких выражений в ПОЛИЗ.

2.3 Распределённые операционные системы

      1. Дайте определение термина «распределённые вычислительные системы». Опишите их отличия от других. Сформулируйте основные функции, выполняемые распределёнными операционными системами.

      2. Что такое «открытая система»? Приведите примеры.

      3. Дайте определение проблеме синхронизации событий в распределённых системах. Приведите примеры решения этой проблемы с использованием различных алгоритмов. Определите достоинства и недостатки каждого из подходов.

      4. Опишите способы именования объектов в распределённых системах. Приведите пример использования DNS, LDAP. Покажите, как используются в современных компьютерных сетях и распределённых системах эти протоколы.

      5. Дайте определение «контроля доступа к разделяемым объектам». Какие проблемы могут возникать в случае неконтролируемого доступа параллельных процессов к общим перезаписываемым данным? Приведите примеры алгоритмов исключения взаимоблокировок.

      6. Каким образом осуществляются взаимодействия между параллельными процессами в распределённых системах? Для чего используется промежуточное программное обеспечение? Приведите примеры взаимодействия процессов, с использованием механизмов RPC, промежуточного программного обеспечения.

      7. Приведите примеры объектов или ресурсов, которые выделяются системой по требованию параллельных приложений. Можно ли определить эти требования определить до запуска программы или нет? Приведите примеры решения проблемы взаимоблокировки при доступе к разделяемым ресурсам.

      8. Дайте определение термину «репликация данных». Зачем она нужна? Приведите пример использования репликации.

      9. Опишите модель «сетевой файловой системы». Определите цели их использования. Приведите примеры современных сетевых файловых систем.

      10. Как в распределённых системах осуществляется контроль доступа к объектам файловой системы? Что такое режим доступа? Приведите примеры контроля доступа с использованием различных режимов.

РАЗДЕЛ 3. РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

3.1 Программирование на языках высокого уровня

  1. Разработать подпрограмму на языке Си, удаляющую лишние пробелы в строке (между словами только один пробел).

  2. Разработать подпрограмму на языке Си, выполняющую разложение числа на простые множители (например, 36=3*3*2*2). Результат – последовательность множителей в массиве, ограниченная 0.

  3. Разработать подпрограмму на языке Си, "переворачивающую" все слова в строке. (Например: "Жили были дед и баба" - "илиЖ илыб дед и абаб").

  4. Разработать подпрограмму на языке Си, выполняющую поиск двух одинаковых фрагментов в строке, не содержащих пробелы и имеющих максимальную длину. Результат – указатель на начало первого из них.

  5. Разработать подпрограмму на языке Си, выполняющую поиск конца предложения в строке (символ "точка"), в первом слове следующего предложения необходимо выполнить замену первой строчной буквы на прописную. Между словами количество пробелов может быть любым.

  6. Разработать подпрограмму на языке Си, заменяющую в строке принятое в Си обозначение символа с заданным кодом в восьмеричной системе счисления на сам символ в базовой кодировке ASCII. Например, ASCII код символа A – 4116 и 1018 тогда строка “test101 and test_102” должна быть преобразована в строку “testA and test_B”.

  7. Разработать подпрограмму на языке Си, выполняющую поиск слова в строке, начинающегося с самой младшей латинской буквы, и возвращающую указатель на его начало.

  8. Разработать подпрограмму на языке Си, удаляющую из строки комментарии вида "/* ... */". Игнорировать вложенные комментарии.

  9. Разработать подпрограмму на языке Си, выполняющую поиск в строке наиболее часто встречающегося символа, и заменяющую его на пробел.

  10. Разработать подпрограмму на языке Си, выполняющую поиск подстроки в строке. Строка и подстрока заданы в массивах символов. Результат функции – указатель на начало подстроки в строке или NULL.

  11. Разработать подпрограмму на языке Си, определяющую в массиве максимальную длину последовательности расположенных подряд возрастающих значений, и возвращающую индекс ее начала.

  12. Разработать подпрограмму на языке Си, преобразовывающую дробную часть переменной типа double в строку символов (путем последовательного умножения дробной части на 10).

  13. Разработать подпрограмму на языке Си, выполняющую поиск наименьшего общего кратного для всех элементов массива - минимальное число, которое делится на все элементы массива без остатка.

  14. Разработать подпрограмму на языке Си, формирующую массив простых чисел в диапазоне от 2 до заданного. Очередное простое число определяется попыткой деления нацело числа на все уже накопленные простые числа.

  15. Разработать подпрограмму на языке Си, осуществляющую двоичный поиск строки по образцу в упорядоченном массиве строк. Если найдено несколько строк, то требуется найти первую. Функция возвращает указатель на найденную строку.

3.2 Технологии программирования

  1. Реализовать класс «одномерный массив». Перегрузить для него операторы ([], ==, !=, =, <, >). Объяснить использование указателей, ссылок, квалификатора const.

  2. Прочитать текстовый файл по словам с сохранением порядка, после чего реализовать простейший редактор. А именно, предусмотреть возможность поиска слов, удаления всех найденных слов, вставки заданных слов после найденных. Объяснить принцип выбора использованных контейнерных типов данных.

  3. Прочитать текстовый файл по словам, вывести все слова, которые встречаются не менее n раз (n задается пользователем). Предусмотреть сортировку вывода по длине слов. Объяснить принцип выбора использованных контейнерных типов данных.

  4. Реализовать класс, хранящий некоторый набор слов и реализующий основные операции над ним (поиск, вставка, удаление). Объяснить выбор представления данных в памяти (дерево, хэш-таблица, список или массив), показать один из вариантов реализации итератора.

  5. Написать прототипы функций, создающей одномерный массив заданного размера и с заданными начальными значениями. Предусмотреть возможность создания клона имеющегося массива. Известно, что большинство массивов будет иметь размер 10 и начальные значения – 1. Реализовать описанные функции.

  6. Реализовать две функции с одинаковой сигнатурой в разных пространствах имен. Использовать в своей программе обе эти функции одновременно. Объяснить влияние using-директив на области видимости.

  7. Реализовать несколько функций поиска минимального элемента (из 2 аргументов, 3 аргументов, массива, строки). Объяснить алгоритм разрешения перегрузки функций.

  8. Реализовать несколько шаблонов функций поиска минимального элемента (из 2 аргументов, 3 аргументов, массива). Объяснить алгоритм конкретизации шаблонов.

  9. Реализовать функцию, которая считывает двумерный массив из файла. Размерность массива определяется двумя первыми числами в файле. Предусмотреть вероятность неправильных форматов данных. Объяснить используемый алгоритм обработки нештатных ситуаций.

  10. Необходимо отсортировать слова из файла по числу входящих в них гласных букв. Объяснить критерий выбора обобщенного алгоритма, преимущества использования объекта-функции.

  11. Реализовать класс комплексных чисел (конструктор, несколько операторов =, ==, !=, <<, >>). Объяснить взаимосвязь между уровнями доступа и друзьями класса.

  12. Написать прототип класса «User». Методы класса должны быть доступны всем, но создавать объекты этого класса имеют право только объекты типа «Administrator». Объяснить принципы использования открытых и закрытых конструкторов.

  13. Реализовать класс «Int100» для представления целых чисел от 0 до 100 включительно. Предусмотреть конструктор по умолчанию и копирующий конструктор, несколько операторов (=, ==, !=, +=, –=), преобразования в тип int и обратно.

  14. Реализовать шаблон класса “Stack”, основные операции работы со стеком (создание, уничтожение, чтение и извлечение верхнего элемента, добавление элемента).

  15. Для небольшой игры написать иерархию классов «Monsters» (текущее местоположение, запас здоровья, особенности визуализации), и основной цикл, который производит отображение всех участников на экран. Объяснить принцип действия полиморфизма.

  1   2   3

Похожие:

Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» icon1. Дисциплины, выносимые кафедрой ЭВМ на междисциплинарный экзамен по специальности 230101 «Вычислительные машины, комплексы, системы и сети»
...
Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» iconУчебно-методический комплекс по дисциплине «Теория информации и кодирования»
Государственного образовательного стандарта высшего профессионального образования по специальности: 230101, вычислительные машины,...
Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» iconМетодические указания для студентов по прохождению производственной (профессиональной) практики для специальности 230101 «Вычислительные машины, комплексы, системы и сети»

Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» iconПрограммы подготовки бакалавра по направлению 230100 Вычислительные машины, комплексы, системы и сети
«Информатика и вычислительная техника», профиль «Вычислительные машины, комплексы, системы и сети»
Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» iconОбразовательная программа по направлению 230100 " Информатика и вычислительная техника" специальность 230101, «Вычислительные машины, комплексы, системы и сети»
Рабочая программа составлена на основании Государственного образовательного стандарта высшего профессионального образования по направлению...
Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» iconМетодические указания для студентов по проведению практических и лабораторных работ для специальностей 230101 «Вычислительные машины, комплексы, системы и сети»

Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» iconПрограмма курса Технология программирования Объем: Лекции 36 часов. Лабораторные работы 66 часов
Рабочая программа составлена на основании Государственного стандарта по специальности 220100-«Вычислительные машины, комплексы, системы...
Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» iconДипломированного специалиста специальность 230101 Вычислительные машины, комплексы, системы и сети Система автоматизации деятельности Службы технической поддержки Студент группы 250261 Косухин К. Ю
Охватывают следующие стадии разработки проектных материалов
Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» iconВопросы к государственному междисциплинарному экзамену по специальности 230101 «Вычислительные машины, комплексы, системы и сети» на 2011 год
База данных: понятие, уровни представления базы данных. Преимущества базы данных перед файловой организацией данных. Система управления...
Программа итогового государственного экзамена по специальности 230101. 65 «Вычислительные машины, комплексы, системы и сети» iconПрограмма учебной дисциплины «вычислительные машины, системы и сети» Направление подготовки
Вычислительные машины, системы и сети ” призвана познакомить студента, обучающегося по направлению 220700 “Автоматизация технологических...
Разместите кнопку на своём сайте:
ru.convdocs.org


База данных защищена авторским правом ©ru.convdocs.org 2016
обратиться к администрации
ru.convdocs.org