Автор работы: Пользователь скрыл имя, 08 Июня 2014 в 20:56, контрольная работа
И в то же время он играет ключевую роль при простых действиях(просмотр Internet страниц, редактирование документа, поиск файлов и т.д.). Настройки хранящиеся в реестре определяют как Windows XP выглядит и как она себя ведет. В работе созданы 3 ключа, которые ничего не меняют в настройках ОС – они одноразового действия (создание, модификация, удаление). Цель работы простое ознакомление с реестром. С помощью сторонней программы отслеживаем изменения в реестре.
ВВЕДЕНИЕ 3
1 ПОСТАНОВКА ЗАДАЧИ 4
2 ИСХОДНЫЕ ДАННЫЕ И ПОРЯДОК ВЫПОЛНЕНИЯ 4
3 ЛИСТИНГ ПРОГРАММЫ 6
3.1 Создание ключа реестра с заданными значениями (файл CreateRegValue.inf) 6
3.2 Маскировка значения DWordValue и BinaryValue (файл ModifyRegValue.inf) 7
3.3 Удаление созданных ключей (файл DelRegValue.inf) 7
ЗАКЛЮЧЕНИЕ 9
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 10
Министерство образования и науки Российской Федерации
ФедеральноЕ государственноЕ бюджетноЕ образовательноЕ учреждениЕ высшего профессионального образования
«САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ имени академика С.П. КОРОЛЕВА
(НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ)»
ФАКУЛЬТЕТ ЗАОЧНОГО ОБУЧЕНИЯ
Кафедра космического машиностроения
КОНТРОЛЬНАЯ РАБОТА
По курсу «Операционные системы»
«Работа с реестром»
Преподаватель
Агафонова Светлана Евгеньевна
Выполнил студент группы 9631
Онучин Алексей Александрович
Самара, 2014
Реестр в Windows XP играет незаметную, но важную роль. Реестр является пассивным – это всего лишь большая коллекция настроек, хранящаяся на диске. И в то же время он играет ключевую роль при простых действиях(просмотр Internet страниц, редактирование документа, поиск файлов и т.д.). Настройки хранящиеся в реестре определяют как Windows XP выглядит и как она себя ведет. В работе созданы 3 ключа, которые ничего не меняют в настройках ОС – они одноразового действия (создание, модификация, удаление). Цель работы простое ознакомление с реестром. С помощью сторонней программы отслеживаем изменения в реестре.
Контрольная работа заключается в создании inf-файлов (скриптов) для преобразования реестра Microsoft Windows XP.
Задание состоит из трех частей:
- создание ключа реестра заданной структуры
- изменение созданного ключа реестра
- удаление созданного ключа реестра.
В качестве редактора inf-файла можно использовать блокнот, который автоматически открывается при выборе пункта «Открыть» контекстного меню файла.
Результатом выполнения каждой части практического задания должен быть inf-файл с соответствующим скриптом.
При выполнении скриптов следует использовать программу Regmon, для отслеживания изменений в реестре.
1.Создать следующие ключи и значения реестра:
(синим, жирным шрифтом выделены значения)
HKCU
|__Software
|__GroupNNN
|__Student
|__FIO
| |__FirstName
| |__SecondName
| |__Birthday
| |__Year
| |__Month
|
|__DWordValue
|__BinaryValue
NNN - номер группы, 9631
FirstName – Имя студента, Алексей
SecondName – Фамилия студента, Кирпан
Year – год рождения, 1981
Month –месяц, 1
DWordValue – значение типа REG_DWORD, вычисляется по формуле:
REG_DWORD =(0x14B5C731 + V*NNN) and 0xFFFFFFFF,
где V – номер варианта контрольной работы, 10.
Результат вычисления:
(0x14B5C731 + V*NNN) ) and 0xFFFFFFFF
(0x14B5C731 + 10*9631) ) and 0xFFFFFFFF =
1) 10*9631=96310 = 0x17836
2) 0x17836+0x14B5C731 = 0x14B73F67
3) 14B73F67 and FFFFFFFF = 14B73F67
BinaryValue – массив из 12 байтов, значения которых вычисляются по формуле:
BinaryValue[i] = (25 * V*i) and 0xFF, где i = 1..12, V – номер варианта, 10
Результат вычисления:
BinaryValue[i] = (25 * 10*i) and 0xFF, где i = 1..12
BinaryValue[i] = {0xFA, 0xF4, 0xEE, 0xE8, 0xE2, 0xDC, 0xD6, 0xD0, 0xCA, 0xC4, 0xBE, 0xB8}
После выполнения скрипта выполнить экспорт полученного ключа в reg-файл.
2. Маскировать значения DWordValue и BinaryValue:
В значении DWordValue инвертировать бит с номером V (10).
Результат вычисления:
1) 14B73F67 = 1 0100 1011 0111 0011 1111 0110 0111
2) 1 0100 1011 0111 0011 1111 0110 0111 => 1 0100 1011 0111 0011 1101 0110 0111 => 14B73D67
В значении BinaryValue инвертировать бит с номером: (NNN*V) and 0x60 (9631*10)
Результат вычисления:
1) (9631*10)=96310 или 0х17836
2) 0х17836 and 0x60 = 0х20
0х20=> BinaryValue(1, Lsh 20)=1 000 0000 (32 бит по калькулятору)
3) BinaryValue[i] = {0xFA, 0xF4, 0xEE, 0xE8, 0xE2, 0xDC, 0xD6, 0xD0, 0xCA, 0xC4, 0xBE, 0xB8}
Переворачиваем :
{0xB8, 0xBE, 0xC4, 0xCA, 0xD0, 0xD6, 0xDC, 0xE2, 0xE8, 0xEE, 0xF4, 0xFA}
Берем последние 5 значений (больше 8 калькулятор не может, нам достаточно и 5) и маскируем:
0x E2E8EEF4FA => 1110 0010 1110 1000 1110 1110 1111 0100 1111 1010
Маскируем: 1110 0011 1110 1000 1110 1110 1111 0100 1111 1010 =>
0x E3E8EEF4FA
В итоге после маскировки:
BinaryValue[i] = {0xFA, 0xF4, 0xEE, 0xE8, 0xE3, 0xDC, 0xD6, 0xD0, 0xCA, 0xC4, 0xBE, 0xB8}
После выполнения скрипта выполнить экспорт полученного ключа в reg-файл.
3. Удалить созданные в п.1 ключи и значения.
[Version]
Signature="$CHICAGO$"
SetupClass=BASE
[DefaultInstall]
AddReg=add
[add]
HKCU,"%Key%\FIO","FirstName",,
HKCU,"%Key%\FIO","SecondName",
HKCU,"%Key%\FIO\Birthday",
HKCU,"%Key%\FIO\Birthday",
HKCU,"%Key%","DWordValue",
HKCU,"%Key%","BinaryValue",1,
[strings]
Key="Software\Group9631\
Выполнение команды:
[Version]
Signature="$CHICAGO$"
SetupClass=BASE
[DefaultInstall]
AddReg=add
[add]
HKCU,"%Key%","DWordValue",
HKCU,"%Key%","BinaryValue",1,
[strings]
Key="Software\Group9631\
[Version]
Signature="$CHICAGO$"
SetupClass=BASE
[DefaultInstall]
DelReg=del
[del]
HKCU,"Software\Group9631"
В ходе работы над курсовой работой были созданы inf-файлы в обычном текстовом редакторе по готовому шаблону. В inf-файлах установлены значения в 16-тиричной системе счисления, в файле модификации произведен пересчет в двоичную систему, заменены по одному биту (одной цифре) и снова переведены в 16-тиричную систему счисления. Написанные файлы установлены в реестр, отслежены изменения в редакторе реестра (regedit.exe) и с помощью «монитора процессов». В конце работы созданные ключи реестра были удалены.