Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Регистрируясь, я даю согласие на обработку данных и условия почтовых рассылок.
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр Монстрикс — это динамичная стратегия, где ты собираешь, улучшаешь и сражаешься с могучими монстрами.

Монстрикс

Мидкорные, Стратегии, Мультиплеер

Играть

Топ прошлой недели

  • Oskanov Oskanov 9 постов
  • Animalrescueed Animalrescueed 46 постов
  • AlexKud AlexKud 33 поста
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая «Подписаться», я даю согласие на обработку данных и условия почтовых рассылок.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Маркет Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
489
Igry.SteamRU
Igry.SteamRU
3 года назад
Лига Сисадминов

Что есть файловая система?⁠⁠

Вам когда-нибудь требовалось отформатировать новый жесткий диск или USB-накопитель, и были даны варианты выбора из аббревиатур, таких как FAT, FAT32 или NTFS? Или вы однажды пытались подключить внешнее устройство, но ваша операционная система не смогла его определить? Вас иногда расстраивает, сколько времени требуется вашей операционной системе на поиск файла?Если вы сталкивались с чем-то из вышеперечисленного или просто кликнули мышью, чтобы найти файл или приложение на своем компьютере, значит, вы на собственном опыте узнали, что такое файловая система.

Многие люди могут не использовать явную методологию организации их личных файлов на ПК (статья_что_такое_файловая_система.docx). Однако абстрактная концепция организации файлов и каталогов для любого устройства с постоянной памятью должна быть очень систематичной при чтении, записи, копировании, удалении и взаимодействии с данными. Эта задача операционной системы обычно назначается файловой системе.

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

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


Постоянные данные: Файлы и каталоги


Современные операционные системы становятся всё более сложными и нуждаются в управлении различными аппаратными ресурсами, планировании процессов, виртуализации памяти и многих других задачах. Когда дело доходит до данных, многие аппаратные средства, типа кэша и ОЗУ, были разработаны для ускорения времени доступа и обеспечения того, чтобы часто используемые данные находились “рядом” с процессором. Однако после выключения компьютера останется только информация, хранящаяся на постоянных устройствах, таких как жесткие диски (HDD) или твердотельные накопители (SSD). Таким образом, ОС должна особенно заботиться об этих устройствах и данных внутри, поскольку именно здесь пользователи будут хранить нужные им данные.

Две самые важные абстракции, разработанные за всё время для хранения — это файл и каталог. Файл — это линейный массив байтов, каждый из которых вы можете прочитать или записать. В то время как в пользовательском пространстве мы можем придумать умные имена для наших файлов, под капотом обычно находятся числовые идентификаторы для отслеживания имён файлов. Исторически сложилось так, что эта базовая структура данных часто ссылается на её индексный дескриптор inode. Интересно, что сама ОС мало что знает о внутренней структуре файла (т. е. является ли он изображением, видео или текстовым файлом); Фактически, всё, что ему нужно знать, — это как записать байты в файл для постоянного хранения и убедиться, что он сможет извлечь их позже при вызове.

Вторая основная абстракция — это каталог. На самом деле, под капотом, каталог — это просто файл, но он содержит очень специфический набор данных: список удобочитаемых имён сопоставленных с низкоуровневыми именами. На практике, это означает, что он содержит список других каталогов или файлов, которые в совокупности могут формировать дерево каталогов, в котором хранятся все файлы и каталоги.

Такая организация достаточно выразительна и масштабируема. Всё, что вам нужно, это указатель на корень дерева каталогов (это будет первый индексный дескриптор inode в системе), а оттуда вы сможете получить доступ к любым другим файлам на этом разделе диска. Эта система также позволяет создавать файлы с одинаковыми именами, если у них не один и тот же путь (т. е. они находятся в разных местах дерева файловой системы).

Технически вы можете назвать файл как угодно, но обычно принято обозначать тип файла с разделением точкой (например, .jpg в картинка.jpg), хотя и не обязательно. Некоторые операционные системы, такие как Windows, настоятельно рекомендуют использовать эти соглашения чтобы файлы открывались в соответствующем приложении, но содержимое самого файла не зависит от его расширения. Расширение — это всего лишь подсказка для операционной системы о том, как интерпретировать байты, содержащиеся в файле.

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


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


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

