игра брюс 2048
Главная / Операционные системы / Внутреннее устройство ядра Linux / Тест 23

Внутреннее устройство ядра Linux - тест 23

Упражнение 1:
Номер 1
Для каких операций используется команда shell mount?

Ответ:

 (1) загрузка драйвера файловой системы 

 (2) монтирование файловой системы 

 (3) создание синонима каталога в дереве файловой системы 

 (4) изменение текущего каталога приложения 


Номер 2
Какие параметры задаются при монтировании файловой системы?

Ответ:

 (1) тип файловой системы 

 (2) файл драйвера файловой системы 

 (3) устройство, данные которого должны стать доступны 

 (4) путь к точке монтирования 


Номер 3
Как передаётся управление при вызове команды shell mount?

Ответ:

 (1) команда shell mount вызывает функцию стандартной библиотеки mount(), а та в свою очередь вызывает на прямую прерывание для работы с файловой системой 

 (2) команда shell mount вызывает функцию стандартной библиотеки mount(), a та в свою очередь вызывает системный вызов sys_mount() 

 (3) команда shell mount вызывает напрямую функцию драйвера файловой системы 

 (4) команда shell mount вызывает функцию стандартной библиотеки mount(), а та напрямую функцию драйвера файловой системы 


Упражнение 2:
Номер 1
Какие действия исполняются системным вызовом sys_mount()?

Ответ:

 (1) превращение пути к точке монтирования в dentry 

 (2) полное считывание данных монтируемого устройства 

 (3) поиск объекта file_system_type и вызов метода mount() (или get_sb()) 

 (4) установление связи между путём к точке монтирования и корнем файловой системы 

 (5) через вызов метода VFS построение полного дерева монтируемой файловой системы 


Номер 2
Как и кем используется идентификатор монтируемого устройства при монтировании файловой системы? 

Ответ:

 (1) VFS разбирает его и при необходимости вызывает тот или другой метод файловой системы 

 (2) VFS не разбирая передаёт его как аргумент в метод объекта superblock 

 (3) VFS сохраняет его как часть пути в кеше dentry 

 (4) VFS не разбирая передаёт его как аргумент в метод mount() (или get_sb()) структуры file_system_type 


Номер 3
Каким образом системна функция sys_mount использует структуру file_system_type монтируемой файловой системы? 

Ответ:

 (1) использует методы структуры для преобразования пути точки монтирования в dentry 

 (2) считывает параметры монтирования из данных структуры 

 (3) вызывает метод mount() (или get_sb()) структуры для получения объекта superblock() 

 (4) считывает параметры монтирования из полей данных структуры 


Упражнение 3:
Номер 1
Что описывает объект vfsmount? 

Ответ:

 (1) связь между точкой монтирования и корнем файловой системы 

 (2) корневой каталог файловой системы, к которой монтируется новая файловая система 

 (3) корневой каталог монтируемой файловой системы 

 (4) связь между объектом файловой системы и его синонимом 


Номер 2
Какие поля держит объект vfsmount? 

Ответ:

 (1) ссылка на dentry, к которой монтируем устройство 

 (2) флаг D_MOUNTPOINT 

 (3) ссылка на корень монтируемой файловой системы 

 (4) ссылка на superblock устройства, которое смонтировано 

 (5) ссылка на superblock устройства, которому принадлежит точка монтирования 

 (6) ссылка на родительский vfsmount 


Номер 3
Для чего используется флаг D_MOUNTPOINT? 

Ответ:

 (1) для пометки устройства, смонтированного к точке монтирования 

 (2) для пометки dentry, соответствующей точке монтирования 

 (3) для пометки суперблока файловой системы, в дереве которой есть точка монтирования другой файловой системы 

 (4) для пометки объекта vfsmount, который используется для создания синонима каталога файловой системы 


Упражнение 4:
Номер 1
Как выглядит lookup если в искомом пути задействовано несколько файловых систем? 

