Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС / Методические рекомендации по выполнению курсовой работы.doc
Скачиваний:
123
Добавлен:
11.04.2015
Размер:
228.86 Кб
Скачать

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

Содержание задания.

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

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

Поля данных: Преподаватель (30 символов), Дисциплина (20 символов), Факультет (20 символов), Группа (10 символов), Число студентов, Дата экзамена.

Тема 3. Разработка приложения по поддержке набора данных на основе двухстороннего связного списка, хранимого в файле.

Содержание задания.

Разработать приложение по поддержке набора данных с использованием двустороннего связного списка. Связный список реализовать с использованием семейства функций HeapXXX() Win 32 API по работе с динамически распределяемой памятью (кучей). Должны поддерживаться следующие функции: добавление записи, изменение записи, удаление записи, навигация по записям (вперед, назад, выбор записи с заданным номером). Разработайте необходимый пользовательский интерфейс по работе с набором данных (поля ввода с подписями названий полей, кнопки для выполнения команд управления, метка с отображением полного количества записей и т.д.).

Удаляемые записи должны помечаться как удаленные, само же удаление записей (уборка мусора) должно производиться в отдельном фоновом потоке с низким приоритетом. Для синхронизации его с рабочим потоком использовать событие с автоматическим сбросом.

Набор данных должен записываться в файл перед закрытием приложения. Предусмотреть возможность загрузки набора данных из этого файла после открытия приложения. Для операций с файлом использовать функции управления файлами Win 32 API.

Поля данных: Студент (20 символов), Факультет (10 символов), Курс, Группа (8 символов), Дата рождения, Дата поступления.

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

Содержание задания.

Разработать приложение, подсчитывающее число символов, слов и строк в любом текстовом ANSI файле. Один рабочий поток должен считывать выбранный в диалоговом окне текстовый файл, загружая последовательно его содержимое в буфер размером в 1024 символа. Три других потока после очередной загрузки буфера должны подсчитывать, соответственно, число символов, число слов и число строк. Поток, подсчитывающий число строк в файле, должен также отображать окно содержимого файла в 15 строк в окне приложения (используйте многострочное поле ввода). Синхронизацию потоков осуществите с помощью событий со сбросом вручную. Подсчитываемые количества символов, слов и строк должны отображаться в окне программы по мере обработки буфера. Для операций с файлом использовать функции управления файлами Win 32 API. В потоки введите необходимые временные задержки. Предусмотрите в интерфейсе приложения поля ввода для задания этих временных задержек. Необходимый текстовый файл для тестирования и демонстрации работы программы можно создать в редакторе Edit, запускаемого в интерфейсе командной строки, или редакторе WordPad с выбором MS DOS формата файла.