Главная страница

Программа обучения по дисциплине «Системное программирование»


Скачать 140.75 Kb.
НазваниеПрограмма обучения по дисциплине «Системное программирование»
Дата12.02.2016
Размер140.75 Kb.
ТипПрограмма


ВОСТОЧНО-КАЗАХСТАНСКИЙ ГОСУДАРСТВЕННЫЙ

ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ им. Д.СЕРИКБАЕВА

Ф2 И ВКГТУ 701.01-01-1-2011

Система менеджмента качества

Силлабус

(программа обучения по дисциплине «Системное программирование»

для студента)
Стр. из


Қазақстан Республикасының Министерство

Білім және ғылым образования и науки

министрлігі Республики Казахстан
Д. Серікбаев атындағы

ШҚМТУ ВКГТУ им. Д. Серикбаева
УТВЕРЖДАЮ
декан ФИТЭ

Г.Х.Мухамедиев

___________________2012 г.


ЖҮЙЕЛІК БАҒДАРЛАМАЛАУ

Силлабус
СИСТЕМНОЕ ПРОГРАММИРОВАНИЕ

Силлабус
Специальность: 5В070400 «Вычислительная техника и программное обеспечение»

Форма обучения: очная
Курс: 2

Семестр: 3

Кол-во кредитов: 3

Кол-во часов:

Лекции: 15

Лабораторные работы: 30

СРСП: 45

СРС: 45

Экзамен: 3 семестр

Өскемен

Усть-Каменогорск

2012

Силлабус разработан на кафедре «Информационные системы» на основании Государственного общеобязательного стандарта образования для студентов специальности 5В070400 – «Вычислительная техника и программное обеспечение».

Обсуждено на заседании кафедры «Информационные системы»
Зав. кафедрой Н.Ф.Денисова.
Протокол №____ от ____________________г.

Одобрено учебно-методическим советом ФИТЭ
Председатель Н.Г.Огаркова
Протокол №____ от______________________г.


Разработал
профессор В.Л.Никифоров

Нормоконтролер Т.В.Тютюнькова

СВЕДЕНИЯ О ПРЕПОДАВАТЕЛЕ И КОНТАКТНАЯ ИНФОРМАЦИЯ
Кафедра «Информационные системы», факультет информационных технологий и энергетики (ауд, Г-3-311)

Преподаватель, ведущий занятия: Никифоров Василий Львович, к.т.н., профессор по специальности «Информатика и информационные системы» Телефон рабочий: 540-356

Аудиторные часы и время для консультаций: по расписанию занятий и графику работы преподавателя.
1. ХАРАКТЕРИСТИКА ДИСЦИПЛИНЫ, ЕЕ МЕСТО В УЧЕБНОМ ПРОЦЕССЕ


    1. Описание изучаемой дисциплины


Использование современных информационных технологий невозможно без знаний основ системного программирования. Технологии системного программирования операционной системы Windows основаны на использовании динамически подключаемых библиотек (DLL), которые определяют все функции Windows, использовании указателей для непосредственного обращения к данным, знаний основ работы с регулярными выражениями. Не менее важными являются технологии синхронизации работы нитей различных процессов, организацией обмена данными между различными процессами как на одном компьютере, так и процессов находящихся на различных компьютерах в локальной сети.


    1. Цели изучения дисциплины


Цель преподавания дисциплины. Изучение основ системного программирования с использованием консольного приложения среды программирования Visual.Studio.NET 2010. Технология системного программирования операционной системы Windows, начиная с самой первой её версии, основана на использовании динамически подключаемых библиотек, которые определяют все функции Win32 API. Поэтому на первом этапе дисциплины студенты знакомятся с принципами построения и использования DLL. Изучают основы системного программирования с использованием двоичной системы счисления, представления информации в двоичной форме, использование указателей. В современных операционных системах большое значение отводится работе с информацией, представленной в символьном виде, поэтому отдельным модулем изучается язык регулярных выражений.

