Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

Одноуровневое хранилище ( SLS ) или одноуровневая память - это термин компьютерного хранилища, который имеет два значения. Эти два значения связаны между собой тем, что в обоих случаях страницы памяти могут находиться в первичной памяти ( RAM ) или во вторичной памяти (на диске); однако текущее фактическое физическое расположение страницы не имеет значения для процесса.

Первоначально это означало то, что сейчас обычно называют виртуальной памятью , которая была введена в 1962 году системой Атлас в Манчестере. [1]

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

Концепция постоянных объектов была впервые представлена Multics в середине 1960-х годов в проекте, совместно разработанном MIT , General Electric и Bell Labs . [2] Он также был реализован как виртуальная память, причем фактическая физическая реализация включала несколько уровней типов хранения. (Например, у Multics было три уровня: изначально основная память, высокоскоростной барабан и диски.)

IBM владеет патентами на одноуровневое хранилище, реализованное в операционной системе IBM i на IBM Power Systems и ее предшественниках, еще в System / 38 , выпущенной в 1978 году [3] [4]

Дизайн [ править ]

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

Дизайн System / 38 и IBM i [ править ]

Конструкция одноуровневого хранилища IBM была первоначально задумана и впервые предложена Фрэнком Солтисом и Гленном Генри в конце 1970-х годов как способ создания переходной реализации для компьютеров со 100% твердотельной памятью.. В то время считалось, что дисководы устареют и будут полностью заменены какой-либо формой твердотельной памяти. Система / 38 была разработана, чтобы быть независимой от формы аппаратной памяти, используемой для вторичного хранилища. Однако этого не произошло, потому что, хотя твердотельная память стала экспоненциально дешевле, жесткие диски также стали дешевле; Таким образом, соотношение цен в пользу дисковых накопителей сохраняется: емкость намного выше, чем у твердотельной памяти, гораздо медленнее для доступа и гораздо дешевле.

В IBM i операционная система полагает, что у нее есть доступ к практически неограниченному массиву хранения «реальной памяти» (т. Е. Первичной памяти). Транслятор адресов сопоставляет доступную реальную память с физической памятью, находящейся на дисковых накопителях («вращающихся» или твердотельных) или на сервере SAN (например, V7000). Операционная система просто помещает объект по адресу в своей памяти. ОС «не знает» (или не заботится), находится ли объект физически в памяти или на более медленном устройстве хранения данных. Лицензионный внутренний код, поверх которого работает ОС, обрабатывает сбои страниц на страницах объектов, не находящихся в физической памяти, считывая страницу в доступный страничный фрейм в первичном хранилище. [5]

В реализации одноуровневого хранилища IBM i сбои страниц делятся на две категории. Это сбои базы данных и сбои, не связанные с базой данных. Сбои базы данных возникают, когда страница, связанная с объектом реляционной базы данных, например таблицей, представлением или индексом, в настоящее время не находится в первичном хранилище. Сбои, не связанные с базой данных, возникают, когда любой другой тип объекта в настоящее время не находится в основном хранилище.

IBM i рассматривает все вторичное хранилище как единый пул данных, а не как набор из нескольких пулов (файловых систем), как это обычно делается в других операционных системах, таких как системы, подобные Unix и Microsoft Windows . Он намеренно разбрасывает страницы всех объектов по всем дискам, чтобы объекты можно было сохранять и извлекать гораздо быстрее. [ необходима цитата ] В результате сервер IBM i редко становится привязанным к диску. [ необходима цитата ] Одноуровневые операционные системы хранения также позволяют свободно заменять ресурсы ЦП, памяти и диска друг на друга во время выполнения, чтобы сгладить узкие места в производительности. [ необходима цитата ]

См. Также [ править ]

Ссылки [ править ]

  1. ^ Одноуровневая система хранения , Т. Килберн, DBG Edwards, MJ Lanigan, FH Sumner, IRE Trans. Электронные компьютеры, апрель 1962 г., дата обращения 2014 - август 2007 г.
  2. ^ Виртуальная память, процессы и совместное использование в Multics , Роберт С. Дейли, Джек Б. Деннис, доступ к 2014-август-07
  3. ^ Woodie, Алекс. «Фрэнк Солтис обсуждает возможное будущее одноуровневого хранилища» . itjungle.com . ИТ-джунгли . Дата обращения 4 декабря 2020 .
  4. IBM System / 38 Technical Developments ( PDF ) , декабрь 1978 г.
  5. ^ «Управление памятью AS / 400» .