Известно, что в иноде unIX-подобных ос не содержится имя файла. Где его хранит система. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Известно, что в иноде unIX-подобных ос не содержится имя файла. Где его хранит система.



 

Файловая система организована в виде дерева с одной исходной вершиной, которая называется корнем (записывается: '/'); каждая вершина в древовидной структуре файловой системы, кроме листьев, является каталогом файлов.

Каталог - это файл, содержимым которого является набор записей, состоящих из номера инода и имени файла, включенного в каталог.

Вообще то, понятие инода (inode) относится к файловой системе, а не к операционной системе, и, уж тем более, имя файла хранит не операционная система, а файловая система.

Поиск файла осуществляется следующим образом:

Суперблок → №инода корневого каталога → корневой каталог → №инода каталога → инод каталога → №инода файла → инод файла → файл

 

Для более объемного ответа используйте ответ на практический вопрос №3 – можно содрать про обе файловые системы.

 

 


Назовите причины назначения разного уровня приоритетов у прерываний? Как эти приоритеты сказываются на работе системы со стеком контекстных слоев?

Ядро иногда обязано предупреждать возникновение прерываний во время критических действий, могущих в случае прерывания запортить информацию. Например, во время обработки списка с указателями возникновение прерывания от диска для ядра нежелательно, т.к. при обработке прерывания можно запортить указатели, что можно увидеть на примере в следующей главе. Обычно имеется ряд привилегированных команд, устанавливающих уровень прерывания процессора в слове состояния процессора. Установка уровня прерывания на определенное значение отсекает прерывания этого и более низких уровней, разрешая обработку только прерываний с более высоким приоритетом. На Рисунке показана последовательность уровней прерывания. Если ядро игнорирует прерывания от диска, в этом случае игнорируются и все остальные прерывания, кроме прерываний от часов и машинных сбоев.

 

 

По получении сигнала прерывания ядро операционной системы сохраняет свой текущий контекст (застывший образ выполняемого процесса), устанавливает причину прерывания и обрабатывает прерывание. После того, как прерывание будет обработано ядром, прерванный контекст восстановится и работа продолжится так, как будто ничего не случилось.

Устройствам обычно приписываются приоритеты в соответствии с очередностью обработки прерываний. В процессе обработки прерываний ядро учитывает их приоритеты и блокирует обслуживание прерывания с низким приоритетом на время обработки прерывания с более высоким приоритетом.

Обработка прерываний:

Системный вызов

Системный вызов можно рассматривать как внутреннее прерывание операционной системы.

Алгоритм системного вызова: 1. найти запись в таблице системных функций; 2. определить число параметров и скопировать их из адресного пространства задачи; 3. сохранение контекста; 4. запуск системного вызова; 5. номер ошибки записывается в регистр общего назначения; 6. возврат

Ядро помещает контекстный слой, когда возникает прерывание или программа делает системный вызов. Ядро выталкивает контекстный слой, когда происходит завершение обработки прерывания либо возврат в режим задачи.

Переключение контекста

∙ процесс переходит в состояние сна;

∙ процесс делает системный вызов еxit и завершает работу;

∙ процесс переходит в режим задачи после обработки прерывания;

∙ процесс переходит в режим задачи после системного вызова.



Поделиться:


Последнее изменение этой страницы: 2019-05-20; просмотров: 65; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.150.163 (0.005 с.)