Начнем с описания общей организации на диске элементарной файловой системы.

Первое, что вам нужно сделать, это разделить ваш диск на блоки. Обычно используемый размер блока составляет 4 КБ. Предположим, у вас очень маленький диск с объемом памяти 256 КБ. Первый шаг — разделить это пространство равномерно, используя размер вашего блока, и назначить номер каждому блоку (в нашем случае, обозначив блоки от 0 до 63):

Теперь давайте разберем эти блоки на разные регионы. Давайте отложим большую часть блоков для пользовательских данных и назовем это областью данных. В этом примере, давайте зафиксируем блоки 8-63 в качестве нашей области данных:

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

Для хранения этих метаданных мы будем использовать специальную структуру данных, называемую индексным дескриптором (inode). В текущем примере давайте зададим 5 блоков в качестве inode и назовем эту область диска таблицей inode:

Индексы inode обычно не очень большие, в районе 256 байт. Таким образом, блок размером 4 КБ может содержать около 16 inode, а наша простая файловая система выше содержит всего 80 inode. Это число на самом деле значительно: это означает, что максимальное количество файлов в нашей файловой системе составляет 80. С большим диском вы, безусловно, можете увеличить количество inode, напрямую переводя их в большее количество файлов в вашей файловой системе.

Осталось еще несколько вещей для завершения нашей файловой системы. Нам нужно отслеживать, являются ли inode или блоки данных свободными или распределёнными. Эта структура распределения может быть реализована в виде двух отдельных битовых массивов, один для inode, а другой для области данных.

Битовый массив — это очень простая структура данных: каждый бит соответствует тому, является ли объект/блок свободным (0) или используемым (1). Мы можем назначить битовый массив индекса и битовый массив области данных их собственному блоку. Хотя это излишне (блок может использоваться для отслеживания объектов размером до 32 КБ, но у нас есть только 80 inode и 56 блоков данных), это удобный и простой способ организации нашей файловой системы.

Наконец, для последнего оставшегося блока (который, по совпадению, является первым блоком на нашем диске) нам нужен суперблок. Этот суперблок является своего рода метаданными для метаданных: в блоке мы можем хранить информацию о файловой системе, такую как количество inode (80) и где находится блок inode (блок 3) и так далее. Мы также можем поместить для файловой системы некоторый идентификатор в суперблок, чтобы было понятно как интерпретировать нюансы и детали различных файловых систем (например, мы можем отметить, что эта файловая система основана на Unix, файловая система ext4 или, возможно, NTFS). Когда операционная система считывает суперблок, у неё может быть схема того, как интерпретировать различные данные на диске и получать к ним доступ.

Индексный дескриптор Inode


До сих пор мы упоминали структуру данных inode в файловой системе, но еще не объяснили, какой это важный компонент. Inode — это сокращение от index node, и это историческое имя, данное в UNIX и более ранних файловых системах. Практически все современные системы используют концепцию inode, но могут называть их по-разному (например, dnode, fnode, и т. д.).

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

На конкретный inode ссылается число (i-number), это низкоуровневое имя файла. Получив i-number, вы можете просмотреть его информацию, быстро перейдя к его местоположению. Например, из суперблока мы знаем, что область inode начинается с адреса 12 КБ.

Поскольку диск не адресуется по байтам, мы должны знать, к какому блоку обращаться, чтобы найти наш индекс. С помощью довольно простой математики мы можем вычислить идентификатор блока на основе i-number, размера каждого inode и размера блока. Впоследствии мы можем найти начало inode внутри блока и прочитать желаемую информацию.

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

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

Конечно вы можете использовать этот подход для поддержки ещё больших типов данных, используя двойные или тройные косвенные указатели. Этот тип файловой системы известен как имеющий многоуровневый индекс и позволяет файловой системе поддерживать большие файлы, например, в диапазоне гигабайт или больше. Распространённые файловые системы, такие как ext2 и ext3, используют многоуровневые системы индексирования. Более новые файловые системы, такие как ext4, имеют концепцию экстентов, которые представляют собой несколько более сложные схемы указателей.

