Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы по СПО.doc
Скачиваний:
6
Добавлен:
26.09.2019
Размер:
129.54 Кб
Скачать

2

СИСТЕМНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

Программа учебной дисциплины

и методические указания к выполнению курсовой работы

Рыбинск 2006

УДК 681.3

Тонкий Л.В. Системное программное обеспечение: Программа учебной дисциплины и методические указания к выполнению курсовой работы/РГАТА. – Рыбинск, 2006. – 23 с.

Данные методические указания предназначены для выполнения курсовой работы студентами специальности 230101 «Вычислительные машины, комплексы, системы и сети»

СОСТАВИТЕЛЬ

кандидат технических наук, профессор кафедры ВС

Тонкий Л.В.

ОБСУЖДЕНО

на заседании кафедры ВС

РЕКОМЕНДОВАНО

Методическим Советом РГАТА

Предисловие

Настоящая программа составлена в соответствии с Государственным стандартом высшего профессионального образования и Учебным планом подготовки специалиста по специальности 230101 «Вычислительные машины, комплексы, системы и сети» и предназначена для студентов заочной формы обучения по данной специальности.

Цель преподавания дисциплины – изучение структуры системного программного обеспечения и его назначения в функционировании современных вычислительных комплексов.

Задачи изучения дисциплины:

  • освоение методов управления задачами (процессами), памятью, вводом-выводом;

  • приобретение теоретических знаний и практических навыков по организации трансляторов на основе формальных языков и грамматик.

Изучение дисциплины основывается на знаниях и практических навыках, полученных студентами при изучении дисциплин: «Информатика», «Программирование на языках высокого уровня», «Программирование на Ассемблере», «Операционные системы».

Рекомендации по изучению дисциплины сводятся к тому, что в результате изучения дисциплины студент должен:

  • знать структуру и функции основных компонентов трансляторов;

  • уметь провести лексический, синтаксический и семантический анализ исходной программы;

  • помнить основные этапы перехода от программы на языке высокого уровня к размещению в памяти для исполнения программы в объектных кодах.

В соответствии с учебным планом дисциплина включает аудиторные занятия (лекции, лабораторные работы), индивидуальные консультации у преподавателя и самостоятельную работу студентов (работа с учебно-методической литературой, работа на компьютере). Студенты выполняют курсовую работу, которая подлежит защите с оценкой. Завершается дисциплина сдачей экзамена.

Программа дисциплины

  1. Введение.

1.1. Предмет и содержание курса, его место в учебном плане, взаимосвязь со смежными дисциплинами.

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

  1. Формальные языки и грамматики.

    1. Языки и цепочки символов. Способы задания языков. Понятие языка. Формальное определение языка. Синтаксис и семантика языка. Классификация языков.

    2. Формальное определение грамматик. Бэкуса-Наура форма (БНФ). Принцип рекурсии в правилах грамматики. Описание в БНФ программы на языке Паскаль.

    3. Система программирования. Понятие и структура системы программирования. Формула системы программирования. Описание формулы. Назначение составляющих формулы. Функции транслятора, генератора кода и загрузчика.

    4. Лексический анализатор (сканер). Назначение сканера, принципы построения сканеров, особенности работы сканера.

Построение лексических анализаторов.

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

    1. Основные принципы работы синтаксических анализаторов.

Назначение синтаксического анализатора. Автоматы с магазинной памятью. Методы синтаксического анализа.

Метод операторного предшествования – метод восходящего разбора. Грамматики простого предшествования. Сущность метода операторного предшествования.

Метод рекурсивного спуска – метод нисходящего разбора. Устранение левой рекурсии в методе рекурсивного спуска. Проблема альтернативного выбора.

  1. Генерация кода.

Назначение семантического анализа как этапа подготовки к генерации кода. Общие принципы генерации кода.

2.7. Процесс трансляции программ. Особенности организации эффективных программ.

Машинно-независимые особенности процесса трансляции на примере компилятора.

Основные причины машинной зависимости компиляторов. Промежуточная форма представления программ. Машинно-зависимая оптимизация кода. Оптимизация линейных участков программ.

Машинно-независимые особенности компилятор.

Статическое и динамическое распределение памяти. Машинно-независимая оптимизация кода.

2.8. Варианты построения компиляторов

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

2.9. Интерпретаторы.

2.10. Назначение и разновидности загрузчиков. Семь метод адресации команд. Структура объектного файла. Функциональное описание загрузчиков. Статическое и динамическое связывание программ. Оверлейная структура программы. Загрузка со связывающим загрузчиком. Загрузка с редактором связей.