Системное программирование | Вопросы с ответами
Системное программирование | Вопросы с ответами
1. Операционная система – это___________: + Комплекс программ - Прикладная программа + Администратор - Обеспечение - Назначение - Пользование - Сервисная программа + Менеджер ресурсов компьютера
2. Операционные системы являются ресурсами ___________ компьютера: + управления + диспетчеризация + планирование - администратор - менеджер - обеспечение - назначение - пользование
3. Операционные системы для программирования приложений Win32API: + Windows 98 - Linux + Windows 2000 - Unix + Windows ХР - Windows СЕ - Windows NT - MS DOS
4. Категории объектов ОС Windows приложении: - Windows 98 - User + Graphics Device Interface + Unix - Windows Shell + Kernel - Network Services - Base Services
5. Ресурсы принадлежащие каждому потоку в ОС Windows: - потоки интерфейса пользователя - пользовательские потоки + код исполняемой функции - потоки исполняемой функции + набор регистров процессора - библиотека общих элементов - интерфейс пользователя + стек для работы приложения
6. Действия менеджера потоков, во время переключения процессора на исполнение другого потока: - обслуживает очередь запускаемого потока + сохранить контекст прерываемого потока + восстановить контекст запускаемого потока + передать управление запускаемому потоку - управляет доступом для ОС - выполняет функции ввода и вывода - обеспечивает функции для вывода графики - обеспечивает функции для взаймодействия
7. Параметры функции CreateThread: - TerminateThread + lpThreadAttributes - AttachThreadInput - CreateProcess - CreateThread - ExitThread + dwStackSize + lpStrtAddress
8. Функции работы с процессами и потоками в Win32 API: - TerminateThread - lpThreadAttributes + AttachThreadInput + CreateProcess - ExitThread + CreateThread - dwStackSize - lpStrtAddress
9. Функция Sleep()___________: + задерживает выполнения потока - возвращает нулевое значение + удаляет поток из очереди - выполняет выход из потока - освобождает память + делает короткие паузы - завершает выполнение функций - освобождает ресурсы
10. Классификация программ в зависимости от количества определяемых ими параллельных потоков управления: - дуплексный - многозадачный + многопоточный - системный + с параллельным потоком - параллельный + однопоточный - с прямым потоком
11. Операции над потоком связанные с операционной системой: - Create + Run - Exit + Interrupt - Open + Block - Read - Write
12. Ресурсы каждого процесса ОС Windows: + виртуальное адресное пространство - код исполняемой функции + маркер доступа - набор регистров процессора - стек для работы приложения + страницы в реальной памяти - стек для работы ОС - консольный ввод
13. Объектам синхронизации первого класса в Windows, которые служат только для решения задач синхронизации параллельных потоков: + мьютекс (mutex) + событие (event) + семафор (semaphore) - ожидающий таймер - работа (job) - процесс (process) - поток (thread) - консольный ввод (console input).
14. К третьему классу синхронизации относятся объекты, которые переходят в сигнальное состояние по завершении своей работы: - мьютекс (mutex) - событие (event) + работа (job) + процесс (process) + поток (thread) - семафор (semaphore) - ожидающий таймер - консольный ввод (console input)
15. Системные объекты, созданные менеджером объектов в Win32 API: - класс - поток + события + семафор - процесс + критический раздел - приоритет потока - контекст
16. Логические комбинации флагов параметра dwDesiredAccess: + EVENT_ALL_ACCESS + EVENT_MODIFY_STATE - ACTIONS_AFTER_EVENT + SYNCHRONIZE - SEMAPHORE_ALL_ACCESS - SEMAPHORE _MODIFY_STATE - ACTIONS_BEFORE_EVENT - CREATE_NEW_CONSOLE
17. Логические комбинации флагов параметра dwDesiredAccess, определяющий доступ к семафору: - EVENT_ALL_ACCESS - EVENT_MODIFY_STATE + SYNCHRONIZE + SEMAPHORE_ALL_ACCESS - ACTIONS_AFTER_EVENT + SEMAPHORE _MODIFY_STATE - ACTIONS_BEFORE_EVENT - CREATE_NEW_CONSOLE
18. Значение функции WaitForsingieObject, в случае успешного завершения: - wait_object_р - wait_forsingie + wait_object_o - wait_object + wait_abandoned + wait_timeout - wait_exit - wait_finally
19. Прототип функции waitForMuitipieObject: + DWORD nCount + CONST HANDLE *lpHandles + BOOL bWaitAll - DWORD dwReserved - BOOL bResume - LPOVERLAPPED lpOverLapped - HANDLE hThread - DWORD IDThread
20. Значения функции waitForMuitipieobjects: + ОТ WAIT_OBJECT_0 ДО (WAIT_OBJECT_0 + nCount - 1); - ОТ WAIT_OBJECT_0 ДО (WAIT_OBJECT_0 ); - ОТ WAIT_OBJECT_0 ДО (WAIT_OBJECT_0 + nCount); + ОТ WAIT_ABANDONED_0 ДО (WAIT_ABANDONED_0 + nCount - 1); - WAIT_COMPLETION + WAIT_TIMEOUT - ОТ WAIT_ABANDONED_0 ДО (WAIT_ABANDONED_0 + nCount + 1); - ОТ WAIT_ABANDONED_0 ДО (WAIT_ABANDONED_0);
21. Состояние блока адресов в адресном пространстве: + выделен - защищен + зарезвирован + свободен - смещен - удален - копирован - прикреплен
22. Интерфейсы (API) для управления памятью: - Base Services - Common Control Library + Virtual Memory - Network Services + Memory Mapped File + Heap Memory - Windows Shell - Windows System Information
23. Куча – это___________: - объекты памяти - страница памяти + динамическая область памяти - указатель блока памяти + блок памяти - указатель строки + мелкие фрагменты памяти - указатель функции
24. Функции для управления памятью кучи: + HeapAlloc() - HeapDestroy() + HeapReAlloc() - HeapFree() - HeapSize() + HeapFree() - HeapCreate() - MapViewOfFile()
25. Форматы реального и виртуального адресов: + номер реальной страницы - номер фактической страницы - номер оперативной памяти + номер виртуальной страницы - смещение в адресной строке + смещение в реальной и виртуальной странице - файлы страницы - номер динамической страницы
26. Форматы реального и виртуального адресов: - a + r - b + v - c + d - e - k
27. Описание линейного адреса процесса в ОС Windows: + 32 бит - 16 бит + от 0х00000000 до 0хFFFFFFFF - 2 Гбайт логической памяти - 4 Гбайт виртуальной памяти - 2 Гбайт виртуальной памяти + 4 Гбайт логической памяти - от 0х00000000 до 0х0000FFFF
28. Состояние страницы процесса виртуальной памяти: - (блокирован); - (выделен) + free (свободный) - (не выделен) + committed (распределены) - (готов) - (не готов) + reserved (зарезвированый)
29. Функция файловой системы: - совместно использовать объект файла + открытие доступа к существующему файлу - выделят мелкие фрагменты файла + закрытие доступа к существующему файлу - закрепление виртуальной памяти + установка указателя файла на нужную запись - физическое или форматирование низкого уровня - разбиение диска на разделы
30. Структура и описание каталога: + древовидная - кольцевая + корневой - табличная + \ (обратная косая) - прямая - выпуклая - плоская
31. Имена каталогов и файлов не должны содержат: - + + < - * + : + / - ? - ! - .
32. Параметр dwDesiredAccess задает способ доступа к файлу и принимает значения: + 0 - FILE_SHARE_WRITE - FILE_SHARE_READ + GENERIC_READ + GENERIC_WRITE - OPEN_EXISTING - OPEN_ALWAYS - TRUNCATE_EXISTING
33. Значения параметра dwCreationDisposition при открытии файла: - 0 - FILE_SHARE_WRITE - FILE_SHARE_READ - GENERIC_READ - GENERIC_WRITE + OPEN_EXISTING + OPEN_ALWAYS + TRUNCATE_EXISTING
34. Правильная запись имени файла: + “C:\\demo_file.dat” - “C:\\demo_file.dоt” - “C:\\demo\file.dat” - “C\\demo_file.dat” + “C:\\new_file.dat” - “C:\\ new_filedat” + “C:\\back_file.dat” - “\\back_file.dat”
35. Значение функций GetFileType: - FILE_SHARE_WRITE - FILE_SHARE_READ - GENERIC_READ + FILE_TYPE_DISK + FILE_TYPE_CHAR - TRUNCATE_EXISTING + FILE_TYPE_PIPE - OPEN_ALWAYS
36. Значения параметра функции CopyFile: + lpExistingFileName - lpThreadAttributes - AttachThreadInput + lpNewFileName - dwStackSize - lpStrtAddress + bFailIfExists - TerminateThread
37. Верхние уровни, составляющие основу структуры реестра Windows: - HKEY_LOCAL - HKEY_LOCAL_WORD + HKEY_LOCAL_MACHINE + HKEY_CURRENT_USER + HKEY_CLASSES_ROOT - HKEY_CURRENT_ MACHINE - HKEY_CLASSES_ MACHINE - HKEY_CLASSES_USER
38. API функции, применяемые для выполнения операций с реестром: - RegReserverd + RegCloseKey - RegClass - RegSubKeys + RegCreateKey - RegOpen - RegQery + RegDeleteKey
39. API функции применяемые в среде Windows NT: - RegQueryValue() + RegSetKeySecurity() - RegCloseKey() - RegFlushKey() + RegGetKeySecurity() - RegLoadKey() + параметры безопасности - RegOpenKey()
40. HKey идентифицирует текущий раздел или предопределенные дескрипторы: - HKEY_LOCAL_MACHINE - HKEY_LOCAL_WORD + HKEY_CLASSES_ROOT - HKEY_CURRENT_ MACHINE - HKEY_CLASSES_USER + HKEY_CURRENT_USER - HKEY_CLASSES_ MACHINE + HKEY_USERS
41. Параметры функции WriteFile: - nNumberOfBytes - lpThreadAttributes + hFile + lpBuffer - dwStackSize - lpNewFileName - bFailIfExists + nNumberOfBytesToWrite
42. Системный вызов для файла: + chown() + lchown() - chmod - fchmod - stat() - lstat() + fchown() - read()
43. Метаданные файла связанные со временем: - st_blocks - st_dev + st_ctime - st_uid + st_atime - st_gid - st_size + st_mtime
44. Функции для перемещения файла: - lpNewFileName + replaceFile - readFile + copyFile - hFile + moveFile - write_File - delete_File
45. Механизм отображения файлов в память: + отображение содержимого файла - установка времени таймера + представление или вид файла + когерентность данных - указывать на функцию завершения - создать файловое пространство - открыть файл приложения - создать файл загрузки
46. Параметры функции CreateFileMapping (создание объекта отображающий файл в память): - lpBuffer - numberOfBytes - completionKey + flProtect - readFile + lpAttributes - waitCommEvent + hFile
47. Значения параметра flProtect : - PAGE_READ + PAGE_READONLY - PAGE_WRITEONLY + PAGE_READWRITE - PAGE_READCOPY + PAGE_WRITECOPY - PAGE_WRITE - PAGE_COPYONLY
48. Прототип функции MapViewOfFile: + HANDLE hFileMappingObject + DWORD dwFileOffsetHigh + DWORD dwFileOffsetLow - DWORD dwReserved - BOOL bResume - LPOVERLAPPED lpOverLapped - HANDLE hThread - DWORD IDThread
49. Прототип функции MapViewOfFileЕх, отображающий файл в адресное пространства с некоторого заданного виртуального адреса: + HANDLE hFileMappingObject - DWORD dwReserved + DWORD DesireAccess + LPVOID lpBaseAddress - BOOL bResume - LPOVERLAPPED lpOverLapped - HANDLE hThread - DWORD IDThread
50. Механизм отображения файлов в память: - узнать какой поток ее вызывает + файл отображен несколькими процессами - хранить указатели на захваченную память - запускать приложение + когерентность отображений + обмен данными между процессами - открыть файл приложения - создать файл загрузки
51. Функции файла stdio.h языка программирования С, создающие стандартную библиотеку ввода-вывода: - stdout— файл ввода - stlib —файлы библиотеки + stdin — стандартный файл ввода - tanh —математикалыќ шамаларды шыєаратын файл + stdout — стандартный файл вывода - strcmp —функция сравнения + stderr —файл вывода сообщения об ошибке - main— программаны орындауды бастайтын файл
52. Прототип функции DllMain: + HINSTANCE + DWORD + LPVOID - HMODULE - LPCTSTR - HANDLE - DWORD - LPCSTR
53. Параметр fdwReason может иметь одно из следующих значений, которое указывает на причину, по которой операционная система вызывает функцию DllMain: - dont_resolve_dll_references - load_library_as_datafile - load_with_altered_search_path + dll_process_attach + dll_thread_attach + dll_process_detach - case dll_process_attach - dwPrewTlsIndex= dwFirstTlsIndex
54. Прототип функции LoadLibraryEx, для загрузки динамически подключаемых библиотек: + LPCTSTR + HANDLE + DWORD - HINSTANCE - DWORD_В - LPVOID - HMODULE - LPCSTR
55. Значения параметра dwFiags, задающий флаги управления загрузкой модуля: + dont_resolve_dll_references + load_library_as_datafile + load_with_altered_search_path - dll_process_attach - dll_thread_attach - dll_process_detach - case dll_process_attach - dwPrewTlsIndex= dwFirstTlsIndex
56. Действия необходимые для статической загрузки DLL: - создать файл + поместить библиотеку и файл в каталог - хранить указатели на захваченную память - запускать приложение - узнать какой поток ее вызывает + ввести имя используемой библиотеки импорта - сопоставить каждому потоку свой указатель + описать импортируемые из DLL имена в приложении
57. Задачи динамической локальной памяти потока: - создать DLL - поместить библиотеку в каталог + хранить указатели на захваченную память - поместить файл импорта этой библиотеки в каталог + узнать какой поток ее вызывает - ввести имя используемой библиотеки импорта + сопоставить каждому потоку свой указатель - описать импортируемые из DLL имена в приложении
58. Порядок работы с локальной памятью потока: + распределение указателя - сохранить указатель - использовать указатель + работа с указателем + освобождение указателя - завершение функции - возвращает значение - запись значения
59. Динамические подключаемые библиотеки предназначены___________: + для разработки функционально-замкнутых библиотек функций + для снижения затрат на разработку ПО - для открытия файла, который будет отображаться в динамической памяти - для загрузки в адресное пространство процесса - для завершения нового потока в процессе - для сохранения файла и каталога + для уменьшения физической памяти - для перехода в адресную строку
60. Функция для работы локальной памятью потока: + TlsAlloc - LpBuffer + TlsSetValue + TlsGetValue - CompletionKey - ReadFile - NumberOfBytes - lpAttributes
61. Параметры функции CreateFileMapping (создание объекта отображающий файл в память): - lpBuffer - numberOfBytes - completionKey + flProtect - readFile + lpAttributes - waitCommEvent + hFile
62. Распределение локальной памяти потока в DLL: + case DLL_PROCESS_ATTACH - dwPrewTlsIndex= dwFirstTlsIndex - dwPrewTlsIndex= dwNextTlsIndex + dwlsIndex=TlsAlloc(); If (dwlsIndex ==-1) + break; - return 0; - dDll=LoadLibrary; - returnGetLastError();
63. Статическая локальная память: - оповещает параллельные потоки + использует спецификатор памяти declspec(thread) + определяет локальные переменные - устанавливает соединения между потоками данных - принимает записи - содержит очередь пакетов - обслуживает очередь пакетов + создает отдельный переменной
64. Значения аргумента dwCreationDisposition для создания файла: - CREATE_FILE - CREATE_THREAD + CREATE_NEW - OPEN + CREATE_ALWAYS - CREATE + OPEN_ALWAYS - CREATE_NEWFILE
65. Параметры функции для асинхронной записи данных в файл WriteFileEx: + lpBuffer - numberOfBytes - completionKey - devceIoControl - readFile + lpOverLapped - waitCommEvent + hFile
66. Прототип функции UnlockFileEx для асинхронной отмены блокировки области файла: - LONG lPeriod + HANDLE hFile - HANDLE hTimer + DWORD dwReserved - BOOL bResume + LPOVERLAPPED lpOverLapped - HANDLE hThread - DWORD IDThread
67. Функции, инициирующие посылку пакетов в порт завершения ввода-вывода: - CreateIoCompletionPort - NumberOfBytes - CompletionKey + DevceIoControl + ReadFile - NumberOfConcurrentThreads + WaitCommEvent - hFile
68. Функции, инициирующие посылку пакетов в порт завершения ввода-вывода: - CreateIoCompletionPort - NumberOfBytes - CompletionKey + ConnectNamedPipe + LockFileEx - NumberOfConcurrentThreads + TransactNamedFile - hFile
69. Порт завершения ввода-вывода: + объект синхронизации - динамическая библиотека + оповещает параллельные потоки - устанавливает соединения - принимает записи + содержит очередь пакетов - обслуживает очередь пакетов - создает параллельные потоки
70. Параметры процедуры ввода-вывода: - lpBuffer + dwErrorCode - lpCompletionRoutine - dwError + dwNumberOfBytesTrnsferred - dwRet - hFile + lpOverLapped
71. Механизм структурной обработки исключений: + не допускается использование оператора goto - допускается использование оператора goto + допускается использование функций GetExeptionCode - допускается использование оператора throw - не допускается использование функций GetExeptionCode - не допускается использование оператора throw + допускается использование функций GetExeptionInformation - не допускается использование функций GetExeptionInformation
72. Заголовок файла об обработке исключений: - string.h + windows.h - stdio.h - lm.h - sddl.h + iostream.h + float.h - math.h
73. Прототип обработки исключений с плавающей точкой: - unsigned typedef void + unsigned int _controlfp() - _se_translator_function - void se_trans_func + unsigned int new - unsigned int + unsigned int mask - unsigned code
74. Блок исключений: + _try - _search + _except - _controlfp + _finally - _exception - _handle - _function
75. Блок исключений: + _try - _search + _except - _controlfp + _leave - _exception - _handle - _function
76. Параметры функции RaiseException: + lpNewFileName - dwExceptionFlag - setHandleInformation + nNumberOfArguments + lpArguments - hReadPipe - write_File - delete_File
77. Значения параметра new для управления исключениями: + _EM_DENORMAL - _EM_FUNCTION - _EM_TRANSLATION + _EM_OVERFLOW - _EM_BYZERO - _EM_FLOAT - _EM_WORD + _EM_ZERODIVIDE
78. Функция-транслятор___________: + преобразовывает исключения - реализует исключения + использует инструкцию throw языка С++ - возвращает начальные значения - завершает выполнение блока - начинает раскрутку стека + описывается в заголовочном файле eh.h - использует функцию _leave
79. Элементы безопасности объектов Win32: - создает маркер доступа + поддержка защищенных каналов - разрешает доступ к каналу - создает аудит доступа к объекту + поддержка интеллектуальных карточек - изменяет информацию безопасности + встроенная поддержка функций АРI - следит за изменениями потока
80. Функции интеллектуальных карточек: - поддержка защищенных каналов + аутентификация пользователей + проведение финансовых операции - разрешает доступ к каналу - создает аудит доступа к объекту - изменяет информацию безопасности - встроенная поддержка функций АРI + хранение информации о человеке
81. Режимы доступа к объектам: + R, W; - RA + WA; - СA - WR + WC; - RW - CW
82. Модели управления в дискреционной модели безопасности: + иерархическое управление - дистанционное управление - сетевое управление + либеральное управление - доступное управление + централизованное управление - серверное управление - древовидное управление
83. Основные функции списка управления доступами: + создается владельцем объекта - создается сервером - запрещает доступ к объекту - создается операционной системой + открывает требуемый доступ к объекту + хранится в виде списка - ограничивает код доступа - используется сервером
84. Идентификатор безопасности (Security Identifier): + создается операционной системой - создается сервером - хранится в оперативной памяти + хранится в базе данных SAM - хранится в логической памяти - представляет учетную запись + бинарное представление учетной записи - создает учетную запись
85. Символы обозначающие идентификатор безопасности: - A + S + R + I - T - F - L - M
86. Дескрипторы безопасности, известные на платформах Windows: - R -1-5-1 + S-1-5-1 - R -1-5-5 - S -1-5-17 + S -1-5-10 - I-1-5-16 + S -1-5-18 - S-1-5-20
87. Главное отличие привилегий от прав доступа ___________: - права доступа ограничивает доступ субъекта к объектам - никаких отличии привилегий от прав доступа + правами доступа к объекту управляет владелец этого объекта + привилегии касаются субъектов, а не охраняемых объектов системы - привилегии назначаются по умолчанию в операционных системах Windows - привилегии касаются охраняемых объектов системы + привилегии назначаются субъектам администратором системы - права доступа выполнить некоторое действие по отношению объектам системы
88. Информация сохраненная в маркере доступа: - SID учетной записи пользователя + идентификатор безопасности текущей сессии (logon session) - каждое сообщение содержит информацию о субъекте - статистическая информация о маркере доступа + содержит информацию о субъекте, который выполнил действие - хранятся учетные записи пользователей и групп + данные, определяющие политику безопасности на локальной машине - базу данных учетных записей
89. Уровни безопасности потока-сервера для обработки запросов потока-клиента: + Security Anonymous level + Security Identification level + Security Impersonation level - Security Delegation - Security Reference Monitor - Security Account Manager - Security Accounts Database - Security_attributes
90. Уровни безопасности потока-сервера для обработки запросов потока-клиента: + Object Open - ObjectType + Object Deleted - Object_inherit - pObjectName + Object Open for Delete - se_file_object - ObjectSecurity
91. Виды связей между процессами-отправителями и адресатами: - между собой связаны три процесса + между собой связаны только два процесса - между собой связаны четыре процесса - один процесс связан с N-1 процессами - один процесс связан с N+1 процессами + один процесс связан с N процессами - нет связи между процессами + каждый из N процессов связан с одним процессом
92. Топология связей между процессами: - между собой связаны три процесса - между собой связаны четыре процесса + между собой связаны только два процесса - один процесс связан с N-1 процессами + один процесс связан с N процессами - один процесс связан с N+1 процессами - нет связи между процессами + каждый из N процессов связан с одним процессом
93. Тип вместимости связи между процессами (буферизации): - ограниченная связь - открытый тип вместимости связи + нулевая вместимость связи - закрытая вместимость связи + ограниченная вместимость связи + неограниченная вместимость связи - каждый из процессов связан с одним процессом - первичный вместимость связи
94. Размер значения именованного канала, посылающий сообщение к серверу: + нулевая вместимость связи - каждый из процессов связан с одним процессом - первичный вместимость связи - закрытая вместимость связи - параллельная связь вместимости + неограниченная вместимость связи - каждый из N процессов связан с одним процессом + ограниченная вместимость связи
95. Анонимные каналы: + не имеют имени - имеют названия + полудуплексные - дуплексные + передают данные потоком - не передает данные - устанавливают связи - доступны
96. Функции соединения клиентов анонимными каналами: - CreatePipe + DuplicateHandle - WriteFile - hWritePipe - hReadPipe + SetHandleInformation - ReadFile + CreateProcess
97. Способы передачи наследуемого дескриптора процессу-клиенту анонимного канала: + через командную строку - синхронный обмен + через файл - топологическая связь - основе wm_copydata - с помощью сервер - через канал + посредством сообщения wm_copydata
98. Функции описанные в файле stdio.h, обеспечивают ввод-вывод в стандартные файлы: - printf + stdin + stdout - scanf - stdopen + stderr - stdcreate - cin
99. Прототип именованных каналов: - stdin + lpName + dwOpenMode - scanf - stdout + dwPipeMode - stdcreate - cin
100. Флаги, для определения направления передачи данных: + pipe_access_duplex - pipe_name - nOutBufferSize - nDefaultTimeOut + pipe_access_inbound + pipe_access_outbound - dwOpenMode - dwPipeMode
|