Вторая часть дисциплины посвящена технологиям организации параллельных вычислений с помощью управления нитями процессов. Рассмотрены вопросы передачи данных между нитями одного процесса, синхронизации нитей как одного процесса, так нескольких процессов, находящихся на различных компьютерах в локальной сети. Изложение материала сопровождается большим количеством примеров. Компоновка материала позволяет успешно решить основную цель преподавания дисциплины – формирование у студентов твердых теоретических знаний и практических навыков по вопросам системного программирования и их использование для решения задач, отображающих реальные жизненные процессы или их модели.
1.3 Задачи изучения дисциплины
Задачи изучения дисциплины. Основной задачей изучения данной дисциплины является интенсивное обучение студентов основам системного программирования на языке C# в визуальной среде программирования Visual.Studio.NET 2010. Студенты должны изучить основы построения и использования своих динамически подключаемых библиотек, основы языка регулярных выражений. Изучить принципы многопоточной организации вычислительного процесса. Определять рентабельные нити и уметь блокировать и синхронизировать работу этих нитей как в одном процессе на одном компьютере, так и в разных процессах на разных компьютерах в локальной сети. Уметь использовать именованные и анонимные каналы передачи данных для работы, как на локальном компьютере, так и в локальной сети.

Другая задача заключается в том, чтобы обучаемые смогли успешно применить и сочетать полученные знания на практике при разработке различных проектов системного программирования, многопоточных систем и систем различных технологических процессов.
1.4 Пререквизиты
Предварительные дисциплины и обязательные курсы: высшая математика, информатика, алгоритмизация и основы программирования и технология программирования.
1.5 Постреквизиты
Знания, полученные магистрантами, будут использованы в специальных дисциплинах специальности.

2 СОДЕРЖАНИЕ ДИСЦИПЛИНЫ
2.1 Распределение часов по видам занятий




Название темы


Часы

Лекции

Лаб. Раб.

СРС


СРСП

1.

Создание и использование DLL в языке C#

1

4

6

6

2.

Использование указателей в языке C#

3

6

9

9

3.

Регулярные выражения в языке C#

2

4

6

6

4.

Передача данных между нитями в одном процессе

3

6

9

9

5.

Синхронизация работы нитей в процессах

3

6

9

9

6.

Использование каналов передачи данных в C#

3

4

6

6




Всего

Лекций

Лаб. Раб.

СРС

СРСП

15

30

45

45


2.2 Тематический план лекционных, лабораторных, СРС и СРСП занятий
2.2.1 Тема 1 Создание и использование DLL на языке C#

Трудоемкость – 17 часов.

Рекомендуемая литература [2] (с. 275-279).

Содержание темы:

1 Введение, задачи дисциплины, ее предмет и порядок изучения.

  1. Назначение операционных систем.

  2. Понятие и назначение Win32 API.

  3. Понятие объектов и дескрипторов в Windows

  4. Назначение DLL.

  5. Ориентировочный состав DLL.

  6. Процесс создания DLL.

  7. Варианты подключения DLL к проекту.

  8. Использование DLL в проектах.

10 Задание для СРС.
План лабораторной работы:

  1. Проверка на компьютере результатов выполнения домашнего задания.

  2. Демонстрация работы домашнего задания преподавателю.

  3. Получение индивидуального задания у преподавателя.

  4. Выполнение индивидуального задания по теме «Создание и использование DLL на языке C#».

  5. Демонстрация работы индивидуального задания преподавателю.

  6. Составление отчета.

Контрольные задания для СРС:

1 Изучить лекцию темы 1 (см. презентацию 1 лекций [5]).

2 Изучить методические указания к первой лабораторной работе ([6]).

3 Подготовить решение задачи, заданной на лекции.

Контрольные задания для СРСП:

1 Ответить на контрольные вопросы первой темы([6]).