Хотя структура данных inode очень популярна благодаря своей масштабируемости, было проведено множество исследований, чтобы понять её эффективность и степень, в которой необходимы многоуровневые индексы. Одно исследование показало кое-какие интересные измерения в файловых системах, в том числе:

⦁ Большинство файлов на самом деле очень маленькие (2 КБ — наиболее распространенный размер)

⦁ Средний размер файла растёт (в среднем почти на 200k)

⦁ Большинство байтов хранится в больших файлах (несколько больших файлов занимают большую часть пространства)

⦁ Файловые системы содержат много файлов (в среднем почти 100k)

⦁ Файловые системы заполнены примерно наполовину (даже по мере роста дисков файловые системы остаются заполненными на ~50 %)

⦁ Каталоги, как правило, маленькие (во многих из них мало записей, 20 или меньше)

Всё это указывает на универсальность и масштабируемость структуры данных inode, а также на то, как она прекрасно поддерживает большинство современных систем. Было реализовано множество оптимизаций для повышения скорости и эффективности, но основная структура за последнее время мало изменилась.


Каталоги


Под капотом каталоги — это просто очень специфичный тип файлов: они содержат список записей, использующих систему сопряжения (имя записи с i-number). Номер записи, как правило — человеко-читаемое имя, а соответствующий i-number отражает его «имя» в файловой системе.

Каждый каталог обычно также содержит 2 дополнительные записи указателей помимо списка имён пользователей: одна запись — “текущий каталог”, а другая — «родительский каталог».


Вот так в командной строке терминала вы можете “сменить текущий каталог”:
cd [имя каталога]
или переместиться ближе к корню используя:
cd ..
где “..” — абстрактное имя указателя родительского каталога.

Поскольку каталоги обычно являются просто «специальными файлами», управление содержимым каталога обычно так же просто, как добавление и удаление пар внутри файла. Каталог обычно имеет свой собственный inode в линейном дереве файловой системы (как описано выше), но в некоторых современных файловых системах, таких как XFS, были предложены и использованы новые структуры данных, такие как B-trees (B-деревья).


Методы доступа и оптимизации


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

Основные операции с файлом включают открытие файла, чтение файла или запись в файл. Эти процедуры требуют огромного количества операций ввода-вывода (I/O) и обычно разбросаны по диску. Например, проход по дереву файловой системы от корневого узла к интересующему файлу требует перейти от inode к файлу каталога (потенциально мультииндексированному) и к расположению нужного файла. Если файл не существует, то требуются некоторые дополнительные операции, такие как создание записи inode и назначение требуемых разрешений.

Многие технологии, как аппаратные, так и программные, были разработаны для улучшения времени доступа и взаимодействия с хранилищем. Очень распространённой аппаратной оптимизацией является использование твердотельных накопителей, которые значительно ускоряет время доступа благодаря своим твердотельным свойствам. Жёсткие диски, с другой стороны, обычно имеют механические части (движущийся шпиндель), что означает, что существуют физические ограничения на то, как быстро вы можете “перепрыгивать” с одной части диска в другую.

Хотя твердотельные накопители обеспечивают быстрый доступ к диску, этого обычно недостаточно для ускорения чтения и записи данных. Операционная система обычно использует более быстрые, энергозависимые структуры памяти, такие как оперативная память и кэш, чтобы сделать данные “ближе” к процессору и ускорить операции. Фактически, сама операционная система обычно хранится в файловой системе, и одна из основных оптимизаций заключается в постоянном хранении общих файлов ОС, доступных только для чтения, в оперативной памяти, чтобы обеспечить быструю и эффективную работу операционной системы.

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

Другой распространённой оптимизацией является перемещение данных. Как пользователи, мы можем захотеть переместить файл из одного каталога в другой в зависимости от наших личных предпочтений организации. Однако файловой системе просто необходимо изменить минимальные данные в нескольких файлах каталогов, а не фактически перемещать биты из одного места в другое. Используя концепцию inode и указателей, файловая система может очень быстро выполнить операцию “перемещения” (в пределах того же диска).

