Файл: Термин информация происходит от латинского informatio, означающего.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 04.02.2024
Просмотров: 92
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
- это система хранения файлов и организации каталогов.
Для дисков с небольшим количеством файлов (до нескольких десятков) удобно применять одноуровневую файловую систему, когда каталог (оглавление диска) представляет собой линейную последовательность имен файлов. Для отыскания файла на диске достаточно указать лишь имя файла.
Если на диске хранятся сотни и тысячи файлов, то для удобства поиска файлы организуются в многоуровневую иерархическую файловую систему, которая имеет «древовидную» структуру (имеет вид перевернутого дерева).
Начальный, корневой, каталог содержит вложенные каталоги 1-го уровня, в свою очередь, в каждом из них бывают вложенные каталоги 2-го уровня и т. д. Необходимо отметить, что в каталогах всех уровней могут храниться и файлы.
Для облегчения понимания этого вопроса воспользуемся аналогией с традиционным «бумажным» способом хранения информации. В такой аналогии файл представляется как некоторый озаглавленный документ (текст, рисунок и пр.) на бумажных листах. Следующий по величине элемент файловой структуры называется каталогом. Продолжая «бумажную» аналогию, каталог будем представлять как папку, в которую можно вложить множество документов, т.е. файлов. Каталог также получает собственное имя (представьте, что оно написано на обложке папки).
Каталог сам может входить в состав другого, внешнего по отношению к нему каталога. Это аналогично тому, как папка вкладывается в другую папку большего размера. Таким образом, каждый каталог может содержать внутри себя множество файлов и вложенных каталогов (их называют подкаталогами). Каталог самого верхнего уровня, который не вложен ни в какие другие, называется корневым каталогом.
А теперь полную картину файловой структуры представьте себе так: вся внешняя память компьютера — это шкаф с множеством выдвижных ящиков. Каждый ящик — аналог диска; в ящике — большая папка (корневой каталог); в этой папке множество папок и документов (подкаталогов и файлов) и т.д. Самые глубоко вложенные папки хранят в себе только документы (файлы) или могут быть пустыми.
Путь к файлу. Для того чтобы найти файл в иерархической файловой структуре необходимо указать путь к файлу. В путь к файлу входят записываемые через разделитель "\" логическое имя диска и последовательность имен вложенных друг в друга каталогов, в последнем из которых находится данный нужный файл.
Например, путь к файлам на рисунке можно записать так:
C:\Рефераты\
C:\Рефераты\Физика\
C:\Рефераты\Информатика\
C:\Рисунки\
Полное имя файла.
Путь к файлу вместе с именем файла называют полным именем файла.
Пример полного имени файлов:
C:\Рефераты\Физика\Оптические явления.doc
C:\Рефераты\Информатика\Интернет.doc
C:\Рефераты\Информатика\Компьютерные вирусы.doc
C:\Рисунки\Закат.jpg
C:\Рисунки\ Зима.jpg
В операционной системе Windows вместо каталогов используется понятие «папка». Папка – это объект Windows, предназначенное для объединения файлов и других папок в группы. Понятие папки шире, чем понятие «каталог».
В Windows на вершине иерархии папок находится папка Рабочий стол. (Следующий уровень представлен папками Мой компьютер, Корзина и Сетевое окружение (если компьютер подключен к локальной сети).
Если мы хотим ознакомиться с ресурсами компьютера, необходимо открыть папку Мой компьютер.
С файлами и папками можно выполнить ряд стандартных действий.
Такие действия с файлами, как «создать», «сохранить», «закрыть» можно выполнить только в прикладных программах («Блокнот», «Paint», …).
Действия «открыть», «переименовать», «переместить», «копировать», «удалить» можно выполнить в системной среде.
• Копирование (копия файла помещается в другой каталог);
• Перемещение (сам файл перемещается в другой каталог);
• Удаление (запись о файле удаляется из каталога);
• Переименование (изменяется имя файла).
Графический интерфейс Windows позволяет производить операции над файлами с помощью мыши с использованием метода Drag&Drop (тащи и бросай). Существуют также специализированные приложения для работы с файлами, так называемые файловые менеджеры.
Операционная система Windows. Основные объекты и приемы управления Windows.
На сегодняшний день наиболее популярными являются операционные системы семейства Windows, которые являются проприетарным (коммерческим) продуктом корпорации Microsoft.
Свою «родословную» Windows начинают от операционной системы DOS и первоначально представляли собой надстраиваемые над ней оболочки (Windows запускался из под DOS), увеличивающие возможности DOS и облегчающие неподготовленному пользователю работу с компьютером. Уже более поздние версии (начиная с Windows NT) представляли собой полноценные операционные системы.
Преимуществом Windows считается дружественный для пользователя интерфейс. Из недостатков отмечают ненадежность системы.
Linux представляет собой множество Unix-подобных операционных систем (дистрибутивов), которые чаще всего являются свободно распространяемыми.
Одной из уникальных особенностей систем GNU/Linux является отсутствие единого географического центра разработки. Linux и программы для нее пишутся миллионами программистов, рассредоточенных по всему миру.
История возникновения
Система Linux возникла как вариант операционной системы UNIX, предназначенный для персональных компьютеров с IBM-совместимой архитектурой. Первоначальная версия была написана Линусом Торвальдсом (Linus Torvalds), финским студентом, изучающим теорию вычислительных машин. В 1991 году Торвальдс представил в Internet первую версию системы Linux. С тех пор множество людей, сотрудничая посредством Internet, развивают Linux под руководством ее создателя. Благодаря тому что система Linux является бесплатной и можно беспрепятственно получить ее исходный код, она стала первой альтернативой рабочим станциям UNIX, предлагавшимся фирмами Sun Microsystems, Digital Equipment Corp (теперь Compaq) и Silicon Graphics. На сегодняшний день Linux является полнофункциональной системой семейства UNIX, способной работать на всех этих и других платформах.
Залогом успеха системы Linux является то, что она бесплатно распространяется при поддержке Фонда бесплатно распространяемых программ (Free Software Foundation — FSF). Целью этой организации является создание надежного аппаратно-независимого программного обеспечения, которое было бы бесплатным, обладало высоким качеством и пользовалось широкой популярностью среди пользователей. Фонд предоставляет инструменты для разработки программного обеспечения под эгидой общедоступной лицензии GNU (GNU Public License — GPL). Таким образом, система Linux в таком виде, в котором она существует сегодня, является продуктом, появившимся в результате усилий Торвальдса, а затем и многих других его единомышленников во всем мире, и распространяющимся в рамках проекта GNU.
Linux используется не только многими отдельными программистами; она проникла и в корпоративную среду [MANC00]. В основном это произошло благодаря высокому качеству ядра операционной системы Linux, а не из-за того, что эта система является бесплатной. В эту популярную версию внесли свой вклад многие талантливые программисты, в результате чего появился впечатляющий технический продукт. К достоинствам системы Linux можно отнести то, что она является модульной и легко настраивается. Благодаря этому можно достичь высокой производительности ее работы на самых разнообразных аппаратных платформах. К тому же получая в свое распоряжение исходный код, производители программного обеспечения могли улучшать качество приложений и служебных программ, с тем чтобы они удовлетворяли определенным требованиям. В этой книге изложены подробности внутреннего устройства ядра операционной системы Linux.
Модульная структура
Ядра большинства версий операционной системы UNIX являются монолитными. Напомним, что монолитное ядро — это ядро, которое виртуально включает в себя все возможности операционной системы в виде одного большого блока кода, который запускается как единый процесс в едином адресном пространстве. Все функциональные компоненты такого ядра имеют доступ ко всем его внутренним структурам данных и ко всем программам. При внесении изменений в любую из частей типичной монолитной операционной системы все ее модули и подпрограммы необходимо повторно компоновать и переустанавливать, а перед тем как изменения вступят в силу, систему нужно будет перезагрузить. В результате все модификации, такие, как добавление драйвера нового устройства или новых функций файловой системы, усложняются. Особенно остро эта проблема стоит в системе Linux, глобальную разработку которой выполняют объединенные на добровольных началах группы независимых программистов.
Для решения этой проблемы операционная система Linux организована в виде набора относительно независимых блоков, которые называются загружаемыми модулями (loadable modules) [GOYE99]. Загружаемые модули Linux имеют две отличительные особенности.
Динамическое связывание. Любой модуль ядра может быть загружен в память и подсоединен к ядру в то время, когда само ядро уже находится в памяти и выполняется. Любой модуль может быть также отсоединен от ядра и удален из памяти в любой момент времени.
Стековая организация. Модули организованы в виде определенной иерархической структуры. Отдельные модули могут выполнять роль библиотек при обращении к ним модулей более высоких уровней в рамках этой структуры; они сами также могут обращаться к модулям на более низких уровнях.
Динамическое связывание [FRAN97] облегчает настройку системы и экономит память, которую занимает ядро. В системе Linux программа пользователя или сам пользователь может загружать или выгружать модули с помощью команд insmod и rmmod. Само ядро управляет работой отдельных функций и по мере надобности загружает нужные модули или выгружает те, нужда в которых уже отпала. Кроме того, стековая организация позволяет задавать зависимости модулей, что дает два основных преимущества.
Код, являющийся общим для набора однотипных модулей (например, драйверы похожих устройств), можно поместить в один модуль, что позволяет сократить количество повторений.
Ядро может проверить наличие в памяти нужных модулей, воздерживаясь от выгрузки модуля, который нужен для работы других, зависимых от него, и загружая вместе с новым требуемым модулем все необходимые дополнительные модули.
На примере, приведенном на рис. 2.18, показаны структуры, которые используются операционной системой Linux для управления модулями. На рисунке приведен список модулей ядра после загрузки модулей FAT и VFAT. Каждый модуль задается двумя таблицами: таблицей модулей и таблицей символов. В таблицу модулей входят перечисленные ниже элементы.
next. Указатель на следующий модуль. Все модули организованы в виде связанного списка. Этот список начинается псевдомодулем (на рис. 2.18 он не показан).
ref. Список модулей, которые используются данным модулем.
symtab. Указатель на таблицу символов данного модуля.
name. Имя модуля.
size. Размер модуля в страницах памяти.
addr. Начальный адрес модуля.
state. Текущее состояние модуля.
* cleanup!). Указатель на программу, которая запускается при выгрузке данного модуля.
Модуль Модуль
Рис. 2.18. Операционная система Linux. Пример списка модулей ядра
Таблица символов определяет символы, контролируемые данным модулем и используемые где-либо еще. В таблицу входят такие элементы.
size. Полный размер таблицы.
n_symbols. Количество символов.
n_ref s. Количество ссылок.
symbols. Таблица символов.
references. Список модулей, зависящих от данного.
Графические редакторы предназначены для обработки на компьютере графических изображений. Способы редактирования изображений существенно зависят от способов кодирования изображения в компьютере.
Для дисков с небольшим количеством файлов (до нескольких десятков) удобно применять одноуровневую файловую систему, когда каталог (оглавление диска) представляет собой линейную последовательность имен файлов. Для отыскания файла на диске достаточно указать лишь имя файла.
Если на диске хранятся сотни и тысячи файлов, то для удобства поиска файлы организуются в многоуровневую иерархическую файловую систему, которая имеет «древовидную» структуру (имеет вид перевернутого дерева).
Начальный, корневой, каталог содержит вложенные каталоги 1-го уровня, в свою очередь, в каждом из них бывают вложенные каталоги 2-го уровня и т. д. Необходимо отметить, что в каталогах всех уровней могут храниться и файлы.
Для облегчения понимания этого вопроса воспользуемся аналогией с традиционным «бумажным» способом хранения информации. В такой аналогии файл представляется как некоторый озаглавленный документ (текст, рисунок и пр.) на бумажных листах. Следующий по величине элемент файловой структуры называется каталогом. Продолжая «бумажную» аналогию, каталог будем представлять как папку, в которую можно вложить множество документов, т.е. файлов. Каталог также получает собственное имя (представьте, что оно написано на обложке папки).
Каталог сам может входить в состав другого, внешнего по отношению к нему каталога. Это аналогично тому, как папка вкладывается в другую папку большего размера. Таким образом, каждый каталог может содержать внутри себя множество файлов и вложенных каталогов (их называют подкаталогами). Каталог самого верхнего уровня, который не вложен ни в какие другие, называется корневым каталогом.
А теперь полную картину файловой структуры представьте себе так: вся внешняя память компьютера — это шкаф с множеством выдвижных ящиков. Каждый ящик — аналог диска; в ящике — большая папка (корневой каталог); в этой папке множество папок и документов (подкаталогов и файлов) и т.д. Самые глубоко вложенные папки хранят в себе только документы (файлы) или могут быть пустыми.
Путь к файлу. Для того чтобы найти файл в иерархической файловой структуре необходимо указать путь к файлу. В путь к файлу входят записываемые через разделитель "\" логическое имя диска и последовательность имен вложенных друг в друга каталогов, в последнем из которых находится данный нужный файл.
Например, путь к файлам на рисунке можно записать так:
C:\Рефераты\
C:\Рефераты\Физика\
C:\Рефераты\Информатика\
C:\Рисунки\
Полное имя файла.
Путь к файлу вместе с именем файла называют полным именем файла.
Пример полного имени файлов:
C:\Рефераты\Физика\Оптические явления.doc
C:\Рефераты\Информатика\Интернет.doc
C:\Рефераты\Информатика\Компьютерные вирусы.doc
C:\Рисунки\Закат.jpg
C:\Рисунки\ Зима.jpg
В операционной системе Windows вместо каталогов используется понятие «папка». Папка – это объект Windows, предназначенное для объединения файлов и других папок в группы. Понятие папки шире, чем понятие «каталог».
В Windows на вершине иерархии папок находится папка Рабочий стол. (Следующий уровень представлен папками Мой компьютер, Корзина и Сетевое окружение (если компьютер подключен к локальной сети).
Если мы хотим ознакомиться с ресурсами компьютера, необходимо открыть папку Мой компьютер.
С файлами и папками можно выполнить ряд стандартных действий.
Такие действия с файлами, как «создать», «сохранить», «закрыть» можно выполнить только в прикладных программах («Блокнот», «Paint», …).
Действия «открыть», «переименовать», «переместить», «копировать», «удалить» можно выполнить в системной среде.
• Копирование (копия файла помещается в другой каталог);
• Перемещение (сам файл перемещается в другой каталог);
• Удаление (запись о файле удаляется из каталога);
• Переименование (изменяется имя файла).
Графический интерфейс Windows позволяет производить операции над файлами с помощью мыши с использованием метода Drag&Drop (тащи и бросай). Существуют также специализированные приложения для работы с файлами, так называемые файловые менеджеры.
- 1 2 3 4 5 6
Операционная система Windows. Основные объекты и приемы управления Windows.
На сегодняшний день наиболее популярными являются операционные системы семейства Windows, которые являются проприетарным (коммерческим) продуктом корпорации Microsoft.
Свою «родословную» Windows начинают от операционной системы DOS и первоначально представляли собой надстраиваемые над ней оболочки (Windows запускался из под DOS), увеличивающие возможности DOS и облегчающие неподготовленному пользователю работу с компьютером. Уже более поздние версии (начиная с Windows NT) представляли собой полноценные операционные системы.
Преимуществом Windows считается дружественный для пользователя интерфейс. Из недостатков отмечают ненадежность системы.
-
Операционная система Linux.
Linux представляет собой множество Unix-подобных операционных систем (дистрибутивов), которые чаще всего являются свободно распространяемыми.
Одной из уникальных особенностей систем GNU/Linux является отсутствие единого географического центра разработки. Linux и программы для нее пишутся миллионами программистов, рассредоточенных по всему миру.
История возникновения
Система Linux возникла как вариант операционной системы UNIX, предназначенный для персональных компьютеров с IBM-совместимой архитектурой. Первоначальная версия была написана Линусом Торвальдсом (Linus Torvalds), финским студентом, изучающим теорию вычислительных машин. В 1991 году Торвальдс представил в Internet первую версию системы Linux. С тех пор множество людей, сотрудничая посредством Internet, развивают Linux под руководством ее создателя. Благодаря тому что система Linux является бесплатной и можно беспрепятственно получить ее исходный код, она стала первой альтернативой рабочим станциям UNIX, предлагавшимся фирмами Sun Microsystems, Digital Equipment Corp (теперь Compaq) и Silicon Graphics. На сегодняшний день Linux является полнофункциональной системой семейства UNIX, способной работать на всех этих и других платформах.
Залогом успеха системы Linux является то, что она бесплатно распространяется при поддержке Фонда бесплатно распространяемых программ (Free Software Foundation — FSF). Целью этой организации является создание надежного аппаратно-независимого программного обеспечения, которое было бы бесплатным, обладало высоким качеством и пользовалось широкой популярностью среди пользователей. Фонд предоставляет инструменты для разработки программного обеспечения под эгидой общедоступной лицензии GNU (GNU Public License — GPL). Таким образом, система Linux в таком виде, в котором она существует сегодня, является продуктом, появившимся в результате усилий Торвальдса, а затем и многих других его единомышленников во всем мире, и распространяющимся в рамках проекта GNU.
Linux используется не только многими отдельными программистами; она проникла и в корпоративную среду [MANC00]. В основном это произошло благодаря высокому качеству ядра операционной системы Linux, а не из-за того, что эта система является бесплатной. В эту популярную версию внесли свой вклад многие талантливые программисты, в результате чего появился впечатляющий технический продукт. К достоинствам системы Linux можно отнести то, что она является модульной и легко настраивается. Благодаря этому можно достичь высокой производительности ее работы на самых разнообразных аппаратных платформах. К тому же получая в свое распоряжение исходный код, производители программного обеспечения могли улучшать качество приложений и служебных программ, с тем чтобы они удовлетворяли определенным требованиям. В этой книге изложены подробности внутреннего устройства ядра операционной системы Linux.
Модульная структура
Ядра большинства версий операционной системы UNIX являются монолитными. Напомним, что монолитное ядро — это ядро, которое виртуально включает в себя все возможности операционной системы в виде одного большого блока кода, который запускается как единый процесс в едином адресном пространстве. Все функциональные компоненты такого ядра имеют доступ ко всем его внутренним структурам данных и ко всем программам. При внесении изменений в любую из частей типичной монолитной операционной системы все ее модули и подпрограммы необходимо повторно компоновать и переустанавливать, а перед тем как изменения вступят в силу, систему нужно будет перезагрузить. В результате все модификации, такие, как добавление драйвера нового устройства или новых функций файловой системы, усложняются. Особенно остро эта проблема стоит в системе Linux, глобальную разработку которой выполняют объединенные на добровольных началах группы независимых программистов.
Для решения этой проблемы операционная система Linux организована в виде набора относительно независимых блоков, которые называются загружаемыми модулями (loadable modules) [GOYE99]. Загружаемые модули Linux имеют две отличительные особенности.
Динамическое связывание. Любой модуль ядра может быть загружен в память и подсоединен к ядру в то время, когда само ядро уже находится в памяти и выполняется. Любой модуль может быть также отсоединен от ядра и удален из памяти в любой момент времени.
Стековая организация. Модули организованы в виде определенной иерархической структуры. Отдельные модули могут выполнять роль библиотек при обращении к ним модулей более высоких уровней в рамках этой структуры; они сами также могут обращаться к модулям на более низких уровнях.
Динамическое связывание [FRAN97] облегчает настройку системы и экономит память, которую занимает ядро. В системе Linux программа пользователя или сам пользователь может загружать или выгружать модули с помощью команд insmod и rmmod. Само ядро управляет работой отдельных функций и по мере надобности загружает нужные модули или выгружает те, нужда в которых уже отпала. Кроме того, стековая организация позволяет задавать зависимости модулей, что дает два основных преимущества.
Код, являющийся общим для набора однотипных модулей (например, драйверы похожих устройств), можно поместить в один модуль, что позволяет сократить количество повторений.
Ядро может проверить наличие в памяти нужных модулей, воздерживаясь от выгрузки модуля, который нужен для работы других, зависимых от него, и загружая вместе с новым требуемым модулем все необходимые дополнительные модули.
На примере, приведенном на рис. 2.18, показаны структуры, которые используются операционной системой Linux для управления модулями. На рисунке приведен список модулей ядра после загрузки модулей FAT и VFAT. Каждый модуль задается двумя таблицами: таблицей модулей и таблицей символов. В таблицу модулей входят перечисленные ниже элементы.
next. Указатель на следующий модуль. Все модули организованы в виде связанного списка. Этот список начинается псевдомодулем (на рис. 2.18 он не показан).
ref. Список модулей, которые используются данным модулем.
symtab. Указатель на таблицу символов данного модуля.
name. Имя модуля.
size. Размер модуля в страницах памяти.
addr. Начальный адрес модуля.
state. Текущее состояние модуля.
* cleanup!). Указатель на программу, которая запускается при выгрузке данного модуля.
Модуль Модуль
Рис. 2.18. Операционная система Linux. Пример списка модулей ядра
Таблица символов определяет символы, контролируемые данным модулем и используемые где-либо еще. В таблицу входят такие элементы.
size. Полный размер таблицы.
n_symbols. Количество символов.
n_ref s. Количество ссылок.
symbols. Таблица символов.
references. Список модулей, зависящих от данного.
-
Графические редакторы. Форматы графических файлов.
Графические редакторы предназначены для обработки на компьютере графических изображений. Способы редактирования изображений существенно зависят от способов кодирования изображения в компьютере.