Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОС 2010 точные ответы.docx
Скачиваний:
9
Добавлен:
14.09.2019
Размер:
432.38 Кб
Скачать

30. Каталоги и файлы

В большинстве операционных систем (включая систему Linux) используется понятие файла (file).

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

Файлы различаются по своим именам. Например, свой файл с работой по истории вы можете назвать history-paper. В этих случаях имя файла выбирается таким, чтобы оно каким-то образом характеризовало содержимое данного файла. Для имен файлов нет такого стандартного формата, какой есть в системе MS-DOS и в некоторых других операционных системах. В принципе, имя файла может содержать любые символы (за исключением символа / -- смысл этого символа будет разъяснен ниже). Длина имени файла ограничена 256 знаками.

Понятие файла тесно связано с понятием каталога (directory). Каталог -- это набор файлов. Каталог может рассматриваться как "папка", в которой содержится много различных листов. Каталогам даются имена, по которым их можно распознавать. Кроме этого, каталоги образуют структуру типа дерева; иными словами, каталоги могут содержать внутри себя другие каталоги.

Как следствие, к файлу можно обращаться, указывая путь (path) к этому файлу. Путь состоит из имени каталога, за которым пишется имя файла. Пусть, например, пользователь Лэрри имеет каталог papers, в которой содержится три файла: history-final, english-lit, masters-thesis. Каждый из этих трех файлов содержит информацию о трех работах, которыми в данный момент занимается Лэрри. Чтобы обратиться к файлу english-lit, Лэрри может указать путь к файлу, например, следующим образом:

papers/english-lit

При указании пути, как можно увидеть, имена каталога и файла разделяются символом /. По этой причине имена файлов не могут содержать этот символ. Пользователям системы MS-DOS будет знакома эта система обозначений, хотя в системе MS-DOS вместо символа / используется так называемый "обратный слэш" (\).

Как указывалось выше, каталоги могут быть вложены друг в друга. Пусть, например, в одном каталоге papers имеется другой каталог с именем notes. Каталог notes содержит файлы math-notes и cheat-sheet. Путь к файлу cheat-sheet представляется следующим образом:

papers/notes/cheat-sheet

Мы видим, что путь к файлу напоминает описание пути в лабиринте. Каталог, который содержит данный подкаталог, обычно называется родительским каталогом (parent directory). В данном примере каталог papers является родительским для каталога notes.

31. Прерывания. Механизм обработки прерываний.

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

Кажется очевидным, что возможны самые разнообразные прерывания по самым различным причинам. Поэтому прерывание рассматривается не просто как таковое: с ним связывают число, называемое номером типа прерывания или просто номером прерывания. С каждым номером прерывания связывается то или иное событие. Система умеет распознавать, какое прерывание, с каким номером оно произошло, и запускает соответствующую этому номеру процедуру.

Программы могут сами вызывать прерывания с заданным номером. Это так называемые программные прерывания. Программные прерывания не являются асинхронными, так как вызываются из программы.

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

Аппаратные прерывания вызываются физическими устройствами и приходят асинхронно. Эти прерывания информируют систему о событиях, связанных с работой устройств, например о том, что наконец-то завершилась печать символа на принтере и неплохо, было бы выдать следующий символ, или о том, что требуемый сектор диска уже прочитан, его содержимое доступно программе.

Использование прерываний при работе с медленными внешними устройствами позволяют совместить ввод/вывод с обработкой данных в центральном процессоре и в результате повышает общую производительность системы.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]