Когда дело доходит до “установки” приложений или игр, это просто означает копирование файлов в определённое место и установку глобальных переменных и флагов для их выполнения. В Windows установка обычно запрашивает каталог, а затем загружает данные для запуска приложения и помещает их в этот каталог. В установке нет ничего особенного, кроме автоматизированного механизма записи множества файлов и каталогов из внешнего источника (онлайн или физического носителя) на выбранный диск.


Популярные Файловые Системы


Современные файловые системы имеют множество подробных оптимизаций, которые работают рука об руку с операционной системой для повышения производительности и предоставления различных функций (таких как безопасность или поддержка больших файлов). Некоторые из наиболее популярных файловых систем сегодня: FAT32 (для флэш-накопителей и, ранее, Windows), NTFS (для Windows) и ext4 (для Linux).

На высшем уровне все эти файловые системы имеют схожие структуры на диске, но отличаются деталями и функциями, которые они поддерживают. Например, формат FAT32 (Таблица распределения файлов) был первоначально разработан в 1977 году и использовался на заре персональных компьютеров. Он использует концепцию связанного списка для доступа к файлам и каталогам, которая, хотя проста и эффективна, может быть медленной для больших дисков. Сегодня это широко используемый формат для флэш-накопителей.

NTFS (Файловая система новой технологии), разработанная Microsoft в 1993 году, учитывала многие из скромных начинаний FAT32. Она повышает производительность за счёт хранения различных дополнительных метаданных о файлах и поддерживает различные структуры для шифрования, сжатия, разреженных файлов и ведения системного журнала. NTFS всё еще используется сегодня в Windows 10 и 11. Аналогичным образом, устройства macOS и iOS используют проприетарную файловую систему, созданную Apple, HFS+ (также известная как Mac OS расширенная) была стандартом до того, как они представили файловую систему Apple (APFS) относительно недавно в 2017 году, и она лучше оптимизирована для более быстрых носителей данных, а также для поддержки расширенных возможностей, таких как шифрование и повышенная целостность данных.

Четвёртая «расширенная файловая» система, или ext4, является четвёртой итерацией файловой системы ext, разработанной в 2008 году, и системой по умолчанию для многих дистрибутивов Linux, включая Debian и Ubuntu. Она может поддерживать файлы больших размеров (до 16 тебибайт) и использует концепцию экстентов для дальнейшего улучшения inode и метаданных файлов. Она использует систему отложенного распределения для уменьшения записи на диск и имеет множество улучшений для контрольных сумм файловой системы для целостности данных, а также поддерживается в Windows и Mac.

Каждая файловая система предоставляет свой собственный набор функций и оптимизаций, и может иметь множество различий в реализации. Однако, по сути, все они выполняют одну и ту же функцию поддержки файлов и взаимодействия с данными на диске. Некоторые файловые системы оптимизированы для лучшей работы с различными операционными системами, поэтому файловая и операционная системы очень тесно переплетены.


Файловые системы Нового Поколения


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

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

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

Корпорация Майкрософт уже много лет работает над этой проблемой в своей реализации устойчивой файловой системы (REFS). ReFS изначально была выпущена для Windows Server 2012 и предназначена для замены NTFS. REFS использует B+ деревья для всех своих структур на диске (включая метаданные и данные файлов) и для реализации использует подход, ориентированный на отказоустойчивости. Это включает контрольные суммы для всех независимо хранящихся метаданных, и политику распределения при записи. По сути, это снижает нагрузку на администраторов от необходимости периодически запускать средства проверки на ошибки, вроде CHKDSK, при использовании ReFS.

В мире с открытым исходным кодом Btrfs (произносится как “better FS” или “Butter FS”) набирает обороты с аналогичными функциями ReFS. Опять же, основное внимание уделяется отказоустойчивости, свойствам самовосстановления и простоте администрирования. Она также обеспечивает лучшую масштабируемость, чем ext4, обеспечивая примерно в 16 раз большую поддержку данных.


Итоги


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

Базовая реализация inode и файлов вместе образуют очень расширяемую систему, которая была доработана и изменена, чтобы предоставить нам современные файловые системы. Хотя мы можем не задумываться о файловых системах и их функциях в нашей повседневной жизни, это является истинным свидетельством их надёжного и масштабируемого дизайна, которые позволили нам наслаждаться и пользоваться нашими цифровыми данными на компьютерах, телефонах, консолях и различных других системах.


