Файловая система FAT
FAT (file allocation table) означает «таблица размещения файлов».
В файловой системе FAT логическое дисковое пространство любого логического диска делится на две области:
- системную область;
- область данных.
Системная область создается при форматировании и обновляется при манипулировании файловой структурой. Область данных содержит файлы и каталоги, подчиненные корневому, и доступна через пользовательский интерфейс. Системная область состоит из следующих компонентов:
- загрузочной записи;
- зарезервированных секторов;
- таблицы размещения файлов (FAT);
- корневого каталога.
Таблица размещения файлов представляет собой карту (образ) области данных, в которой описывается состояние каждого участка области данных. Область данных разбивается на кластеры. Кластер – один или несколько смежных секторов в логическом дисковом адресном пространстве (только в области данных). Кластер – минимальная адресуемая единица дисковой памяти, выделяемая файлу или некорневому каталогу. Файл или каталог занимает целое число кластеров. Последний кластер при этом может быть задействован не полностью, что приведет к заметной потере дискового пространства при большом размере кластера.
Так как FAT используется при доступе к диску очень интенсивно, она загружается в ОЗУ и находится там максимально долго.
Корневой каталог отличается от обычного каталога тем, что он размещается в фиксированном месте логического диска и имеет фиксированное число элементов. Для каждого файла и каталога в файловой системе хранится информация в соответствии со следующей структурой:
- имя файла или каталога – 11 байт;
- атрибуты файла – 1 байт;
- резервное поле – 1 байт;
- время создания – 3 байта;
- дата создания – 2 байта;
- дата последнего доступа – 2 байта;
- зарезервировано – 2 байта;
- время последней модификации – 2 байта;
- номер начального кластера в FAT – 2 байта;
- размер файла – 4 байта.
Структура системы файлов является иерархической.
Файловая система FAT32.
FAT32 является полностью независимой 32-разрядной файловой системой и содержит многочисленные усовершенствования и дополнения по сравнению с FAT16. Принципиальное отличие FAT32 заключается в более эффективном использовании дискового пространства: FAT32 использует кластеры меньшего размера, что приводит к экономии дискового пространства. FAT32 может перемещать корневой каталог и использовать резервную копию FAT вместо стандартной. Расширенная загрузочная запись FAT32 позволяет создавать копии критических структур данных, что повышает устойчивость дисков к нарушениям структуры FAT по сравнению с предыдущими версиями. Корневой каталог представляет собой обычную цепочку кластеров, поэтому может находиться в произвольном месте диска, что снимает ограничение на размер корневого каталога.
Файловая система NTFS.
Файловая система NTFS (New Technology File System) содержит ряд значительных усовершенствований и изменений, существенно отличающих ее от других файловых систем. С точки зрения пользователей файлы по-прежнему хранятся в каталогах, но работа на дисках большого объема в NTFS происходит намного эффективнее:
- имеются средства для ограничения доступа к файлам и каталогам;
- введены механизмы, существенно повышающие надежность файловой системы;
- сняты многие ограничения на максимальное количество дисковых секторов и/или кластеров.
Основные характеристики файловой системы NTFS:
- надежность. Высокопроизводительные компьютеры и системы совместного использования должны обладать повышенной надежностью, для этой цели введен механизм транзакций, при котором ведется журналирование файловых операций;
- расширенная функциональность. В NTFS введены новые возможности: усовершенствованная отказоустойчивость, эмуляция других файловых систем, мощная модель безопасности, параллельная обработка потоков данных, создание файловых атрибутов, определенных пользователем;
- поддержка стандарта POSIX. К числу базовых средств относятся необязательное использование имен файлов с учетом регистра, хранение времени последнего обращения к файлу и механизм альтернативных имен, позволяющий ссылаться на один и тот же файл по нескольким именам;
- гибкость. Распределение дискового пространства отличается большой гибкостью: размер кластера может изменяться от 512 байт до 64 Кбайт.
NTFS хорошо работает с большими массивами данных и большими томами. Файловая система NTFS обладает встроенными средствами сжатия, которые можно применять к томам, каталогам и файлам.
Файловая система Ext3.
Файловая система ext3 может поддерживать файлы размером до 1 ТБ. С Linux-ядром 2.4 объём файловой системы ограничен максимальным размером блочного устройства, что составляет 2 терабайта. В Linux 2.6 (для 32-разрядных процессоров) максимальный размер блочных устройств составляет 16 ТБ, однако ext3 поддерживает только до 4 ТБ.
Ext3 имеет хорошую совместимость с NFS и не имеет проблемы с производительностью при дефиците свободного дискового пространства.Еще одно достоинство ext3 происходит из того, что она основана на коде ext2. Дисковый формат ext2 и ext3 идентичен; из этого следует, что при необходимости ext3 filesystem можно монтировать как ext2 без каких либо проблем. И это еще не все. Благодаря факту, что ext2 и ext3 используют идентичные метаданные, имеется возможность оперативного обновления ext2 в ext3.
Надежность Ext3
В дополнение к ext2-compatible, ext3 наследует другие преимущества общего формата metadata. Пользователи ext3 имеют в своем распоряжении годами проверенный fsck tool. Конечно, основная причина перехода на journaling filesystem - отказ от необходимости периодических и долгих проверок непротиворечивости метаданных на диске. Однако "журналирование" не способно защитить от сбоев ядра или повреждения поверхности диска (или кое-чего подобного). В аварийной ситуации вы оцените факт преемственности ext3 от ext2 с ее fsck.
Журнализация в ext3.
Теперь, когда имеется общее понимание проблемы, посмотрим, как ext3 осуществляет journaling. В коде журнализации для ext3 используется специальный API, называемый Journaling Block Device layer или JBD. JBD был разработан для журнализации на любых block device. Ext3 привязана к JBD API. При этом код ext3 filesystem сообщает JBD о необходимости проведения модификации и запрашивает у JBD разрешение на ее проведение. Журналом управляет JBD от имени драйвера ext3 filesystem. Такое соглашение очень удобно, так как JBD развивается как отдельный, универсальный объект и может использоваться в будущем для журналирования в других filesystems.
Защита данных в Ext3
Теперь можно поговорить о том, как ext3 filesystem обеспечивает журнализацию и data, и metadata. Фактически в ext3 имеются два метода гарантирования непротиворечивости.
Первоначально ext3 разрабатывалась для журналирования full data и metadata. В этом режиме (называется "data=journal" mode), JBD журналирует все изменения в filesystem, связанные как с data, так и с metadata. При этом JBD может использовать журнал для отката и восстановления metadata и data. Недостаток "полного" журналирования в достаточно низкой производительности и расходе большого объема дискового пространства под журнал.
Недавно для ext3 был добавлен новый режим журналирования, который сочетает высокую производительность и гарантию непротиворечивости структуры файловой системы после сбоя (как у "обычных" журналируемых файловых систем). Новый режим работы обслуживает только metadata. Однако драйвер ext3 filesystem по-прежнему отслеживает обработку целых блоков данных (если они связаны с модификацией метаданных), и группирует их в отдельный объект, называемый transaction. Транзакция будет завершена только после записи на диск всех данных. "Побочный" эффект такой "грубой" методики (называемой "data=ordered" mode) - ext3 обеспечивает более высокую вероятность сохранности данных (по сравнению с "продвинутыми" журналируемыми файловыми системами) при гарантии непротиворечивости metadata. При этом происходит журналирование изменений только структуры файловой системы. Ext3 использует этот режим по умолчанию.
Ext3 имеет множество преимуществ. Она разработана для максимальной простоты развертывания. Она основана на годами проверенном коде ext2 и получила "по наследству" замечательный fsck tool. Ext3 в первую очередь предназначена для приложений, не имеющих встроенных возможностей по гарантированию сохранности данных. В целом, ext3 - замечательная файловая система и достойное продолжение ext2.Есть еще одна характеристика, положительно отличающая ext3 от остальных journaled filesystems под Linux - высокая надежность.
21. Облачные технологии. Понятие. Принцип работы.
Облачные вычисления (англ. cloud computing) — информационно-технологическая концепция, подразумевающая обеспечение повсеместного и удобного сетевого доступа по требованию к общему пулу (англ. pool) конфигурируемых вычислительных ресурсов (например, сетям передачи данных, серверам, устройствам хранения данных, приложениям и сервисам — как вместе, так и по отдельности), которые могут быть оперативно предоставлены и освобождены с минимальными эксплуатационными затратами или обращениями к провайдеру[1].
Потребители облачных вычислений могут значительно уменьшить расходы на инфраструктуру информационных технологий (в краткосрочном и среднесрочном планах) и гибко реагировать на изменения вычислительных потребностей, используя свойства вычислительной эластичности (англ. elastic computing) облачных услуг.
Национальным институтом стандартов и технологий США зафиксированы следующие обязательные характеристики облачных вычислений[9]:
· Самообслуживание по требованию (англ. self service on demand) — потребитель самостоятельно определяет и изменяет вычислительные потребности, такие как серверное время, скорости доступа и обработки данных, объём хранимых данных без взаимодействия с представителем поставщика услуг;
· Универсальный доступ по сети — услуги доступны потребителям по сети передачи данных вне зависимости от используемого терминального устройства;
· Объединение ресурсов (англ. resource pooling) — поставщик услуг объединяет ресурсы для обслуживания большого числа потребителей в единый пул для динамического перераспределения мощностей между потребителями в условиях постоянного изменения спроса на мощности; при этом потребители контролируют только основные параметры услуги (например, объём данных, скорость доступа), но фактическое распределение ресурсов, предоставляемых потребителю, осуществляет поставщик (в некоторых случаях потребители всё-таки могут управлять некоторыми физическими параметрами перераспределения, например, указывать желаемый центр обработки данных из соображений географической близости);
· Эластичность — услуги могут быть предоставлены, расширены, сужены в любой момент времени, без дополнительных издержек на взаимодействие с поставщиком, как правило, в автоматическом режиме;
· Учёт потребления — поставщик услуг автоматически исчисляет потреблённые ресурсы на определённом уровне абстракции (например, объём хранимых данных, пропускная способность, количество пользователей, количество транзакций), и на основе этих данных оценивает объём предоставленных потребителям услуг.
С точки зрения поставщика, благодаря объединению ресурсов и непостоянному характеру потребления со стороны потребителей, облачные вычисления позволяют экономить на масштабах, используя меньшие аппаратные ресурсы, чем требовались бы при выделенных аппаратных мощностях для каждого потребителя, а за счёт автоматизации процедур модификации выделения ресурсов существенно снижаются затраты на абонентское обслуживание.
С точки зрения потребителя эти характеристики позволяют получить услуги с высоким уровнем доступности (англ. high availability) и низкими рисками неработоспособности, обеспечить быстрое масштабирование вычислительной системы благодаря эластичности без необходимости создания, обслуживания и модернизации собственной аппаратной инфраструктуры.
Удобство и универсальность доступа обеспечивается широкой доступностью услуг и поддержкой различного класса терминальных устройств (персональных компьютеров, мобильных телефонов, интернет-планшетов).
Программное обеспечение как услуга
Программное обеспечение как услуга (SaaS, англ. Software - as - a - Service) — модель, в которой потребителю предоставляется возможность использования прикладного программного обеспечения провайдера, работающего в облачной инфраструктуре и доступного из различных клиентских устройств или посредством тонкого клиента, например, из браузера (например, веб-почта) или посредством интерфейса программы. Контроль и управление основной физической и виртуальной инфраструктурой облака, в том числе сети, серверов, операционных систем, хранения, или даже индивидуальных возможностей приложения (за исключением ограниченного набора пользовательских настроек конфигурации приложения) осуществляется облачным провайдером.
Платформа как услуга
Платформа как услуга (PaaS, англ. Platform - as - a - Service) — модель, когда потребителю предоставляется возможность использования облачной инфраструктуры для размещения базового программного обеспечения для последующего размещения на нём новых или существующих приложений (собственных, разработанных на заказ или приобретённых тиражируемых приложений). В состав таких платформ входят инструментальные средства создания, тестирования и выполнения прикладного программного обеспечения — системы управления базами данных, связующее программное обеспечение, среды исполнения языков программирования — предоставляемые облачным провайдером.
Контроль и управление основной физической и виртуальной инфраструктурой облака, в том числе сети, серверов, операционных систем, хранения осуществляется облачным провайдером, за исключением разработанных или установленных приложений, а также, по возможности, параметров конфигурации среды (платформы).
Инфраструктура как услуга
Инфраструктура как услуга (IaaS, англ. Infrastructure - as - a - Service) предоставляется как возможность использования облачной инфраструктуры для самостоятельного управления ресурсами обработки, хранения, сетями и другими фундаментальными вычислительными ресурсами, например, потребитель может устанавливать и запускать произвольное программное обеспечение, которое может включать в себя операционные системы, платформенное и прикладное программное обеспечение. Потребитель может контролировать операционные системы, виртуальные системы хранения данных и установленные приложения, а также обладать ограниченным контролем за набором доступных сетевых сервисов (например, межсетевым экраном, DNS). Контроль и управление основной физической и виртуальной инфраструктурой облака, в том числе сети, серверов, типов используемых операционных систем, систем хранения осуществляется облачным провайдером.
5. DNS сервер. Принцип работы. Первичная настройка.
Компьютеры в сети (в том числе Интернет) не имеют имен, передача данных осуществляется с использованием IP-адресов.
IP-адрес (Internet Protocol Address) — числовой адрес в сети интернет, имеющий вид 123.123.123.123. IP-адреса трудно запомнить человеку, особенно когда вы посещаете десятки сайтов в день с разными IP-адресами.
Аналогично тому, как вы сохраняете телефонные номера, вы можете завести записную книгу или телефонный справочник для IP-адресов. Роль телефонного справочника в Интернете выполняют DNS (Domain Name System), система доменных имен. Когда в интернет-браузере вы вводите какой-либо домен, он посредством DNS преобразовывается в IP-адрес, который используется для доступа к серверу.
Что такое DNS-серверы
«DNS-сервер» — это «программа», которая хранит таблицу соответствий вида «имя домена» — «IP-адрес», примерно так:
Домен | IP-адрес сервера |
reg.ru | 194.58.116.30 |
На самом деле, на DNS-серверах хранится не только IP-адрес сервера, но и другие данные, такие как ресурсные DNS-записи «MX», «TXT», «A», «CNAME», «SOA.
DNS-серверы, которые хранят информацию о тысячах и миллионах доменах, зачастую размещаются на отдельных мощных серверах. В таких случаях под выражением «DNS-сервер» может подразумеваться целиком весь программно-аппаратный комплекс (сервер и сама программа).