2 Защитить отчет по первой лабораторной работе.
2.2.2 Тема 2 Использование указателей в языке C#

Трудоемкость – 27 часов.

Рекомендуемая литература [3] (с. 171-173).

Содержание темы:

1Системы счисления.

2 Поразрядные логические операции в языке C#.

3 Операции побитового сдвига в языке C#.

4 Обозначение идентификаторов в системе Windows.

5 Понятие указателя.

6 Операция инициализации указателя.

7 Понятие небезопасного кода.

8 Использование операций сложения и вычитания для перемещения указателя по массиву данных.

9 Использование указателей при работе со структурами.

10 Задание для СРС.

План лабораторной работы:

1 Проверка на компьютере результатов выполнения домашнего задания.

2 Демонстрация работы домашнего задания преподавателю.

3 Получение индивидуального задания у преподавателя.

4 Выполнение индивидуального задания с использованием графического интерфейса языка C#.

5 Демонстрация работы индивидуального задания преподавателю.

6 Составление отчета.
Контрольные задания для СРС:

1 Изучить лекции темы 2 (см. презентацию 2, 3 и 4 лекций [5]).

2 Изучить методические указания ко второй лабораторной работе ([6]).

3 Подготовить решение задачи, заданной на лекции.

Контрольные задания для СРСП:

1 Ответить на контрольные вопросы ([6]).

2 Защитить отчет по лабораторной работе.
2.2.3 Тема 3 Регулярные выражения в языке C#

Трудоемкость – 18 часов.

Рекомендуемая литература [2] (с. 355-365).

Содержание темы:

1 Понятие языка регулярных выражений.

2 Основные задачи, решаемые регулярными выражениями.

3 Символика языка регулярных выражений.

4 Повторители в языке регулярных выражений.

5 Уточняющие метасимволы.

6 Заменители или «Классы символов».

7 Специальные (управляющие) символы.

8 Группирование элементов регулярного выражения.

9 Применение методов Split и Replace в регулярных выражениях.

10 Задание для СРС.

План лабораторной работы:

1 Проверка на компьютере результатов выполнения домашнего задания.

2 Демонстрация работы домашнего задания преподавателю.

3 Получение индивидуального задания у преподавателя.

4 Выполнение индивидуального задания с использованием многодокументного Windows-приложений.

5 Демонстрация работы индивидуального задания преподавателю.

6 Составление отчета.

Контрольные задания для СРС:

1 Изучить лекции темы 3 (см. презентацию 5 и 6 лекций [5]).

2 Изучить методические указания к третьей лабораторной работе( [6]).

3 Подготовить решение задачи, заданной на лекции.

Контрольные задания для СРСП:

1 Ответить на контрольные вопросы ([6]).

2 Защитить отчет по лабораторной работе.


2.2.4 Тема 4 Передача данных между нитями в одном процессе.

Трудоемкость –27 часов.

Рекомендуемая литература [2] (с.237-246).

Содержание темы:

1 Понятие нити в языке C#.

2 Состояния нитей в языке C#.

3 Диспетчеризация и планирование нитей.

4 Объявление и создание нитей.

5 Механизмы взаимодействия нитей в языке C#

6 Передача данных нитям.

7 Передача данных между нитями в одном процессе.

8 Понятие основной и фоновой нити.

9 Использование приоритета нити в программе.

10 Задание для СРС.

План лабораторной работы:

1 Проверка на компьютере результатов выполнения домашнего задания.

2 Демонстрация работы домашнего задания преподавателю.

3 Получение индивидуального задания у преподавателя.

4 Выполнение индивидуального задания с использованием «свойств» класса.

5 Демонстрация работы индивидуального задания преподавателю.

6 Составление отчета.

Контрольные задания для СРС:

1 Изучить лекции темы 4 (см. презентацию 7, 8 и 9 лекций [5]).

2 Изучить методические указания к 4 лабораторной работе ([6]).

