Операционные системы. Марапулец Ю.В. - 17 стр.

UptoLike

Составители: 

Содержание отчета:
1. Цель работы;
2. Исходный текст программы;
3. Результаты работы программы (главное окно в ОС Windows);
4. Выводы по проделанной работе с указанием достоинств и недостатков
предложенного исходного кода.
ЛАБОРАТОРНАЯ РАБОТА 2
"Выделение памяти"
Цель работы: Изучение принципов разработки программы, позволяющей
резервировать и закреплять память (На примере программы List).
Задание к лабораторной работе:
1. Запустить программу List.
Результат работы программы представлен на
рис.2.1. В результате исполнения создается список, резервируется и
закрепляется виртуальная память, когда пользователь вводит новые элементы
списка. Список, заполняющий рабочую область окна, содержит перечень всех
введенных элементов. Меню List позволяет добавлять и удалять элементы
списка.
2. Рассмотреть исходный текст программы.
В файле заголовков
определены две константы, которые управляют размером и структурой списка.
Для каждого элемента списка выделено 1024 символа. Поскольку размер
системной страницы (4 Кб) кратен размеру элемента списка (1 Кб), ни один
элемент не пересечет границу между страницами. Следовательно, для чтения
любого элемента не потребуется загрузка с диска более одной страницы. В
программе List максимальный размер массива составляет 500 элементов.
Среди глобальных переменных, определенных в программе, имеется два
массива:
iListLookup и bInUse.
int iListLookup[MAX_ITEMS]; // согласует индекс элемента списка
// с его положением в массиве
BOOL bInUse[MAX_ITEMS]; // отмечает используемые элементы списка
Первый массив связывает строки списка с элементами динамического
массива. Если элемент массива iListLookup[4] равен 7, строка с номером 5 из
списка будет записана в элементе динамического массива с индексом 7. (Как в
списке, так и в динамическом массиве нумерация элементов начинается с 0.)
17
       Содержание отчета:
  1.   Цель работы;
  2.   Исходный текст программы;
  3.   Результаты работы программы (главное окно в ОС Windows);
  4.   Выводы по проделанной работе с указанием достоинств и недостатков
       предложенного исходного кода.



                        ЛАБОРАТОРНАЯ РАБОТА №2

                             "Выделение памяти"

      Цель работы: Изучение принципов разработки программы, позволяющей
резервировать и закреплять память (На примере программы List).

       Задание к лабораторной работе:

      1. Запустить программу List. Результат работы программы представлен на
рис.2.1. В результате исполнения создается список, резервируется и
закрепляется виртуальная память, когда пользователь вводит новые элементы
списка. Список, заполняющий рабочую область окна, содержит перечень всех
введенных элементов. Меню List позволяет добавлять и удалять элементы
списка.
      2. Рассмотреть исходный текст программы. В файле заголовков
 определены две константы, которые управляют размером и структурой списка.
 Для каждого элемента списка выделено 1024 символа. Поскольку размер
системной страницы (4 Кб) кратен размеру элемента списка (1 Кб), ни один
элемент не пересечет границу между страницами. Следовательно, для чтения
любого элемента не потребуется загрузка с диска более одной страницы. В
программе List максимальный размер массива составляет 500 элементов.
      Среди глобальных переменных, определенных в программе, имеется два
массива:
iListLookup и bInUse.

int iListLookup[MAX_ITEMS];      // согласует индекс элемента списка
                          // с его положением в массиве
BOOL bInUse[MAX_ITEMS];         // отмечает используемые элементы списка

     Первый массив связывает строки списка с элементами динамического
массива. Если элемент массива iListLookup[4] равен 7, строка с номером 5 из
списка будет записана в элементе динамического массива с индексом 7. (Как в
списке, так и в динамическом массиве нумерация элементов начинается с 0.)

                                        17