Ответ:

 (1) если процедура lookup встречает dentry c флагом D_MOUNTPOINT, используются методы объекта superblock смонтированной файловой системы для поиска следующего dentry 

 (2) как только процедура lookup встречает dentry c флагом D_MOUNTPOINT, VFS ищет структуру vfsmount у которой указатель на точку монтирования совпадает с этой dentry 

 (3) если процедура lookup встречает dentry c флагом D_MOUNTPOINT, текущий dentry меняется на корневой dentry соответствующего объекта vfsmount 

 (4) если процедура lookup встречает объект vfsmount c флагом D_MOUNTPOINT, используются методы объекта superblock смонтированной файловой системы для поиска следующего dentry 


Номер 2
Как ищется нужный объект vfsmount? 

Ответ:

 (1) ищется перебором в дереве vfsmount 

 (2) ищется в списке наиболее используемых объектов vfsmount 

 (3) ищется в хеш таблице vfsmount по ключу 

 (4) используется метод объекта superblock для поиска средствами файловой системы 


Номер 3
Что является ключём в hash таблице структур vfsmount?

Ответ:

 (1) dentry и родительская структура vfsmount 

 (2) объект superblock и dentry 

 (3) полный путь и объект superblock 

 (4) родительская структура vfsmount и корневая dentry файловой системы 


Упражнение 5:
Номер 1
Что выполняет команда mount c ключом --bind?

Ответ:

 (1) переназначает точку монтирования для файловой системы 

 (2) создаёт синоним каталога в дереве файловой системы 

 (3) связывает один и тот же каталог с двумя файловыми системами 

 (4) создаёт дубликат объекта superbloc файловой системы 


Номер 2
Как организуется синоним каталога, полученный в результате выполнения команды mount c ключём bind? 

Ответ:

 (1) используется механизм жёстких ссылок 

 (2) используется механизм символьный ссылок 

 (3) создаётся объект vfsmount, который ссылается на каталог, синоним которого создаётся и путь, по которому этот каталог будет доступен 

 (4) к dentry, описывающей каталог, синоним которого создаётся, добавляется ссылка на dentry каталога - синонима 


Номер 3
Может ли процедура lookup() зациклиться при выполнении поиска пути, где часть пути является синонимом каталога? 

Ответ:

 (1) да может, поэтому существуют ограничения на создание синонима каталога 

 (2) может сделать не больше одной петли, но затем текущий объект vfsmount поменяется на другой, у которого дугой набор потомков, и поиск продолжится 

 (3) нет не может, так как каждый шаг поиска валидируется вызовом метода revalidate() 

 (4) нет не может, так как есть ограничение на количество шагов поиска и если оно превышено, то поиск завершается 


Упражнение 6:
Номер 1
Счётчики ссылок на какие объекты повышает операция монтирования файловой системы?

Ответ:

 (1) родительский vfsmount 

 (2) корневая dentry монтируемой файловой системы 

 (3) inode, относящийся к корневой dentry монтируемой файловой системы 

 (4) dentry точки монтирования 

 (5) superblock монтируемой файловой системы 


Номер 2
Что является результатом операции lookup и сохраняется в структуре file (в виде ссылок)?

Ответ:

 (1) объект dentry 

 (2) пара объектов: dentry и vfsmount 

 (3) пара объектов: dentry и superblock 

 (4) объект типа vfsmount 


Номер 3
Что происходит при монтировании одной и той же файловой системы много раз? 

Ответ:

 (1) увеличивается счётчик ссылок корневой dentry 

 (2) увеличивается количество объектов superblock 

 (3) выполняется копирование dentry, относящихся к данной файловой системе 

 (4) увеличивается счётчик ссылок объекта superblock 


Упражнение 7:
Номер 1
Какая последовательность операций выполняется при операции размонтирования файловой системы? 

Ответ:

 (1) объект vfsmount отвязывается от родительской записи в дереве vfsmount 

 (2) из hash таблицы vfsmount удаляется запись, относящаяся к размонтируемой vfsmount 

 (3) в структуре vfsmount удаляется ссылка на точку монтирования 

 (4) в структуре vfsmount удаляется ссылка на superblock 

 (5) из памяти удаляется структура vfsmount, относящаяся к размонтируемой файловой системе 

 (6) из памяти удаляется superblock, относящаяся к размонтируемой файловой системе 

 (7) уменьшается количество ссылок на объект vfsmount 