Источник

Показать полностью 15 1
[моё] Жесткий диск Накопитель Файловая система Компьютер Видео Длиннопост
77
26
Lubasha.Sok
Lubasha.Sok
3 года назад

Скопидомство или запасливые родители⁠⁠

У меня очень запасливые родители. Сейчас они пенсионеры и живут на даче, а квартиру оккупировали мои муж, дочь и я.

И вот я разбираю шкафчики потихоньку. Про залежи китайских полотенец и разного рода простыней и отрезов материи я не стала писать. Но вот подарочный набор для мужчин, шампунь и гель для душа, exp 2015; мужской шампунь, exp 2016; гель для душа, exp 2015; мыло жидкое для рук, exp 2016; и вишенка: дамский гель для душа, exp 2011...



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

[моё] Накопитель Жадность Подарки Забывчивость Утюг Текст
30
1
vetal2491
3 года назад

Не запускается BIOS при установке 2-го m2 ssd в материнку⁠⁠

Мать gigabyte z390 gaming X. Проц i5 9600k/

Есть 2 порта для m2 ssd.

В спецификации сказано, что оба порта универсальные и поддерживают как sata так и pce x2\x4 диски

Долгое время у меня был занят только верхний порт под pce x4 m2 samsung evo 970 plus на 500 gb/

Сегодня купил еще один m2 ssd pce WD blue sn 550 на 1 ТБ.

Поставил его во второй свободный порт.

Включаю комп - вентиляторы крутятся, но экран не включается, дальше загрузка не идет.

Кнопка перезагрузки и выключения не работает. Только выключение из розетки.

Если ставлю его в первый порт, вместо системного самсунга, то загрузка проходит, биос диск видит.

Неужели мать не поддерживает одновременную работу 2х nvme дисков? Но в мануале ничего про это не сказано

[моё] SSD M2 Компьютер Bios Комплектующие Накопитель Текст
32
598
devilleo
devilleo
4 года назад

Как работает твердотельный накопитель (SSD), контроллер и Flash (Nand) память⁠⁠

SSD очень быстрое запоминающее устройство и если разобрать его, то можно увидеть что он представляет собой печатную плату, с множеством чипов Flash памяти, типа NAND, именно они хранят информацию, а рядом с ними распаиваются контроллер и dram память. Контроллер отвечает за связь накопителя с компьютером и осуществляет операции чтения/записи, а DRAM служит как небольшой кэш и ускоряет доступ к данным.

В некоторых SSD на обратной стороне или на отдельной плате размещаются дополнительные чипы памяти и ряд ёмких конденсаторов, они позволяют безопасно выключить устройство при резком отключении питания. (Аппаратный PLP)

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

Ну а чтобы более детальней понять их работу, нужно рассмотреть как работает чип Flash памяти. Разобрав его, видно что состоит он из множества кристаллов,

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

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

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

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

Для удаления заряда, на управляющий затвор подается высокое отрицательное напряжение, а на исток — положительное.

Каждый такой цикл записи и стирания разрушает слой диэлектрика, так что число перезаписи на ячейку ограничено.

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

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

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

Так считываются одноуровневые ячейки SLC, если же материал плавающего затвора способен захватить много электронов, а электроника способна размещать на плавающем затворе разные уровни зарядов и распознать несколько пороговых напряжений, то такая ячейка может хранить несколько бит информации. Например QLC ячейки могут хранить 4 бита информации, но для этого нужно различать 16 пороговых напряжений.

(Информация с SLC ячеек считывается и отправляется на контроллер почти без задержек. Чипы с QLC ячейками имеют внутреннею задержку в связи с необходимостью формирования специального сигнала для каждой ячейки и распознавания его)

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

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

Множество страниц формируют блок, размером 512 килобайт, это минимальная область которая может быть стёрта. То есть, если нужно переписать информацию всего лишь одной страницы, придётся стирать данные аж с целого блока и потом снова записывать.

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

