Для получения оценки хорошо
, необходимо написать одностраничный ответ на вопрос
из второго столбца. Для получения оценки отлично
, необходимо дополнительно написать
одностраничный ответ на вопрос из третьего столбца с примерами фрагментов кода.
Эти условия не касаются тех, кто не делал лабораторные работы или сдал меньше трёх лабораторных работ,
такие студенты на экзамене борются за получение тройки.
Номер | Теория | Практика |
---|---|---|
1 | Кодировка символов, поддержка многоязыковых программ | Описать функцию для экспорта из DLL. Описать точку входа в DLL. |
2 | Объекты ядра, наследование | Открыть файл, записать в него строку ABCDEF. Проверить на возможные ошибки все системные вызовы. |
3 | Порождение дочерних процессов | Заставить процесс запустить свою копию. Убедитесь, что порождение процессов не будет бесконечным (остановитесь на 3 процессе). |
4 | Порождение нового потока | Запустить 10 потоков, передав каждому потоку в качестве параметра его номер в коллективе потоков. Каждый поток должен вывести свой номер. Процесс должен ожидать завершения всех 10 потоков. |
5 | Атомарный доступ к переменным | Создать ловушку для всех оконных сообщений в системе. |
6 | Критические секции кода | Зарегистрировать критическую секцию в главном потоке программы, использовать ее для обрамления секции кода в другом потоке. |
7 | Передача сообщений другому потоку | Создать второй поток, послать ему десять сообщений. Во втором потоке организовать обработку приходящих сообщений и вывод информации. |
8 | События и синхронизация | Заставьте один поток ожидать события от другого потока. |
9 | Разделы виртуальной памяти | Зарезервировать регион памяти размером 1 Мб, начиная с адреса 0x08560000, выделить из него 128 Кб памяти. |
10 | Проецирование файла в память | Записать строку ABCDEFв файл, используя отображение в память. |
11 | Создание приватных куч | Создайте приватную кучу без упорядочения обращений. Выделите из новой кучи 1 Мб памяти, затем освободите его. |
12 | Загрузка DLL | Загрузите библиотеку OpenGL32.dll. Импортируйте из нее адрес функции glBegin. |
13 | Работа с TLS-памятью. | Зарезервируйте TLS-слот. Запишите 32-разрядное значение в этот слот, попробуйте его прочитать. |
14 | Обработка исключительных ситуаций | Создать оболочку последней линии обороны вокруг всех функций потоков (для исследования предсмертной информации о процессе) |