Номер 2
Каков будет результат команды umount, если приложение открыло файл на размонтируемой файловой системе? 

Ответ:

 (1) файловая система будет размонтирована, приложение получит ошибку обращения к файлу 

 (2) команда umount не сможет размонтировать файловую систему и вернёт ошибку 

 (3) при использовании команды umount с ключом -l файловая система станет недоступной, только приложения открывшие там файлы смогут продолжать работать с ними. После закрытия всех файлов размонтирование завершится 

 (4) при использовании команды umount с ключом -l приложения открывшие файлы на размонтируемой файловой системе получат оповещения и вынуждены будут закрыть файлы, после чего размонтирование завершится 


Номер 3
В каком случае возможно наличие в памяти ядра корневой dentry файловой системы, не связанной с точкой монтирования? 

Ответ:

 (1) при использовании команды umount с ключом -l для файловой системы, файлы которой остались открыми приложениям до тех пор пока все файлы не будут закрыты 

 (2) при использовании команды umount для файловой системы, файлы которой остались открытыми приложениями до тех пор, пока все файлы не будут закрыты 

 (3) такое невозможно 

 (4) в случае, когда в момент размонтирования одновременно выполняется поиск lookup() в файловой системе 


Упражнение 8:
Номер 1
Каким образом и какой экземпляр объекта superblock получает VFS при повторном монтировании файловой системы? 

Ответ:

 (1) при каждом монтировании файловая система создаёт новый экземпляр структуры superblock 

 (2) при каждом монтировании VFS проверяет совпадение монтируемой файловой системы с ранее смонтированными и может выдать уже используемый экземпляр объекта superblock 

 (3) при каждом монтировании VFS вызывает метод файловой системы, который по заданному ключу возвращает новый или уже используемый объект superblock 

 (4) VFS запрещает повторное монтирование файловой системы 


Номер 2
К чему приводит флаг read-only установленный для объекта superblock или его отсутствие?

Ответ:

 (1) флаг read-only установленный для объекта superblock позволяет организовать read-only доступ к ранее смонтированной с полным доступом файловой системе 

 (2) VFS будет отказывать в выполнении операций, требующие изменения в файловой системе 

 (3) драйвер файловой системы будет отказывать в выполнении операций, требующие изменения в файловой системе 

 (4) повторное монтирование в режиме read-only файловой системы, ранее смонтированной с полным доступом не будет выполнено, будет возвращена ошибка 


Номер 3
Каким образом возможно сделать доступ к файловой системе только для чтения, если она уже смонтирована с полным доступом? 

Ответ:

 (1) повторно смонтировать файловую систему к другой точке монтирования, указав атрибут read-only 

 (2) использовать команду mount c ключом --bind и атрибутом read-only 

 (3) сделать жёсткую ссылку на корневой каталог файловой системы используя команду link 

 (4) использовать команду alias 


Упражнение 9:
Номер 1
Какие операции выполняются при выполнении системного вызова link()?

Ответ:

 (1) поиск объектов dentry, соответсвующим заданным в параметрах путям 

 (2) проверка возможности создания жёсткой ссылки для найденых пар dentry и vfsmount 

 (3) увеличение количества ссылок на объект superblock 

 (4) создание объкта inode 


Номер 2
Как проверяется возможность создания жёсткой ссылки при выполнении системного вызова link()?

Ответ:

 (1) проверяется один и тот же объект superblock для двух dentry или нет 

 (2) сравниваются соответствующие путям структуры vfsmount 

 (3) сравниваются пары dentry и vfsmount 

 (4) сравниваются пары dentry и superblock 


Номер 3
Можно ли к одной и той же точке монтирования смонтировать больше одной файловой системы?

Ответ:

 (1) нет нельзя, будет возвращена ошибка 

 (2) да можно, будут доступны данные из обоих смонтированных файловых систем 

 (3) да можно, будут доступны данные из последней смонтированной файловой системы 

 (4) да можно, ранее смонтированная файловая система будет автоматически размонтирована 




Главная / Операционные системы / Внутреннее устройство ядра Linux / Тест 23