Если посмотреть на блок схему типичного контроллера, то видно что он состоит из 32 битного RISC процессора который выполняет инструкции микропрограммы и может иметь до 4 ядер. Так же есть ddr контроллер отвечающий за работу с внешним DRAM-буфером, есть блок ecc, отвечающий за обнаружение и коррекцию ошибок, есть блоки интерфейсов отвечающие за обмен данными с чипами памяти и внешними интерфейсами и есть блоки отвечающие за шифрование и другие функции, которые могут меняться в зависимости от необходимого функционала.

Помимо контроллера, на скорость накопителя влияет интерфейс подключения. Существует множество форм-факторов SSD с разными интефейсами подключения и разной скоростью, но чаще всего в обычных компьютерах используются 2,5-дюймовые ssd или формата m2.

2,5-дюймовые SSD имеют интерфейс SATA, третьего поколения, такой интерфейс обеспечивает пропускную способность до 600 Мбайт/с. Накопители mSATA (mini-SATA) имеют такой же интерфейс.

В SSD M.2 используется один из двух интерфейсов: SATA3 или PCIe. В зависимости от количества выделенных линий и версии PCIe скорость может отличаться. Например PCI-E третей версии и с четырьмя выделенными линиями имеет пропускную способность до 4ГБ/с.

Так же такие накопители имеют несколько вариантов ключей. Есть накопители с B, M и B+M коннекторами.

Так же есть SSD в виде платы расширения которые подключаются напрямую в PCI-Express слот материнской платы. Некоторые модели таких накопителей могут использовать 8 и даже 16 линий слота PCIe, что даёт пропускную способность выше 6ГБ/с.

Кроме этого есть ещё много разных форм факторов, например U2, U3, NF1, и другие (EDSFF, 1.8 дюймовые), но ничем серьёзным, кроме размеров и коннекторов они не отличаются, да и используются они в основном в серверах и рабочих станциях.

Так же, хочется сказать что существует ещё один вид SSD накопителей, в которых вместо чипов Flash памяти используются чипы с технологией 3D crosspoint, в них в качестве ячеек не используются транзисторы с плавающим затвором и такие накопители быстрей обычных, но к сожалению у меня мало информации про эту технологию, так что на этом у меня всё, всем пока.

Показать полностью 24
[моё] SSD Память Nand Накопитель Flash Электроника Информатика Компьютерное железо Компьютерная графика Технологии Компьютер Диски Техника Видео Длиннопост
51
BBRodriguez2
BBRodriguez2
4 года назад

Samsung M3 Station — замедление работы⁠⁠

Всем привет .Итак, вводная.

Есть такой зверек - Samsung M3 Station с двухтерабайтным винтом внутри.
Работал много лет верой и правдой.

И вот недавно РЕЗКО замедлилась скорость чтения и записи. Прям как дискета.
Провода меня - нет, не то.

Куда копать? Контроллер? Сам винт?
Скопировать и отформатировать? Займет время, но можно...

Где тыкнуть и куда посмотреть?

Винт работает нормально, не щелкает, определяется везде.

Samsung Накопитель Жесткий диск Проблема Текст
9
13
DELETED
4 года назад

Seagate представила Mach.2 Exos 2X14 — самый быстрый жёсткий диск в мире, способный потягаться с SSD⁠⁠

На сайте Seagate появилось описание накопителя Mach.2 Exos 2X14: это, как утверждается, самый производительный на сегодняшний день жёсткий диск. В плане скорости передачи информации устройство может соперничать с недорогими SSD, оборудованными интерфейсом SATA 3.0.

Технология Mach.2 предусматривает применение двух независимых блоков магнитных головок. Такая конструкция обеспечивает значительное увеличение быстродействия.


По сути, в составе Mach.2 Exos 2X14 объединены два жёстких диска ёмкостью 7 Тбайт каждый, что в сумме даёт 14 Тбайт. Причём для компьютера такой накопитель будет выглядеть как два логических диска.


Устройство выполнено в 3,5-дюймовом формате, а скорость вращения шпинделя составляет 7200 оборотов в минуту. Используется гелиевая технология.

Для подключения служит интерфейс SAS, обеспечивающий пропускную способность до 12 Гбит/с. Заявленная установившаяся скорость передачи информации достигает 524 Мбайт/с, что как раз и сопоставимо со многими SATA SSD. Средняя задержка — 4,16 мс.


