Республики Беларусь «24»
Вид материала | Пояснительная записка |
- В перечень банков Республики Беларусь, имеющих право обязываться по векселю, утверждаемый, 419.3kb.
- Республики Беларусь 15 августа 2006, 202.35kb.
- Одобрен Советом Республики 8 февраля 1999 года общая часть глава 1 общие положения, 799.65kb.
- Об утверждении Инструкции о порядке взаимодействия государственных органов, ответственных, 157.85kb.
- Республики Беларусь «Об органах внутренних дел Республики Беларусь», 9.85kb.
- Конституции Республики Беларусь Совет Республики Национального собрания Республики, 11.32kb.
- Конституции Республики Беларусь Совет Республики Национального собрания Республики, 11.74kb.
- Совета Министров Республики Беларусь от 31 октября 2001 г. N 1592 "Вопросы Министерства, 1509.5kb.
- Постановление государственного комитета по авиации республики беларусь, 78.75kb.
- Конституции Республики Беларусь Совет Республики Национального собрания Республики, 13.86kb.
примерный перечень тем курсовых работ
- Создание пользовательского интерфейса для систем, работающих в графическом режиме.
- Разработка графических и текстовых редакторов.
- Разработка диалоговых обучающих программ.
- Реализация игровых программ.
- Разработка библиотеки базовых классов.
- Программирование в среде Интернет.
^
примерный перечень компьютерных программ
ВМСиС:
- Компьютерный класс.
- Операционная система Microsoft Windows (2000 или ХР).
- Язык программирования Java (Java SDK).
- Язык программирования ActiveState Perl.
- СУБД MySQL.
ПОИТ:
- Компьютерный класс.
- Операционная система Microsoft Windows (2000 или ХР).
- Система программирования Borland Delphi.
- Система программирования MS Visual Studio.
АСОИ:
- Компьютерный класс.
- Операционная система Microsoft Windows (2000 или ХР).
- Система программирования MS Visual Studio.
Литература
1. Холзнер С. Perl. Специальный справочник. – СПб.: Питер, 2001.
2. Кристиансен Т., Торкингтон Н. Perl. Библиотека программиста. – СПб.: Питер, 2001.
3. Дейтел Х.М., Дейтел П.Дж. Как программировать на Perl. – М.: Бином, 2002.
4. Чен М.С., Грифис С.В., Изи Э.Ф. Программирование на Java. – Мн.: Попурри, 1997.
5. Дейтел Х.М., Дейтел П.Дж. Как программировать на Java. – М.: Бином, 2002.
6. Дюбуа П. MySQL. – М.: Изд. дом «Вильямс», 2001.
7. Паттерсон Л. и др. Использование HTML. – М.: Изд. дом «Вильямс», 2001.
8. Страуструп Б. Язык программирования С++. 3-е изд.: Пер. с англ. - СПб.: Бином, 1999.
9. Дейтел Х.М., Дейтел П.Дж. Как программировать на С++. – М.: Бином, 2002.
10. Эллис М., Страуструп Б. Справочное руководство по языку программирования С++ с комментариями: Пер с англ. - М.: Мир, 1992.
11. Буч Г. Объектно-ориентированное проектирование с примерами применения: Пер. с англ. – М.: Конкорд, 1992.
12. Ревотюк М.П. Объектно-ориентированное программирование на языке С++. Ч. 1: Переход от языка С к С++. – Мн.: МРТИ, 1994.
13. Ревотюк М.П. Объектно-ориентированное программирование на языке С++. Ч. 2: Технология объектно-ориентированного программирования. – Мн.: БГУИР, 1997.
14. Сурков К.А., Сурков Д.А., Вальвачев А.Н. Программирование в среде Delphi 2.0. — Мн.: Попурри, 1997.
15. Сурков Д.А., Сурков К.А., Вальвачев А.Н. Программирование в среде C++ Builder. — Мн.: Попурри, 1998.
Утверждена
УМО вузов Республики
Беларусь по образованию в области
информатики и радиоэлектроники
« 03 » июня 2003 г.
Регистрационный № ТД-40-058/тип.
^
СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
Учебная программа для высших учебных заведений по специальностям
I-40 01 01 Программное обеспечение информационных технологий,
I-40 02 01 Вычислительные машины, системы и сети
Согласована с Учебно-методическим управлением БГУИР
« 28 » мая 2003 г.
Составители:
К.А. Сурков, доцент кафедры программного обеспечения информационных технологий Учреждения образования «Белорусский государственный университет информатики и радиоэлектроники», кандидат технических наук;
^ П.Ю. Бранцевич, доцент кафедры программного обеспечения информационных технологий Учреждения образования «Белорусский государственный университет информатики и радиоэлектроники», кандидат технических наук;
^ А.В. Отвагин, ассистент кафедры электронных вычислительных машин Учреждения образования «Белорусский государственный университет информатики и радиоэлектроники»;
^ И.И. Глецевич, ассистент кафедры электронных вычислительных машин Учреждения образования «Белорусский государственный университет информатики и радиоэлектроники».
Рецензенты:
Н.В. Шкут, профессор кафедры численных методов и программирования Учреждения образования «Белорусский государственный университет»;
^ А.Н. Дудкин, ведущий научный сотрудник лаборатории индетификации систем Института технической кибернетики Национальной академии наук Беларуси, кандидат технических наук;
^ П.Н. Бибило, заведующий лабораторией логического проектирования Института технической кибернетики Национальной академии наук Беларуси, профессор, доктор технических наук;
^ Кафедра программного обеспечения вычислительной техники и автоматизированных систем Учреждения образования «Белорусский национальный технический университет» (протокол № 15 от 06.05.2002 г.);
Кафедра электронных вычислительных машин и систем Учреждения образования «Брестский государственный технический университет» (протокол № 7 от 18.06.2002 г.)
Рекомендована к утверждению в качестве типовой:
Кафедрой электронных вычислительных машин Учреждения образования «Белорусский государственный университет информатики и радиоэлектроники» (протокол № 26 от 25.02.2002 г.);
Кафедрой программного обеспечения информационных технологий Учреждения образования «Белорусский государственный университет информатики и радиоэлектроники» (протокол № 16 от 18.03.2002 г.);
Научно-методическим советом по направлению Ι-40 Вычислительная техника УМО вузов Республики Беларусь по образованию в области информатики и радиоэлектроники (протокол № 2 от 20.06.2002 г., протокол № 3 от 02.07.2002 г.)
Разработана на основании Образовательных стандартов РД РБ 02100.5.113-98, РД РБ 02100.5.112-98.
^ ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
Типовая программа «Системное программное обеспечение» разработана в соответствии с Образовательным стандартом РД РБ 02100.5.113-98, РД РБ 02100.5.112-98 для специальностей Ι-40 01 01 Программное обеспечение информационных технологий и Ι-40 02 01 Вычислительные машины, системы и сети высших учебных заведений.
Целью курса является теоретическое изучение основных концепций и методов построения операционных систем (ОС) и их составных частей, ознакомление со структурой и принципами функционирования современных ОС, изучение основ теории компиляторов, получение практических навыков написания, системных утилит, элементов ОС и различных трансляторов.
Задачи изучения дисциплины:
- знать:
- общую структуру операционных систем, их классификацию, назначение и сферы применения;
- основные методы и алгоритмы управления процессами, памятью, файловыми системами и другими ресурсами;
- реализацию различных подсистем на примере реально существующих ОС (MS-DOS, Windows, UNIX);
- принципы и методы управления внешними устройствами, концепции обработки прерываний, архитектуру и разработку драйверов устройств;
- принципы и методы проектирования системных средств автоматизации разработки программного обеспечения;
- основы сетевого взаимодействия ОС ЭВМ;
- иметь представление о путях развития и усовершенствования ОС.
Данная дисциплина является одной из ключевых, как для специальности ПОИТ, так и для специальности ВМСиС. Ее изучение требует от студентов знаний, полученных ранее, и, в свою очередь, является базой для последующих курсов.
Программа составлена в соответствие требованиям образовательного стандарта и рассчитана на следующий объем:
ПОИТ - 221 учебный час (примерное распределение по видам занятий: лекции – 119 часов, лабораторные работы – 102 часа, курсовой проект);
ВМСиС - 167 учебных часов (примерное распределение по видам занятий: лекции – 100 часов, лабораторные работы – 67 часов, курсовой проект).
^
СОДЕРЖАНИЕ ДИСЦИПЛИНЫ
Тема 1. Введение в ОС
1.1. Назначение, основные этапы развития ОС.
- Современные ОС и их классификация.
1.3. Однопрограммные и мультипрограммные системы обработки данных.
- Основные принципы построения ОС.
Тема 2. Концептуальные основы ОС
2.1. Процесс, ресурс, свойства, классификация.
2.2. Концепция виртуализации.
2.3. Средства взаимодействия пользователя с ЭВМ.
2.4. Дисциплины распределения ресурсов.
- Концепция прерывания.
Тема 3. Средства, механизмы, подсистемы ОС
3.1. Подсистема управления процессами.
3.2. Средства распределения ресурсов.
3.3. Подсистема распределения оперативной памяти.
3.4. Подсистема управления вводом-выводом.
3.5. Подсистема управления данными.
Тема 4. Средства организации параллельных процессов
4.1. Основные понятия. Задачи синхронизации. Механизмы синхронизации.
4.2. Семафоры. Базовые операции. Мониторы. Рандеву.
4.3. Понятие тупиков. Их предотвращение.
4.4. Очереди сообщений и разделяемая память.
Тема 5. Организация виртуальной памяти
5.1. Структура виртуальной памяти, основные понятия и принципы виртуализации памяти.
5.2. Схема структуризации адресных пространств, основы логической организации виртуальной оперативной памяти.
5.3. Четыре задачи управления виртуальной памятью: задача размещения, задача перемещения, задача преобразования адресов, задача замещения.
5.4. Страничная и сегментная организации виртуальной памяти.
Тема 6. Управление файлами
6.1. Файловая система. Концепция управления файлами.
6.2. Создание файла и создание связи с файлом. Удаление файла и связи с файлом. Модификация файлов. Функции управления справочником.
Тема 7. Системные средства разработки ПО
7.1. Процесс компоновки, его структура.
7.2. Построение трансляторов, виды и структуры трансляторов.
7.3. Общая структура компилятора. Лексический и синтаксический анализ. Генерация кода.
7.4. Грамматики. Классификация грамматик по Хомскому.
7.5. Регулярные выражения.
- Средства автоматизации проектирования компиляторов.
Тема 8. Аппаратно-программные особенности
современных процессоров, ориентированные на поддержку многозадачных систем
8.1. Поддержка языков высокого уровня.
8.2. Управление памятью в реальном и защищенном режимах.
8.3. Дескрипторы сегментов. Команды управления памятью.
8.4. Организация защиты по данным.
8.5. Организация защиты кодов программ.
8.6. Страничная организация памяти.
8.7. Команды и структуры данных для управления в многозадачных режимах.
8.8. Организация прерываний.
Тема 9. Операционные системы с оконным графическим пользовательским интерфейсом
9.1. Понятие окна. Принципы организации графического пользовательского интерфейса.
9.2. Событийное управление программами.
9.3. Сообщения. Цикл обработки сообщений. Очередь сообщений.
9.4. Процедура обработки сообщений, ее формат и правила написания.
9.5. Синхронные и асинхронные сообщения, их передача и обработка.
9.6. Ввод данных с клавиатуры и манипулятора «мышь». Обработка сообщений мыши и клавиатуры.
Тема 10. Система графического ввода
10.1. Принципы построения графической подсистемы. Понятие контекста устройства. Механизм перерисовки окна.
10.2. Графические инструменты.
10.3. Рисование геометрических фигур. Вывод текста. Шрифты.
10.4. Управление цветом.
10.5. Логическая и физическая система координат. Режимы масштабирования.
10.6. Растровая и векторная графика. Вывод растровых изображений. Метафайлы.
Тема 11. Средства организации пользовательского
интерфейса
11.1. Окна диалога и их управляющие элементы (кнопки, списки, поля редакторов и т.д.).
11.2. Механизм буксировки экранных элементов.
11.3. Работа с буфером обмена.
- Использование средств мультимедиа.
Тема 12. Динамически подключаемые библиотеки (DLL)
12.1. Создание динамически подключаемой библиотеки. Структура DLL. Способы экспортирования процедур и функций.
12.2. Использование DLL-библиотеки в программе. Страничный и динамический импорт.
Тема 13. Средства программного взаимодействия
13.1. Технология COM. Модель составных объектов (COM). Понятие интерфейса COM-объекта.
13.2. Технология составных документов.
ПОИТ: в силу специфики специальности читаются только темы 1–3, 5, 6, 8-13.
ВМСиС: в силу специфики специальности читаются только темы 1–7 (остальные темы читаются на курсах: ПМИ, ПУ ЭВМ, ООП).
^
ПРИМЕРНЫЙ ПЕРЕЧЕНЬ ТЕМ ЛАБОРАТОРНЫХ РАБОТ
ПОИТ:
- Управление видеосистемой ПВМ. Программирование видеоадаптера в различных режимах.
- Управление манипулятором «мышь» в текстовом и графическом режимах.
- Управление файловой системой и дисковыми накопителями.
- Управление вычислительным процессом в ДОС.
- Построение резидентных программ, ориентированных на обработку прерываний.
- Реализация механизма переключения задач в защищенный режим.
- Разработка простейшей программы для Windows с помощью невизуальных и визуальных средств разработки.
- Создание средств управления движением графических объектов.
- Создание простого графического редактора.
- Вывод растровых изображений с эффектом прозрачного окна.
ВМСиС:
- Программы обслуживания файловой системы.
- Программы-фильтры.
- Обработчики прерываний.
- Драйверы устройств.
- Элементы трансляторов.
- Подсистемы параллельных процессов с использованием механизмов межпроцессного взаимодействия.
- Программы для сетевого взаимодействия.
- Системные утилиты различного назначения.
- Подсистемы диспетчеризации и планирования.
- Подсистемы управления пользователями и разделения ресурсов.
ПРИМЕРНЫЙ ПЕРЕЧЕНЬ ТЕМ КУРСОВЫХ ПРОЕКТОВ
ПОИТ:
- Разработка грамматики проблемно-ориентированного языка и транслятора с данного языка на промежуточный язык.
- Разработка операционной среды для поддержания многопрограммного режима работы с разделением времени.
- Разработка системных средств поддержки функционирования системы реального времени.
- Разработка драйверов внешних устройств.
ВМСиС:
- Драйвер для конвертирования файловых систем.
- Дисассемблер.
- Редактор накопителя на жестких магнитных дисках.
- Распределенная система управления вычислительными ресурсами многопроцессной многопользовательской среды.
- Драйвер ограничения сетевого трафика.
ПРИМЕРНЫЙ ПЕРЕЧЕНЬ КОМПЬЮТЕРНЫХ ПРОГРАММ
- Компьютерный класс, состоящий из объединенных в сеть ПЭВМ с многозадачными операционными системами (UNIX, Windows и др.).
- Набор различных инструментальных средств разработки приложений (компиляторы, ассемблеры и др.).
ЛИТЕРАТУРА
ОСНОВНАЯ
- Ахо А., Сети Р., Ульман Дж. Компиляторы: принципы, технологии и инструменты: Пер. с англ. – М.: Изд. дом "Вильямс", 2001.
- Бек Л. Введение в системное программирование. – М.: Мир, 1988.
- Беляков М.И., Рабовер Ю.И., Фридман А.Л. Мобильная операционная система:Справочник. – М.: Радио и связь, 1991.
- Вишняков В.А., Петровский А.А. Системное обеспечение микроЭВМ. – Мн.: Выш. шк., 1989.
- Гордеев А.В., Молчанов А.Ю. Системное программное обеспечение. – СПб.: Питер, 2001.
- Грибанов В.П. и др. Операционные системы: Учеб. пособие /В.П.Грибанов, С.В.Дробин, В.Д.Медведев. – М.: Финансы и статистика, 1990.
- Дейтел Р. Введение в операционные системы. В 2 т. – М.: Мир, 1987.
- Керниган Б.В., Пайк Р. UNIX – универсальная среда программирования. – М.: Финансы и статистика, 1992.
- Кинг А. Windows 95 изнутри: Пер. с англ. – СПб.: Питер, 1995.
- Костельцев А.В. Построение интерпретаторов и компиляторов. – СПб: Наука и техника, 2001.
- Крейслер С. Проектирование операционных систем для малых ЭВМ. – М.: Мир, 1989.
- Лоренс Б. Novell NetWare 4.1. в подлиннике: Пер. с англ. – СПб.: BHV – Санкт-Петербург, 1996.
- Петзолд Ч. Программирование для Windows 95: В 2 т. [Руководство для проф.]. – СПб.: BHV – Санкт-Петербург, 1996.
- Пирогов В.Ю. Assembler: Учеб. курс. – М.: Нолидж, 2001.
- Скляров В. А. Программное и лингвистическое обеспечение персональных ЭВМ: Системы общего назначения: Справ. пособие. – Мн.: Выш. шк., 1992.
- Скляров В. А. Программное и лингвистическое обеспечение персональных ЭВМ: Новые системы: Справ. пособие. – Мн.: Выш. шк., 1992.
- Соловьев Г.Н., Никитин В.Д. Операционные системы ЭВМ. - М.: Высш. шк., 1989.
- Финогенов К.Г., Рудаков П.И. Язык ассемблера: уроки программирования. – М.: Диалог-МИФИ, 2001.
- Фролов А.В., Фролов Г.В. Аппаратное обеспечение персонального компьютера – М.: Диалог-МИФИ, 1995. (Библиотека системного программиста: Т. 33).
- Хантер Р. Проектирование и конструирование компиляторов. – М.: Финансы и статистика, 1984.
- Хоар Ч. Взаимодействующие последовательные процессы. – М.: Мир, 1989.
- Чижов А.А. Системные программные средства ПЭВМ: Справочник. – М.: Финансы и статистика, СП «ПараГраф», 1990.
- Шоу А. Логическое проектирование операционных систем. – М.: Мир, 1981.
- Шульман Э. Неформальная Windows 95. – Киев: Диалектика, 1995.
- Юров В. Assembler: Практикум. – СПб.: Питер, 2001.
ДОПОЛНИТЕЛЬНАЯ
- Робачевский А.М. Операционная система UNIX. – СПб.: BHV – Санкт-Петербург, 1997.
- Пустоваров А.И. Язык ассемблера в программировании информационных и управляющих систем – М.: Энтроп; К.: Век, 1991.
- Чан Т. Системное программирование для UNIX: Пер. с англ. – Киев: BHV, 1997.
- Секунов Н.Ю. Самоучитель Visual C++ 6. – СПб.: BHV – Санкт-Петербург, 1999.
- Шагурин И.И., Бродин В.Б., Мозговой Г.П. 80386: описание и система команд. – М.: Малип, 1992.
- Краковяк С. Основы организации и функционирования ОС ЭВМ: Пер. с фр. – М.: Мир, 1988.