Магнитный барабан

Магни́тный бараба́н — устройство компьютерной памяти, широко использовавшееся в 1950-х — начале 1960-х годов. Барабаны применялись настолько широко, что содержащие их вычислительные машины[какие?] часто называли «барабанными компьютерами» (англ. drum machines).

Магнитный барабан польского компьютера ZAM-41.
Магнитный барабан советского производства

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

ИсторияПравить

Магнитный барабан был изобретён Густавом Таушеком (англ.) в 1932 году в Австрии.

Внешняя память и оперативная памятьПравить

Для многих[каких?] вычислительных машин первого поколения барабан, помимо применения в качестве внешней памяти, выполнял функции оперативной памяти: на нём хранились выполняемые программы и обрабатываемые данные. (В качестве внешней памяти тогда использовались такие носители информации, как перфоленты, перфокарты, накопители на магнитных лентах.)

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

В качестве внешней памяти на смену барабанам пришли жёсткие диски, будучи менее дорогими и более ёмкими.

Производство магнитных барабанов было прекращено в 1970-х годах.

ВидеопамятьПравить

Магнитный барабан использовался в кадровых буферах (видеопамяти) первых графических растровых систем середины 60-х годов, как более дешёвая альтернатива памяти на магнитных сердечниках. Стоимость памяти на магнитных сердечниках составляла 500 тыс. долларов за миллион бит, что позволяло сохранить лишь четыре чёрно-белых телевизионных кадра, а барабан стоил около 30 тыс. долларов и мог сохранять данные для 10 кадров изображения. Недостатком растровых систем с памятью на магнитном барабане (как и у следующего поколения с памятью на сдвиговых регистрах) была высокая латентность (и, в итоге, заметная задержка в отображении действий пользователя). Она обусловлена тем, что изменения появляются на экране только после того, как значения всех пикселей нового кадра были последовательно записаны на барабан или введены в сдвиговый регистр. И лишь с появлением в первой половине 70-х годов приемлемой по стоимости памяти с произвольным доступом появилась возможность "распараллелить" процессы изменения содержимого видеопамяти (действиями пользователя или программы обработки изображений) и регенерацию изображения, и тем самым устранить большую латентность[1].

ХарактеристикиПравить

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

Тем не менее, во многих применениях время доступа было неприемлемо велико. Поэтому программисты часто, при написании программ, оптимизировали расположение информации на барабане так, чтобы после обработки порции информации процессором, следующая порция данных или блок программы в это время как раз подходил к головке барабана. Это достигалось тщательным измерением времени исполнения частей программы и готовности процессора к выполнению следующего блока инструкций, располагая следующий кусок программного кода на барабане так, чтобы он в момент окончания исполнения предыдущего блока программы «подъезжал» точно под считывающую головку. Такой метод оптимизации временны́х задержек, обусловленный последовательным доступом к информации на барабане называется «фактором (коэффициентом) пропуска» (англ. Skip Factor) или «чередованием секторов» (англ.) и используется так же в контроллерах жёстких дисков.

Интересные фактыПравить

В некоторых операционных системах семейства BSD устройством /dev/drum (то есть «барабаном») по умолчанию называется устройство для подкачки страниц виртуальной памяти, хотя уже давно барабаны для хранения информации не используются.

ПримечанияПравить

  1. Перевод с англ. А.Ю.Батыря и Р.Г. Герра под ред. канд. физ.-мат. наук В.Л.Стефанюка. Компьютер обретает разум. — Москва: «Мир», 1990. — С. 160—164. — 240 с. — ISBN 5-03-001277-X.

СсылкиПравить