Главная страница
Навигация по странице:

  • Название атрибута перевод значение

  • Лекция 1 Введение в системное программное обеспечение


    Скачать 0.9 Mb.
    НазваниеЛекция 1 Введение в системное программное обеспечение
    Дата14.05.2022
    Размер0.9 Mb.
    Формат файлаdoc
    Имя файлаf66a995.doc
    ТипЛекция
    #528406
    страница3 из 10
    1   2   3   4   5   6   7   8   9   10

    Лекция 3: Объекты ядра операционной системы

    Процесс (информатика)


    Проце́сскомпьютерная программа, находящаяся в стадии выполнения на компьютерной системе, способной выполнять несколько компьютерных программ параллельно. Стандарт ISO 9000:2000 Definitions определяет процесс как совокупность взаимосвязанных и взаимодействующих действий, преобразующих входящие данные в исходящие.

    Компьютерная программа сама по себе это только пассивная совокупность инструкций, в то время как процесс - это непосредственное выполнение этих инструкций.

    Часто процессом называют выполняющуюся программу и все её элементы: адресное пространство, глобальные переменные, регистры, стек, открытые файлы и т.д.

    Создание процесса


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

    - при запуске ОС,

    - при появлении запроса на создание процесса - происходит в случае, если работающий процесс создает новый процесс.

    Завершение процесса


    Завершение процесса происходит как:

    - обычный выход

    - выход по исключению или ошибке

    Литература


    Э. Таненбаум, А. Вудхалл. «Операционные системы: Разработка и реализация.» — СПб.: 2006. — ISBN 5-469-00148-2

    Э. Таненбаум. «Современные операционные системы. 2-е изд.» — СПб.: Питер, 2005. — 1038 с.: ил. ISBN 5-318-00299-4

    Файл


    Файл (англ. file — папка, скоросшиватель) — концепция в вычислительной технике: сущность, позволяющая получить доступ к какому-либо ресурсу вычислительной системы и обладающая рядом признаков:

    • фиксированное имя (последовательность символов, число или что-то иное, однозначно характеризующее файл)

    • определенное логическое представление и соответствующие ему операции чтения/записи

    Может быть любой — от последовательности бит до базы данных с произвольной организацией или любым промежуточным вариантом.

    Первому случаю соответствуют операции чтения/записи потока и/или массива (то есть последовательные или с доступом по индексу), второму — команды СУБД. Промежуточные варианты - чтение и разбор всевозможных форматов файлов.

    В отличие от переменной, файл (в частности, его имя) имеет смысл вне конкретной программы. Работа с файлами — по крайней мере, в «простейшем» представлении — реализуется средствами операционных систем, а до их появления реализовывалась их предшественниками — мониторами и библиотеками подпрограмм.

    Ресурсами, доступными через файлы, в принципе, может быть что угодно, представимое в цифровом виде. Чаще всего в их перечень входят:

    • области данных (не обязательно на диске)

    • устройства (как физические, так и виртуальные)

    • потоки данных (в частности, вход или выход другого процесса)

    • сетевые ресурсы

    • объекты операционной системы

    Файлы первого типа исторически возникли первыми и распространены наиболее широко, поэтому часто «файлом» называют и область данных, соответствующую имени.

    Файловая система


    По мере развития вычислительной техники файлов в системах становилось все больше. Для удобства работы с ними их, как и другие данные, стали организовывать в структуры (тогда же появились символьные имена). Вначале это был простой массив, «привязанный» к конкретному носителю информации. В настоящее время наибольшее распространение получила древовидная организация с возможностью монтирования и вставки дополнительных связей (т. е. ссылок). Соответственно, имя файла приобрело характер пути к файлу: перечисление узлов дерева файловой системы, которые нужно пройти, чтобы до него добраться.

    Файл как объект API операционной системы


    Операционная система предоставляет приложениям набор функций и структур для работы с файлами. Возможности операционной системы накладывают дополнительные ограничения на ограничения файловой системы. С точки зрения API файл — объект, по отношению к которому могут быть применены функции этого API. На уровне API уже не существенно, существует ли файл как объект файловой системы или является, например, устройством ввода/вывода.

    Свойства файла


    В зависимости от файловой системы, файл может обладать различным набором свойств.

    Имя файла


    В большинстве файловых систем имя файла используется для указания к какому именно файлу производится обращение. В различных файловых системах ограничения на имя файла сильно различаются:

    • В FAT16 и FAT12 размер имени файла ограничен 8 символами (3 символа расширения).

    • В VFAT ограничение 255 байт.

    • В FAT32, HPFS имя файла ограниченно 255 символами

    • В NTFS имя ограничено 254 символами Unicode

    • В ext2/ext3 ограничение 255 байт.

    Помимо ограничений файловой системы, интерфейсы операционной системы дополнительно ограничивают набор символов, который допустим при работе с файлами.

    • Для MS-DOS в имени файла допустимы только заглавные буквы, цифры. Не допустим пробел, знак вопроса, звёздочка, символы больше/меньше, символ вертикальной черты.[1]. При вызове системных функций именами файлов в нижнем или смешанном регистре, они приводятся к верхнему регистру.

    • Для Microsoft Windows в имени файла разрешены заглавные и строчные буквы, цифры, некоторые знаки препинания, пробел. Запрещены символы «>», «<», «|», «?», «*», «/», «\», «:», «"».

    • Для GNU/Linux (с учётом возможности маскировки) разрешены все символы, кроме «/» и нулевого байта.

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

    Расширение имени файла


    Расширение имени файла (часто расширение файла или расширение) как самостоятельный атрибут файла существовал в файловых системах FAT16, FAT12, и использовался для определения типа файла. В остальных файловых системах расширение — условность, часть имени, отделённая самой правой точкой в имени.

    Атрибуты


    В некоторых файловых системах предусмотрены атрибуты (обычно это бинарное значение «да»/«нет», кодируемое одним битом). Практически атрибуты не влияют на возможность доступа к файлам, для этого в некоторых файловых системах существуют права доступа.

    Название атрибута

    перевод

    значение

    файловые системы

    операционные системы

    READ ONLY

    только для чтения

    в файл запрещено писать

    FAT32, FAT12, FAT16, NTFS, HPFS, VFAT

    DOS, OS/2, Windows

    SYSTEM

    системный

    критический для работы операционной системы файл

    FAT32, FAT12, FAT16, NTFS, HPFS, VFAT

    DOS, OS/2, Windows

    HIDDEN

    скрытый

    файл скрывается от показа, пока явно не сказано обратное

    FAT32, FAT12, FAT16, NTFS, HPFS, VFAT

    DOS, OS/2, Windows

    ARCHIVE

    архивный(требующий архивации)

    файл изменён после резервного копирования или не был скопирован программами резервного копирования

    FAT32, FAT12, FAT16, NTFS, HPFS, VFAT

    DOS, OS/2, Windows

    Время


    Для файла могут быть определены следующие временные метки:

    • Время создания

    • Время модификации

    • Время последнего доступа

    Владелец и группа файла


    В некоторых файловых системах предусмотрено указание на владельца файла, и группу владельца.

    Права доступа


    В некоторых файловых системах предусмотрена возможность для ограничения доступа пользователей к содержимому файла

    В UNIX-подобных операционных системах для файлов обычно выделяют три типа прав:

    • Право на запись

    • Право на чтение

    • Право на выполнение

    Каждое право задаётся раздельно для владельца, для группы и для всех остальных. ACL позволяют расширить этот список.

    В операционных системах Windows NT при работе с файловой системой NTFS права доступа задаются явно для пользователей или групп (или наследуются от вышестоящих объектов). Права в себя включают:

    • Право на чтение

    • Право на запись

    • Право на исполнение

    • Право на удаление

    • Право на смену атрибутов и владельца

    • Право на создание, удаление подпапок (для папок)

    • Право на чтение прав доступа

    Каждое право может быть задано как разрешением, так и запретом, запрет имеет больший приоритет, чем разрешение.

    Операции с файлом


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

    Операции, связанные с открытием файла


    В зависимости от операционной системы те или иные операции могут отсутствовать.

    Обычно выделяют дополнительные сущности, связанные с работой с файлом:

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

    • файловый указатель. Число, являющееся смещением относительно нулевого байта в файле. Обычно по этому адресу осуществляется чтение/запись, в случае, если вызов операции чтения/записи не предусматривает указание адреса. При выполнении операций чтения/записи файловый указатель смещается на число прочитанных (записанных) байт. Последовательный вызов операций чтения таким образом позволяет прочитать весь файл не заботясь о его размере.

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

    • режим доступа. В зависимости от потребностей программы, файл может быть открыт на чтение и/или запись. Кроме того, некоторые операционные системы (и/или библиотеки) предусматривают режим работы с текстовыми файлами. Режим обычно указывается при открытии файла.

    • режим общего доступа. В случае многозадачной операционной системы возможна ситуация, когда несколько программ одновременно хотят открыть файл на запись и/или чтение. Для регуляции этого существуют режимы общего доступа, указывающие на возможность осуществления совместного доступа к файлу (например, файл в который прозводится запись может быть открыт для чтения другими программами - это стандартный режим работы log-файлов).

    Операции

    • Открытие файла (обычно в качестве параметров передается имя файла, режим доступа и режим совместного доступа, а в качестве значения выступает файловый хэндлер или дескриптор), кроме того обычно имеется возможность в случае открытия на запись указать на то, должнен ли размер файла изменяться на нулевой.

    • Закрытие файла. В качестве аргумента выступает значение, полученное при открытии файла. При закрытии все файловые буферы сбрасываются.

    • Запись — в файл помещаются данные.

    • Чтение — данные из файла помещаются в область памяти.

    • Перемещение указателя — указатель перемещается на указанное число байт вперёд/назад или перемещается по указанному смещению относительно начала/конца. Не все файлы позволяют выполнение этой операции (например, файл на ленточном накопителе может не «уметь» перематываться назад).

    • Сброс буферов — содержимое файловых буферов с незаписанной в файл информацией записывается. Используется обычно для указание на завершение записи логического блока (для сохранения данных в файле на случай сбоя).

    • Получение текущего значения файлового указателя.

    Операции, не связанные с открытием файла


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

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

    Список операций с файлами

    • Удаление файла

    • Переименование файла

    • Копирование файла

    • Перенос файла на другую файловую систему/носитель информации

    • Создание симлинка или хардлинка

    • Получение или изменение атрибутов файла

    Типы файлов


    В различных операционных системах и/или файловых системах могут быть реализованы различные типы файлов; так же может различаться реализация различных типов.

    • «Обыкновенный файл» — файл, позволяющий операции чтения, записи, перемещения внутри файла

    • Директория (англ. directory — алфавитный справочник, часто переводится как каталог) — файл, содержащий в себе записи о других файлах. Директории могут содержать записи о других директориях, образуя древовидную структуру.

    • Жесткая ссылка (англ. hardlink, часто используется калька хардлинк) — в общем случае одна и та же область информации может иметь несколько имён, указывающих на одни и те же данные. В этом случае такие имена называют жесткими ссылками (хардлинками). В общем случае после создания хардлинка сказать кто «настоящий» файл а кто хардлинк невозможно, так как имена равноправны; а область данных существует до тех пор пока существует хотя бы одно из имён. Хардлинки возможны только на одном физическом носителе.

    • Символьная ссылка (cимлинк, софтлинк) — файл, содержащий в себе ссылку на другой файл или директорию. Может ссылаться на любой элемент файловой системы, в том числе, и расположенный на другом физическом носителе.

    Примечания


    1. ↑ http://support.microsoft.com/kb/100108/EN-US/

    См. также


    • Список форматов файлов

    • Файловая система

    • Операционная система

    • Файлообменные программы

    • Атрибуты файла

    • ACL

    • Временный файл

    • Текстовый файл

    • Двоичный файл

    • Разреженный файл

    • Исполнимый модуль

    • Заголовочный файл

    • Файл регистрации

    • Файл конфигурации

    • README-файл

    • Пакетный файл
    1   2   3   4   5   6   7   8   9   10


    написать администратору сайта