Файл: Функции операционных систем персональных компьютеров.pdf
Добавлен: 28.03.2023
Просмотров: 96
Скачиваний: 2
Далее, в Linux, опять же как наследство UNIX, действует строгое разделение между ядром системы и приложениями пользователя. Грубо говоря, ядро — это коллекция драйверов. С приложениями ядро общается по стандартным протоколам. И сами приложения общаются между собой по тем же протоколам. Так что если вдруг одна программа надумает «упасть», то нагадит только себе, но не соседям и уж тем более не ядру. А значит, система продолжит работать.
Принцип этот универсален, из него практически нет исключений. Например, даже графический рабочий стол — X Window и навешанный на него GNOME, KDE, XFCE или любой другой оконный менеджер — является всего лишь набором приложений, которые можно перезапустить, не навредив ядру. А вот в MS Windows такой фокус не пройдёт, там рабочий стол включён в число системных процессов и манипуляции с ним могут требовать перезагрузки.
Так же специалисты говорят, что в Linux нет порочной практики сохранения явно неудачных решений из прошлого. В той же Windows это делается ради совместимости со старыми программными продуктами.
Mac OS X. Сбои случаются примерно с той же периодичностью, что и у Windows. Это чаще всего происходит из-за использования несовместимых со стандартом Apple ПО. Однако если использовать исключительно лицензионное и совместимое ПО проблем со стабильностью системы не возникнет. Обновление версии ПО происходит в фоновом режиме и чаще всего не требует перезагрузки.
Удобство в использовании
Все разработчики стремятся сделать свои продукты максимально простыми и доступными в применении, но не у всех это получается. Рассмотрим так же на примере трех самых популярных ОС, насколько они могут быть удобны для пользователя.
Win 10. Работа не такая интуитивная, как для пользователей ранних версий (до Win 7). Мы имеем плиточное представление меню «Пуск», при этом большая часть «плит» никогда не будет использоваться. Едва ли не первое, куда пойдет пользователь, это «Панель управления», чтобы отключить ненужные функции, настроить цвета, расположение панелей, параметры шрифта и т.д. Вызвать данное меню довольно сложно с первого раза, пуск не намекает на наличие параметров – нужно пользоваться поиском, который так же ищет не только внутренние ресурсы, а подсказки автозаполнения чаще всего ведут в поиск в Интернете. Сами «Параметры» вызывают кучу вопросов: после выбора категории выдается минимальный список настроек, а в некоторых случаях только информация о текущей конфигурации. В 70% случаях требуется заходить во вкладки расширенных параметров и уже там интерфейс более дружелюбный и содержит в себе все, что требуется для настройки системы. К файловой системе и администрированию вопросов нет, как и к проводнику, единственное, что смущает – это огромные «выезжающие» окна и подсказки, которые больше заточены под сенсорные экраны и совершенно не смотрятся для пользователей обычных ПК с мониторами без сенсора.
На рисунке 3 показан скриншот рабочего стола Win 10:
Рис. 3
Linux Mint. Каждый дистрибутив разрабатывается группой единомышленников из разных стран, а не отдельными людьми или фирмами. Любой может подобрать дистрибутив, исходя из рекомендаций других пользователей, с учетом своих знаний и вкусов. Мнение неоднозначное – для бывших пользователей ОС от Windows к интерфейсу будет тяжело привыкнуть, однако новые пользователи, которые ранее не работали ни в какой ОС, отмечают простоту и легкость использования.
На рисунке 4 показан скриншот рабочего стола:
Рис. 4
Mac OS. Тоже удобная и простая система, в ней учитываются все мелочи. Работа с ней будет понятна даже непосвященному. Из минусов стоит отметить фишку отображения текста: на первый взгляд он кажется не таким четким и можно заподозрить проблему с работой монитора, но Apple решила отображать текст таким, каким бы он был на бумаге. Еще отличная функция нескольких рабочих столов, которые можно настроить на свой вкус – один для работы, другой для творчества, третий для развлечений и отдыха. Она кардинально отличается от семейства Windows расположением кнопок в проводнике, файловой системой и панелью задач.
На рисунке 5 показан скриншот рабочего стола:
Рис. 5
Файловая система
Файловая система – это порядок, определяющий способ организации, хранения и именования данных на носителях информации в компьютерах, а также в другом электронном оборудовании (смартфон, flash-накопители и т.п.). Она связывает носитель информации с одной стороны API для доступа к файлам – с другой. Прикладные программы знают только имя, его размер и атрибуты, данные о которых ей предоставляет драйвер файловой системы. Именно файловая система устанавливает, где и как будет записан файл на физическом носителе (например, жестком диске).
Со стороны ОС, весь диск представляет собой набор кластеров. Драйверы файловой системы организуют кластеры в файлы и каталоги. Эти же драйверы отслеживают, какие из кластеров в настоящее время используются, какие свободны, какие помечены как неисправные.
Однако файловая система не обязательно напрямую связана с физ. Носителем. Существуют так же виртуальные файловые системы, а также сетевые файловые системы, которые являются лишь способом доступа к файлам, находящимся на удаленном компьютере.
Классификаций файловых систем (далее - ФС) достаточно много, и в основном они зависят от железа носителя, но мы рассмотрим те, которые используются для жестких дисков под разными ОС.
Win 10. ReFS – новая ФС, которая используется в Windows 10. Ее можно перевести на русский как «Устойчивая».
Данная ФС была разработана для того, чтобы устранить некоторые недостатки NTFS, повысить устойчивость, минимизировать возможные потери данных, а также работыть с большим количеством данных. Она разрабатывалась не для повышения производительности файловой системы по сравнению с NTF - Microsoft сделала систему ReFS намного эффективнее в строго определённых случаях.
Например, при использовании с Дисковым пространством, ReFS поддерживает «оптимизацию в режиме реального времени». Допустим у вас есть пул накопителей с двумя дисками, один обеспечивает максимальную производительность, другой используется для объема. ReFS всегда будет записывать данные на более быстрый диск, обеспечивая максимальную производительность. В фоновом режиме файловая система автоматически переместит большие куски данных на более медленные диски для продолжительного хранения.
Одна из главных ее особенностей – защита от потери данных: по умолчанию, на дисках хранятся контрольные суммы для метаданных или файлов. При операциях чтения-записи данные файлов сверяются с хранимыми для них контрольными суммами, таким образом, в случае повреждения данных есть возможность сразу обратить на это внимание.
В случае с дисковыми пространствами её особенности могут быть наиболее полезными при обычном использовании: например, если вы создаете зеркальные дисковые пространства с файловой системой REFS, то при повреждении данных на одном из дисков, поврежденные данные сразу будут перезаписаны неповрежденной копией с другого диска.
ReFS более современна и поддерживает гораздо большие объемы и более длинные имена файлов чем NTFS. В долгосрочной перспективе это важные улучшения. В файловой системе NTFS имя файла ограничено 255 символами, в ReFS имя файла может содержать до 32768 символов.
Также новая файловая система содержит другие механизмы проверки, поддержки и исправления целостности данных на дисках, причем они работают в автоматическом режиме. Для обычного пользователя это означает меньшую вероятность повреждения данных в случаях, например, внезапного отключения питания при операциях чтения-записи.
Linux Mint. Как и все Linux-овые системы, LM не определена жестким выбором файловой системы – все на усмотрение сборщика или пользователя. Рассмотрим самую любимую пользователями Linux – Ext4.
Ext4 - это результат эволюции Ext3. Во многих аспектах Ext4 представляет собой больший шаг вперёд по сравнению с Ext3, чем Ext3 была по отношению к Ext2. Наиболее значительным усовершенствованием Ext3 по сравнению с Ext2 было журналирование, в то время как Ext4 предполагает изменения в важных структурах данных, таких как, например, предназначенных для хранения данных файлов. Это позволило создать файловую систему с более продвинутым дизайном, более производительную и стабильную и с обширным набором функций.
На сегодняшний день максимальный размер файловой системы Ext4 равен одному экзабайту, и файлы могут быть размером до 16 терабайт, а также позволяет создавать неограниченное количество подкаталогов.
В современных файловых системах применяется иной подход, основанный на так называемых экстентах. Экстент — это в общем-то набор последовательных физических блоков. Благодаря их применению улучшается производительность, а также уменьшается фрагментированность, поскольку экстенты способствуют непрерывному размещению данных.
Ext4 использует механизм многоблочного распределения (multiblock allocator, mballoc) который позволяет распределить любое количество блоков с помощью единственного вызова и избежать огромных накладных расходов. Благодаря этому производительность существенно вырастает, что особенно заметно при отложенном распределении с использованием экстентов. Эта возможность никак не влияет на формат данных.
Отложенное распределение. Суть этого метода состоит в отсрочке выделения блоков насколько это возможно. При использовании блоки сразу не выделяются при обращении к write(). Вместо этого распределение откладывается до момента, когда файл будет записан из кэша на диск. Благодаря этому механизм получает возможность оптимизировать процесс распределения. Наибольший выигрыш получается при использовании двух ранее упомянутых возможностей — экстентов и многоблочного распределения, поскольку часто встречается ситуация, когда окончательный файл пишется на диск в виде экстентов, распределённых с помощью mballoc. Это даёт существенный прирост производительности, и иногда сильно снижает фрагментированность данных.
Ext4 подсчитывает контрольные суммы журнальных данных, что позволяет определить факт их повреждения. У этого есть и ещё одно преимущество: благодаря контрольным суммам можно превратить систему двухфазной фиксации журнала Ext3 в однофазную, что ускоряет файловые операции в отдельных случаях до 20%, таким образом, улучшаются одновременно и надёжность, и производительность.
MacOS. Объемы HFS Plus разделены на секторы (так называемые логические блоки в HFS), которые, как правило размером 512 байт. Эти секторы затем группируются в блоки распределения, которые могут содержать один или несколько секторов; количество блоков распределения зависит от общего размера тома. HFS Plus использует большее значение для решения блоков распределения, чем HFS, 32 бита, а не 16 бит; это означает, что он может получить доступ к 4294967296 (= 232) блоки распределения, а не блоки распределения 65536 (= 216), доступных для HFS.
Раньше объемы HFS Plus были встроены внутри стандартной файловой системы HFS. Это было прекращено переходом Tiger на Intel Macs, где файловая система HFS Plus не был встроен внутри обертки. Оболочка была разработана для двух целей; это позволило компьютеры Macintosh без поддержки HFS Plus в их ROM для загрузки томов HFS Plus и он также был разработан, чтобы помочь переходу пользователей к HFS Plus, включив минимальный объем HFS с файлом только для чтения под названием Where_have_all_my_files_gone ?, объясняя пользователям с версиями Mac OS 8.0 и более ранних версий без HFS Plus, что объем необходима система с поддержкой HFS Plus.
Оригинальный объем HFS содержит подпись и смещение к встраиваемой объема HFS Plus в его заголовке тома. Все блоки распределения в объеме HFS, которые содержат встроенный объем сопоставляются из файла распределения HFS как плохих блоков. К наиболее важным из файловых систем, используемых для систем Unix, HFS Plus не поддерживает разреженные файлы.
Для управления размещением данных на диске HFS+ хранит на нем также и служебную информацию — метаданные. Среди них наиболее важны для работы файловой системы и наиболее интересны нам в деле поиска пропавших данных:
- Секторы 0 и 1 объема являются загрузочные блоки HFS. Они идентичны загрузочных блоков в томе HFS. Они являются частью обертки HFS.
- Volume header (заголовок тома). Содержит общую информацию о томе. Например, размер блока данных и информацию о расположении других блоков метаданных на диске.
Сектор 2 содержит эквивалент заголовок тома на мастер-директорию блока в томе HFS. Заголовок тома хранит широкий спектр данных о самом объеме, например, размер блоков распределения, метку времени, которая указывает, когда был создан объем или местонахождения других структур, таких как объем файла каталога или степень переполнением файла. Заголовок тома всегда находится в том же самом месте.
- Allocation file (файл размещения или карта тома). Bitmap, в котором отмечен статус каждого блока на диске. (1 — занят, 0 — свободен).