3 Подготовить решение задачи, заданной на лекции.

Контрольные задания для СРСП:

1 Ответить на контрольные вопросы ([6]).

2 Защитить отчет по лабораторной работе.
2.2.5 Тема 5 Синхронизация работы нитей в процессах языка C#

Трудоемкость –27 часов.

Рекомендуемая литература [3] (с. 739-793).

Содержание темы:

1 Понятие действия, синхронизации.

2 Классификация средств синхронизации нитей.

3 Простые средства синхронизации нитей.

4 Использование метода Sleep.

5 Использование метода Join.

6 Использование оператора lock.

7 Использование блокирующей конструкции Mutex.

8 Использование блокирующей конструкции Semaphore.

9 Автоматическая синхронизация нитей.

10 Задание для СРС.

План лабораторной работы:

1 Проверка на компьютере результатов выполнения домашнего задания.

2 Демонстрация работы домашнего задания преподавателю.

3 Получение индивидуального задания у преподавателя.

4 Выполнение индивидуального задания с использованием цепочки наследуемых классов.

5 Демонстрация работы индивидуального задания преподавателю.

6 Составление отчета.

Контрольные задания для СРС:

1 Изучить лекции темы 5 (см. презентацию 10,11и 12 лекций [5]).

2 Изучить методические указания к 5 лабораторной работе ([6]).

3 Подготовить решение задачи, заданной на лекции.

Контрольные задания для СРСП:

1 Ответить на контрольные вопросы ([6]).

2 Защитить отчет по лабораторной работе.
2.2.6 Тема 6 Использование каналов передачи данных в C#

Трудоемкость – 19 часов.

Рекомендуемая литература [3] (с.495-535).

Содержание темы:

1 Способы обмена данных между процессами.

2 Классификация связей между процессами.

3 Передача сообщений между процессами.

4 Обмен данными между процессами с помощью файла.

5 Каналы в языке C#.

6 Работа с именованными каналами в языке C#.

7 Работа с анонимными каналами в языке C#.

8 Понятие потокового адаптера.

9 Текстовые и двоичные потоковые адаптеры в языке C#.

10 Задание для СРС.

План лабораторной работы:

1 Проверка на компьютере результатов выполнения домашнего задания.

2 Демонстрация работы домашнего задания преподавателю.

3 Получение индивидуального задания у преподавателя.

4 Выполнение индивидуального задания с использованием стандартных коллекций языка C#.

5 Демонстрация работы индивидуального задания преподавателю.

6 Составление отчета.

Контрольные задания для СРС:

1 Изучить лекции темы 6 (см. презентацию 13, 14 и 15 лекций [5]).

2 Изучить методические указания к 6 лабораторной работе ([6]).

3 Подготовить решение задачи, заданной на лекции.

Контрольные задания для СРСП:

1 Ответить на контрольные вопросы ([6]).

2 Защитить отчет по лабораторной работе.
3 СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ


  1. Основная литература


1 В.В. Фаронов «Создание приложений с помощью C#» Руководство программиста. - М.: “Эксмо”, 2008г.

2 Т.А. Павловская C#, Программирование на языке высокого уровня. Учебник для вузов, СПб,: Питер, 2009г.

3 Д. Албахари, Б. Албахари «C# 3.0 справочник» СПб,: «БХВ - Петербург» 2009г

4 В.М. Рябенький и др. Компьютерное управление внешними устройствами через стандартные интерфейсы, Учебное пособие, Олди-плюс, Херсон, 2008г.

5 Презентации лекций по дисциплине «Системное программирование» для студентов специальности 5В070400 – смотри портал кафедры ИС http: \\ www.do.ektu.kz

6 Методические указания к лабораторным работам, СРС и СРСП дисциплины «Системное программирование» специальности 5В070400 Портал кафедры ИС http: \\ www.do.ektu.kz


  1. Дополнительная литература




  1. Э. Йодан Структурное программирование и конструирование программ. М.: ”Мир”, 1989г.

  2. Д. Кнут. Искусство программирования для ЭВМ. Т.1./ Основные алгоритмы / - М.:Мир,1976.