Однако применение двух блоков магнитных головок оборачивается повышенным энергопотреблением. Оно составляет до 7,2 Вт во время простоя и до 13,5 Вт при большой нагрузке.


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


https://3dnews.ru/1040161/seagate-predstavila-mach2-exos-2x1...

Показать полностью 1
Seagate Жесткий диск SSD Накопитель
11
DELETED
4 года назад

Вчера видеокарты,сегодня-накопители.Что нас ждёт завтра?⁠⁠

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

Ответ прост, нужно чтобы огромная сеть трудилась над вычислениями, многомиллионная сеть компьютеров. но как это сделать так чтоб никто не заметил?

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


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

Я все понял как только прочитал этот пост

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

Обработан воистину масштабный объем данных, теперь зашла речь о хранении, что это за данные? это ИИ полноценный, который вот вот родится и ему нужно пространство для жизни. миллионы терабайт пространства.

Что это значит для нас? каким он будет? не решит ли он нас уничтожить? или будет другом? или превратит в батарейки для себя?

И не поэтому ли
Илон Маск так спешит свалить с этой планеты?


На авторство не претендую - нашёл размышления в сети.

Вчера видеокарты,сегодня-накопители.Что нас ждёт завтра?
Показать полностью 1
Видеокарта Накопитель Майнинг Искусственный интеллект
21
1
Sladkiylimon
4 года назад

Как подружить m2 sata с ноутбуком⁠⁠

Добрый день, уважаемые форумчане.

Недавно столкнулся с невозможностью загрузиться с m2 sata на ноутбуке Asus.

Преамбула. Имеем ноутбук Asus R542UF-359T и морально устаревший стоковый HDD на 1 ТБ. Я решил накинуть в него m2 накопитель, поскольку NVME не поддерживается взял именно m2 SATA EVO 860 на 250 ГБ от самсунг. Установка накопителя прошла без проблем (хотя и пришлось разобрать ноутбук). Загрузил windows, инициализировал накопитель, разметил том, все замечательно.

Тут начинается самое интересное. Зачем ставить быстрый ссд ? Правильно! Чтобы накатить туда систему- так подумали бы вы или я, но, видимо, не инженеры Asus.

В общем, в полнейшем предвкушении своего успеха, качаю утилиту Microsoft для создания загрузочного накопителя и собственно создаю его (образ создамся без проблем). Захожу в BIOS отключаю security boot и UIEFI автоматом определяет загрузочный накопитель. Т.к решил выполнить чистую установку с нуля, снес все логически к разделы, переразметил ssd, а hdd оставил неразмеченным, видимо в этот момент снес загрузчик, который был на старом диске, но не беда, те же разделы создались на ssd. Установка проходит быстро и без  всяких проблем. Но после установки windows, uefi не находит инициализирующих файлов и тупо переводит на биос, если нет установочного диска, либо, если он есть, попадаем заново на него. Я пробовал создать разделы в ручную, через diskpart - безуспешно, пробовал физически отсоединять HDD -  то же самое. Я обновил BIOS, создал загрузочную флэшку через rufus принудительно под GPT диск, тоже безрезультатно. Кривой образ ? Ошибка загрузчика ?

Есть подозрение что UEFI из внутренних устройств ищет свой драйвер только на устройстве, подключённом через порт 0.

Я попробовал накатить 2 системы на каждый из дисков. При загрузке windows с диска  0 - hdd все ок, если попытаться загрузиться с ssd загрузчик ругается на отсутствие исполнительного файла .efi. И тут я собственно сдался.

Загрузка legacy есть, но там всегда чёрный экран. Security boot отключён, fast boot отключён, CSM отключён. Я бы подумал, что на плате в принципе отсутствует возможность загрузки через UEFI с m2 sata, но отзывы об этом ноутбуке в интернет махинах, говорит о том, что m2 полноценно работает и windows запускается именно с него.

Помогите пожалуйста, если нужны будут скрины - пишите, все выложу.

Показать полностью 2
[моё] Компьютерная помощь Помощь Накопитель SSD Windows 10 Uefi Длиннопост
43
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Маркет Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии