Victor_VG
Tracker Mod | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору KLASS Для IBM S/360 (S/370, ранние S/390 и S/400), ST-512/ESDI дисков это было обязательно так как собственной управляющей программы у них не было и всё управление осуществляла ОС. На диске была только механика и буферная электроника двигателей, а вся логика управления располагалась либо в групповой стойке (S/360, S/370, ранние S/390) либо в драйвере (ранние S/400). Поэтому и приходилось - сменил ОС или получил новый диск размечай заново. Например у ЕС-5029 дисковый пакет сменный и на заводе-изготовителе диск специально не форматировали так могло не совпасть положение головок в пространстве, а в составе OS/360 была специальная утилита автономной разметки и начальной инициализации дисковых и ленточных томов которая в числе прочего размечала и резидентный том ОС для её установки (а при случае могла и ОС снести - с этим я пару раз сталкивался и результат такой ошибки - если нет резервной копии системного диска, то машина на пару месяцев выведена из строя так нужно заново писать все таблицы генерации рабочей ОС, а после формировать её с десятка дистрибутивных лент), и за её вызовом строго следили - желания возится с повторной установкой ОС как-то ни у кого не было. А в более новых IDE электронику перенесли на плату под гермозоной т.к. смогли снизить линейные размеры аналоговых элементов микросхем и удалось сделать первые гибридные (аналоговые + цифровые элементы на одном кристалле) микросхемы приемлемых габаритов - цифровые кристаллы даже если они и сложнее, выходят меньше чем аналоговые по размерам т.к. в тех и токи каскадов обычно больше, и площадь пассивных элементов и теловыделение активных элементов (диоды и транзисторы) больше, да прямо на кристалле приходится располагать схемы фазовой коррекции предотвращающие превращение усилителей в генераторы (самовозбуждение) сигналов, а это опять же занятая площадь, и есть ещё электромагнитные ограничения на взаимное расположение проводников ... короче размеры набегают и если для цифровой микросхемы она считается Большой Интегральной Схемой (БИС) если в ней более 10 тыс. активных элементов, то для аналоговой уже от сотни элементов это БИС соизмеримая по сложности изготовления с цифровой БИС с сотнями тысяч элементов. Но, так или иначе схемные вопросы решили и управляющую электронику перенесли с внешней платы на сам диск создав интерфейс IDE как дешёвую альтернативу основанному на системной шине миниЭВМ DEC PDP 11 интерфейсу SCSI - Small Computers System Interface. Правда ценой такого решения стал отказ от программируемости задач I/O и поддержки разных классов периферии на одной шине. Идеология SCSI изначально строилась по принципу "Даём устройству программу работы, оно её асинхронно от ЦП выполняет и докладывает о готовности, а ЦП тем временем что-то иное считает" и контроллеру не важно кто подключён к кабелю - принтер, диск, сканер, устройство связи, другой контроллер. Для SCSI важен тип устройства - блочное (диски/ленты...) или поточное, например устройство связи и с какой скоростью меняется данными устройство. Подстройка протокола происходит динамически под каждое устройство так как в памяти контроллера записаны его параметры и если на шине несколько независимых каналов (обычно не менее двух - 8-битный Narrow SCSI и 16-и битный Wide SCSI), то и конкретный номер канала, а так же обязательный номер LUN (Logical Unit Number 0 .. 7, по умолчанию 0) - номер устройства подключённого к устройству SCSI Id K на шине N электроника которого сама может управлять дополнительными устройствами того же класса и типа. Т.е. контроллер диска может управлять подключёнными к нему дисками, а со стороны главного контроллера они выглядят как единый составной накопитель которому даётся некоторая программа обмена и он сам её выполняет докладывая главному контроллеру "работа завершена успешно" или если ему не удалось исправить ошибки, то "работа завершена с ошибками в ...", а так он отчитывается только после успешного выполнения программы. Понятно что столь сложная логика управления привела к высокой стоимости SCSI устройств, да и для микроЭВМ с её единицами периферийных устройств возможности шины SCSI поддерживающей сотни периферийных устройств в многопользовательской ОС на миниЭВМ были избыточны - вдобавок свой процессор на каждом устройстве как у SCSI дорого, так почему бы не убрать с платы устройства значительную часть управляющей логики передав её функции на уровень ОС? В итоге сначала придумали ST-512 где на плате диска были только усилители БМГ и ключи обмоток мотора, а вя остальная электроника находилась на плате ЭВМ - оказалось громоздко, да и капризно в управлении, ладно, электронику управления позиционером БМГ снесли на плату диска - сделали ESDI - габариты меньше, капризов то же, но хватает. А после на основе ESDI в контроллер добавили процессор управления отвечающий за работу системы позиционирования БМГ и выполнение разовых операций I/O - появился IDE, но главную часть - управление процедурой обмена поручили драйверу в ОС. Вышло дешевле чем в SCSI, но число устройств на шине пришлось ограничить до двух - Master и Slave и согласится с подстройкой скорости шины под самое медленное из пары устройств. Каждое SCSI устройство внутри себя работает на своей скорости и делит общую шину с другими, а между ним и шиной стоят буферные регистры в которых накапливаются данные, а после пересылаются на полной скорости шины в хост-контроллер что позволило решить проблему согласования скоростей устройств, но в IDE для удешевления и их убрали. Постепенный рост плотности записи за счёт уменьшения размеров намагниченного участка рабочего слоя пластин приходящегося на бит привёл с одной стороны к увеличению внутренней скорости обмена "контроллер - пластина" - ZBTR, а с другой к возрастанию влияния ошибок из-за внешних магнитных полей и наводимых на провода помех, что вызвано снижением уровня наводимых в обмотках МГ сигналов из-за уменьшения размеров бита, и потребовало применения более совершенных кодов коррекции ошибок, материалов для сердечников МГ с лучшим магнитными свойствами и значительно более быстродействующих и малошумных усилителей сигналов с МГ которые пришлось расположить рядом с ними для минимизации электромагнитных наводок, и вдобавок усиливать сигналы МГ не в сотни, а в сотни тысяч раз на более высоких частотах. А это и само по себе проблема так усиление схемы падает с ростом частоты до единицы, а выше критической для неё частоты становится ниже единицы, вдобавок в любой схеме есть задержка dT между моментом времени прихода сигнала на её вход и его появлением на её выходе - фазовый сдвиг растущий с уменьшением длительности входного сигнала T - dT/T. И его, как и тепловые шумы схемы в принципе убрать не возможно т.к. подвижность носителей в полупроводнике конечна, И если посмотреть условный ряд быстродействия известных полупроводников, то он будет выглядеть так: германий -> кремний -> соединения галлия. Германий давно достиг своего частотного предела, вдобавок его свойства сильно зависят от температуры, кремний сейчас достиг своего предела, а соединения галлия хотя и имеют запас по возможностям, но мало изучены и требуют переделки всей электроники под другие уровни и полярности сигналов. Так что нашему брату электронщику и коллегам-радистам работы надолго хватит, а квантовые системы мы ещё только начали исследовать и там есть куча не решённых фундаментальных физических проблем которые мы только начали смотреть на предмет "А какие знания нужны для её решения?". Ну и вернувшись к нашим баранам видим, что естественным развитием идей IDE стали PATA -> SATA диски. В первые добавили немного мозгов позволив им выполнять простейшие программы обмена в виде цепочки команд записанных в буфер диска и они стали реже дёргать ЦП с отчётами "сектор прочитал/записал, что дальше?" - теперь они его дёргают обработав несколько секторов, а вторые обзавелись очередью команд куда можно записать программу обмена для группы секторов принадлежащих одному файлу, но ни один из них не умеет работать как SCSI "Взять данные в источнике А, записать их на диск Б, а после отправить фрагмент файла Ф с Б на принтер Г, и ... . По завершении доложить о результате!" когда каждая такая программа сама может состоять из более простых программ для конкретного устройства. Для SATA это исключено в принципе, а для SCSI такая задача штатное явление, так же как ещё одна штука не доступная для SATA - к контроллеру SCSI можно подключить и ... SATA устройства, только кабель-переходник потребуется. А это всего лишь провода с разъёмами, со всем остальным хост-контроллер SCSI (сейчас используется вариант стандарта с последовательной передачей данных - SAS, но сам протокол управления на уровне принципов и возможностей не менялся - нет нужды) сам разбирается. И ему по прежнему не важно кто к нему подключён - диски, принтеры или сам чёрт с рогами - он им всем мозги вправит и заставит делать то, что мы от них хотим, а не то что они себе выдумают. Добавлено: А чтобы винты не убили в SCSI защита от дурака есть - контроллер диска смотрит корректность и чёткость считывания служебной разметки и либо просто обновляет её, либо если она сбита делает переразметку пластин, но в любом случае поле DATA каждого сектора прописывается нулями. Так что максимум что грозит хозяину шаловливых ручек это полное стирание его данных. А когда нужно отдать HDD дяде, и там что-то важное потратить несколько часов чтобы затереть это важное - нормальное явление ибо болтун, равно как ротозей и дурак лучшие друзья шпиона.
---------- Жив курилка! (Р. Ролан, "Кола Брюньон") Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti |
|