4 ОЦЕНКА ЗНАНИЙ
4.1 Требования преподавателя
Требования преподавателя:

– посещение лекционных лабораторных и СРСП занятий по расписанию является обязательным;

– присутствие студентов на занятиях проверяется в начале занятий. В случае опоздания студент должен бесшумно войти в аудиторию и включиться в работу, а в перерыве объяснить преподавателю причину опоздания;

– два опоздания на занятия приравниваются к одному пропуску занятия;

– оцениваемые в баллах работы следует сдавать в установленные сроки. За несвоевременную сдачу работ количество баллов снижается. Студенты, не сдавшие все задания, к экзамену не допускаются;

– повторное прохождение студентом рубежного контроля, в случае получения неудовлетворительной оценки, не допускается;

– студенты, получившие средний рейтинг Рср = (Р1 + Р2)/2 менее 50%, к экзамену не допускаются;

– в течение занятий мобильные телефоны должны быть отключены;

– студент обязан приходить на занятия в деловой одежде.
4.2 Оценка работы студентов
Знания, умения и навыки студентов оцениваются по следующей системе:

Оценка по

буквенной

системе

Цифровой

эквивалент

баллов

Процентное

Содержание

Оценка по

традиционной

системе

А

А-

4,0

3,67

95 – 100

90 – 94

Отлично

В+

В

В-

3,33

3,0

2,67

85 – 89

80 – 84

75 – 79

Хорошо

С+

С

С-

D+

D

2,33

2,0

1,67

1,33

1,0

70 – 74

65 – 69

60 – 64

55 – 59

50 – 54

Удовлетворительно

F

0

0 – 49

Неудовлетворительно

Студенты, набравшие менее 100 баллов (%) семестрового рейтинга (Р1+Р2) к экзамену не допускаются.
4.3 Критерии оценки
Оценка всех видов заданий осуществляется по 100-балльной системе.

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

График выполнения и сдачи лабораторных заданий по дисциплине




1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Виды

Контр







Т1




Т2





Т3

Рк1







Т4





Т5







Т6

Рк2

Мак

Балл







30




30




30

10







30




30







30

10

Виды контроля:

Т1 – Т6 – текущий контроль тем дисциплины (защита лабораторных работ),

Рк1,Рк2 – рубежный контроль,

Рк1 определяется на 7 недели занятий;

Рк2 – на 15 недели занятий.
4.4 Материалы для итогового контроля

Примерный перечень вопросов к экзамену

1 Как еще называются физические устройства, из которых состоит компьютер?

2 Как называются программы и данные, которые хранятся в памяти компьютера?

3 Как называются все ресурсы компьютера?

4 Что включают системные ресурсы компьютера?

5 Что включают аппаратные ресурсы компьютера?

6 Что включают информационные ресурсы компьютера?

7 Как называются программы, работающие на компьютере под управлением ОС?

8 Как называются пользовательские программы, предназначенные для решения определённой задачи?

9 Как называется операционная система, способная исполнять несколько пользовательских программ?

10 Какие операционные системы называются мультипроцессорные?

11 Какие операционные системы называются многопользовательские?

12 Какие операционные системы называются системами реального времени?

13 Как сокращенно называется интерфейс программирования приложений в Windows?

14 Какие функции интерфейса программирования приложений в Windows в основном изучаются в дисциплинах, связанных с разработкой прикладных программ?

15 Какие функции интерфейса программирования приложений в Windows в основном изучаются в дисциплине системного программирования?

16 Какие функции интерфейса программирования приложений в Windows в основном изучаются в дисциплинах, связанных с работой интерфейса графических устройств?

Полный перечень типовых вопросов на экзамен (0коло 300 вопросов) выдается студентам в начале семестра.