А именно. http://www.3dnews.ru/777783 - BadBIOS, или Большие проблемы и http://takie.org/news/divnyj_novyj_mir_prishel_k_vam/2013-12-16-8039- Дивный новый мир пришел к нам. Желающие могут ознакомиться с источниками моего вдохновения.
Привожу в ответ своё скромное ИМХО. Получилось ОЧЕНЬ МНОГА БУКАФФ. Пардон за это заранее.
Глоссарий:
Немного информации для непосвященных. Мало ли. Вдруг после этого захочется по техническим форумам полазить. Да и в тексте буду писать без всяких поправок на непосвященность. Так что если чего непонятно – глоссарий в помощь. Каюсь, кое-чего для глоссария из википедии брал. Но не все. Хотя, если кто «очень далек от этого, нам лишь бы в одноклассниках посидеть», то лучше дальше не читать, а сразу перейти к части под названием ВЫВОД, ибо все что перед выводом, для вас будет как китайская грамота для крестьянина средней полосы.
Камень (оно же мозг – это реже применяется) – жаргонное выражение, обозначающее CPU – Central Processor Unit – центральный процессор.
Мамка, мать, MB, M/B – Mothered Board– Материнская плата. Она же системной может называться. Соединяет всё и вся в единое целое под названием компьютер.
ОЗУ, озушка, память, оперативка, оператива – RAM (Random Access Memory), память с произвольным доступом. Может работать только когда подается напряжение. Без питания данные уничтожаются. Время жизни данных ограниченно и крайне мало. Требуется постоянная подпитка током. Поэтому без электричества данные очень быстро теряются. В серваках по нескольку лет живет. Потому что работа сервака ведется по принципу 24/7. Самое важное – всё, что в данный конкретный момент выполняет комп – происходит именно в оперативке.
CRC– Контрольная сумма (Циклический избыточный код, Cyclic redundancy check). Проверочная информация при систематическом кодировании дописывается в начало и конец сообщения. В архивах (rar, zip, tar и т.д.) вообще поблочно. Применяется повсеместно в цифровой технике современности.
ЮМ, СМ – Южный Мост, Северный Мост. Микросхема под радиатором (чаще только северник) или без такового. Названия получили из-за географического положения на мамке. Если мамку поставить вертикально так как она должна быть в системнике, то северник будет чуть ниже процессора, но выше южника. Иначе говоря, северник на севере, южник южнее.
ЮМ – это микросхема-концентратор, предназначенная для отделения высокоскоростной части «Оперативная память - Контроллер памяти - Процессор», от контролёров с более низкими пропускными способностями, дабы не засорять её и разгрузить её. Адресацией и управлением практически всех устройств на материнской плате занимается именно южный мост. Южный мост подсоединён к высокоскоростной шине и может общаться с ней как единое устройство. А вот СМ претерпел изменения за последнее время. В прошлом, данный контроллер выполнял функции посредника и контроллера между устройствами с высокими требованиями к пропускной способности (контроллер памяти, контроллёр PCI-Express шины) и процессором. Он отвечал за тип поддерживаемой памяти (максимальный объём, частота функционирования & etc), количество линий и пропускную способность PCI-Express шины (версию стандарта, количество поддерживаемых слотов). Часто в северный мост встраивали (и встраивают до сих пор) графическое видео ядро, которое сообщается с процессором по высокоскоростной шине. В современных материнских платах "северный чипсет" упразднён, либо сильно урезан по функционалу (имеет только контроллёр высокоскоростной шины PCI-e; при большой нужде к пропускной способности, не увеличивая стоимость производства и площадь чипа ЦП) в пользу встроенных в процессор контроллёров оперативной памяти и контроллёров шины PCI-e x16. Это позволило сократить задержки памяти и увеличить частоту функционирования шины, благодаря очень коротким шинам в самом процессоре. Теперь нет нужды вести сложные линии шины на материнских платах.
Винт, винчестер, хард – HDD (Hard Disk Drive), жесткий диск. Накопитель, стоящий внутри системника или ноутбука/нетбука и обеспечивающий возможность пользователю работы с файлами, данными, документами. Ну что тут сказать. Винт, он винт и есть… Постоянная энергонезависимая память большого объема.
Контроллер – цифровой блок, управляющий чем-то. Может быть, как в виде отдельной микросхемы, так в виде и отдельной платы. Пример. Контролер винта на винте крепится снизу и выглядит как отдельная плата. На мамке – контролер PS/2 в виде отдельной микросхемы.
PCI- (Peripheral component interconnect, дословно — взаимосвязь периферийных компонентов) — шина ввода-вывода для подключения периферийных устройств к материнской плате компьютера.
Debug, дебаг – отладка (проверка на глюки) чего-нибудь. Есть дебаг программный (программы отладчики) и аппаратный (чаще всего зовется верификацией) При программном дается команда и смотрится исполнение. По итогам правятся глюки. При верификации идет проверка по многим параметрам (напряжение, время отклика, температура и т.д.) Ну, приступим…
1. Железо умнеет
Начну, пожалуй, с момента, о котором пользователь чаще всего не задумывается. Как это все работает. Во-первых, и камню и винту и прочим комплектующим глубоко до звезды на ваши фотки, музыку или документы. Они умеют работать только с двоичным кодом. Это 1 – есть сигнал, 0 – нет сигнала. Это все данные, какие на низком (железном) уровне умеют обрабатывать все без исключения комплектующие, начиная от камня, заканчивая контролером клавиатуры.Камень по своей сути – всего лишь математический вычислитель. Он всего лишь 4 математических действия умеет делать – сумма двух чисел, разность двух чисел, произведение двух чисел, частное двух чисел. Правда, если уж говорить совсем честно, то умеет два действия - произведение и частное (рождается через сумму и разность). Результат может записать в какую-то ячейку ОЗУ или запросить данные из какой-то ячейки ОЗУ. Причем, эти числа в двоичной форме. Т.е. 0 – это 0, 1 – это 1, 2 - это 10, 3 – это 11 и т.д. Кому интересно – могут погуглить системы счисления. Заодно могут сразу посмотреть шестнадцатеричную систему счисления. Для более глубокого и детального разбирательства с этим пластом знаний она понадобится. В данном тексте я ее касаться не буду.
Все остальные комплектующие могут только ответить на запросы камня. По сути, процессор является единственным рабочим компонентом. Все остальные – сопроводительно-помогающие. Есть в современных компьютерах еще и сопроцессоры. Таких в наше время много. Даже в мышках современных и то они стоят. А про мамки если говорить, то их там несколько. Есть такие понятия как СМ и ЮМ. По сути, они являются своего рода сервисными сопроцессорами. Есть контролер памяти (в современных мамках отсутствует, поскольку включен в камень, до этого был на мамке и являлся в разное время то отдельной микросхемой, то частью ЮМ или СМ). Есть так же куча других контролеров, которые с той или иной точностью можно назвать сопроцессорами. И все они, помимо собственных вычислительных функций, выполняют еще и запросы основного процессора. Но и свои вычислительные функции они выполняют не сами по себе, а именно по запросу камня. Теперь еще учтем факт того, что современные камни многоядерные. Это означает практически несколько процессоров на одной внутренней шине. Это как несколько кранов в один шланг воду дуть начнут. Поэтому технические нюансы в архитектуре самого камня имеются. Тем более, что за одну единицу времени процессор способен либо получить данные, либо обработать, либо отдать. Поэтому работа строится по принципу - раскрылся для чтения-прочитал-закрылся-переварил-отдал-ракрылся для чтения. Иначе говоря, прошел один такт. Отсюда такая характеристика, как тактовая частота. Это ни что иное, как показатель скорострельности процессора, т.е. насколько быстро он способен обрабатывать данные. Сегодня эта частота измеряется в гигагерцах. Теперь про сами процессоры. Наверняка встречали такую характеристику, как техпроцесс. Например, техпроцесс 32 нм. Что это значит? Это означает, что один транзистор имеет размер не более 32 нм. А транзистор – это и есть тот самый хранитель и обработчик двоичного кода. Т.е. 1 бита. Или можно назвать его тем самым кирпичиком из которых и строится процессор. 32 н.м. – это что такое? Это размер, при котором физически транзистор настолько мал, что возникают проблемы с диэлектриком для затвора. Поскольку такой миниатюрный размер ведет к тому, что толщина диэлектрика менее 1 нм., то такой тонкий изолятор физически не в состоянии удержать токи утечки. Если диэлектрик затвора меньше 1 нм, ток утечки повышается экспоненциально. Решение найдено было. С применением более качественного диэлектрика. Но и это тоже не безгранично, поскольку на таком уровне в силу вступают небезызвестные еще со школьной поры ядерные явления притяжения и отталкивания, что в свое время уменьшает общее КПД процессора и увеличивает нагрузку на цепи питания, добавляет головной боли разработчикам и глюки из-за этого тоже добавляются. Тем более, что техпроцесс продолжает уменьшаться. Техническая сложность теперь становится более понятна для непосвященного? И вся эта куча железа обменивается между собой исключительно двоичными кодами. Не запутались еще? Волшебство не напоминает? 1 и 0 всего лишь, а на экране ТАКОЕ??!!! И как оно все при этом работает и не глючит? По поводу глюков ниже. Итак, небольшой промежуточный итог.
- Процессор – единственный рабочий узел. Все остальные – вспомогательные. Процессоры сейчас многоядерные, что означает наличие нескольких независимых процессоров, но завязанных на одну шину. Техпроцесс таков, что уменьшать дальше некуда. Производительность поэтому наращивают путем наращивания ядер. При большом количестве ядер упадет производительность из-за пропускной способности системной шины.
- Для того, чтобы процессор успешно справлялся со своей работой, часть задач просчитывают сопроцессоры, которые подчинены непосредственно процессору.
- Обмен данными происходит по общей магистрали под названием «шина». Для того, чтобы данные достигли адресата, они обеспечиваются дополнительной избыточной информацией в виде контрольной суммы и адреса потребителя. Контрольная сумма позволяет проверить целостность данных, а адрес показывает, что остальным потребителям на этот пакет внимания обращать не стоит.
- По железу проходит исключительно машинный (двоичный) код
- Каждый сопроцессор и процессор снабжены своей микропрограммой для переваривания программ на машинные коды, а так же там содержаться инструкции вычисления и верификации на каждом этапе и ряд служебных инструкций для внутреннего использования, в том числе и в процессе производства.
Законный вопрос – а кто это все согласовывает? Кто дирижер? Дирижер – BIOS на начальном этапе, после чего передает бразды правления операционке.
2. Как это управляется
Для того, чтобы у читателя мозги окончательно не вспухли, немного отвлечемся. Хотя, считаю изначально, что текст не для совсем блондинистых. Но вдруг?Итак, вспомним, как строится производство на любом крупном предприятии. Есть рабочие с низкой квалификацией или без таковой. Например, уборщики производственных помещений. Потом выше по лестнице идут квалифицированные рабочие. Токари или фрезеровщики и т.д. Выше - бригадиры. Еще выше - мастера. Еще выше – начальник цеха. Потом – начальник участка. Потом - технический директор. Потом – генеральный директор. Могут быть вариации на эту тему, но в целом где-то примерно так. В компьютерной, да и в цифровой технике в принципе, тоже есть своя определенная иерархия.
Если все комплектующие компьютера можно назвать либо неквалифицированным работником (цепи питания и транспорта), либо квалифицированным (контролеры и сопроцессоры), либо начальствующим составом уровня начальника цеха (центральный процессор), то вот BIOS – это, несомненно, уровень начальника участка как минимум, а то и уровень технического директора. Зависит от платформы, для которой данная материнка разрабатывалась. Как справедливо было замечена человеком, читающим этот текст в первоначальном варианте, я бы назвал БИОС большим рубильником! Знающим чего включать! Ну как Брежнев! Перерезал ленточку – работайте товарищи! А сам к медсестре под бочок!
Итак, подробней об этом.
Что есть BIOS? Чтобы ответить на этот вопрос, надо разобраться, а что собственно происходит, когда вы включаете компьютер? Для начала надо понять, что материнка всегда под напряжением находится, неважно выключен ваш компьютер или нет. На мать всегда подается «дежурка». Т.е. напряжение +5 в. Когда вы включаете кнопку питания, вы подаете -5 в на материнку, цепь замкнулась и дала команду на БИОС. БИОС имеет в своем составе первоначального загрузчика и, собственно, сам БИОС. Загрузчик начинает все с самопроверки.
1. инициализация базовых контролеров (их опрос по принципу тест-отклик с проверкой CRC)
2. проверка процессора (его режим, проход теста на сбои)
3. проверка наличия памяти и её режимов по тому же принципу
4. обнуление адресов памяти, предназначенных для копирования основного тела БИОС
5. копирование основного тела БИОС в память и его распаковка
6. управление передается в БИОС из ОЗУ.
7. опрос системной логики (контролеры, ЮМ и СМ, порты)
8. проверка памяти по объему и режимам, а так же по таймингам (инициализация таймингов, прописанных в БИОС на корректность относительно того, что есть в реале)
9. инициализация устройств PCI
10. поиск видеоадаптера
11. поиск винтов или других источников операционной системы
12. при наличии носителя поиск boot сектора
13. передача управления в boot сектор при наличии такового, в противном случае вывод на экран сообщения о невозможности дальнейшей загрузки с просьбой нажатия ctrl+alt+del для перезагрузки системы.
Это вкратце. Самые основные этапы. Подробно расписывать нет смысла, поскольку таких этапов в общей сложности более сотни.
А как собственно проходят эти этапы? Ведь вы уже знаете, что в каждом контроллере реализована своя микропрограмма. И учтите еще, что верность выполнения той или иной инструкции проверяется благодаря CRC. С этой позиции БИОС вполне можно назвать своей маленькой операционной сервисной системой. Таких систем много, просто мы их не замечаем. Принтерами и МФУ в наше время пользуются все или почти все. Так вот. Во многих моделях этих чудесных устройств стоит RTOS VxWorks. Это такая операционка, которая обслуживает процессор, оперативку и контролеры принтера. Вот БИОС очень сильно похож по своему функционалу именно на эту самую ось. Особенно последние версии UEFI BIOS. Там вообще всё очень круто и красиво. Мышка поддерживается, русский язык чаще всего есть. Красивые значки вместо непонятных для обычного пользователя надписей на английском белыми буквами на синем фоне. Полноценная операционка. С более расширенными функциями, чем старая. Хорошо это или плохо? Сложно сказать. Однозначного ответа нет. Хотя бы в силу того, что пользователю по барабану какой БИОС. Лишь бы результат был. Поэтому обсуждений на этот счет почти нет. Все как данность воспринимают то, что производитель в микросхему с БИОСом зашивает. А вот слаженность работы отдельных компонентов и операционной системы зависит от того, насколько грамотно операционка способна обрабатывать отклики микропрограмм. Поэтому получается, что БИОС поступает по принципу – Мавр сделал свое дело – Мавр может уходить.
3.Как это делается
Вдаваться слишком глубоко в технологические тонкости не буду. Скажу только вот что. По поводу верификации. На этапе производства этих самых «умных железок», для того чтобы их «оживить» (т.е. из просто железа превратить в программный комплекс, размещенный на мамке), к ним применяют ряд приемов для программирования. Т.е. закладывается «прошивка» в каждый такой компонент. Почему производитель, при прогоне очередного камня и увидев, что он с небольшим браком, должен терять прибыль? Можно ведь программно на этапе верификации выключить одно из ядер и все… Шина разгружена, глюки ушли. Или наоборот, после дебага камень из какого-нибудь i3 превращается в G870. Или же просто верификация проходит и камень идет дальше. С положительным заключением. Следовательно, в самом камне или в контролере на этапе производства необходимо предусмотреть возможность аппаратного дебага. А в этот режим можно попасть методом скрытого инженерного меню (как на операционке Андроид – нажав несколько кнопок выпадаем в RECOVERY MODE) или с помощью специально для этих целей спроектированных и оставленных на этапе производства «закладок» - скрытых аппаратных компонентов, способных перехватить на себя основное управление вшитой программой. Инженерное меню для операционки годится (пример с андроидом вспоминаем), а вот на низком уровне (уровне контролера и камней) менюшкой инженерной точно не обойтись. Приходится делать эти самые «закладки». Еще раз подчеркиваю – это ПРОИЗВОДСТВЕННАЯ НЕОБХОДИМОСТЬ, а не блажь производителей. И эта необходимость распространяется на АБСОЛЮТНО ВСЕ программируемые компоненты любых цифровых устройств. Мало того, любое производство микропроцессорной техники априори не может проходить без ошибок. Невозможно при количестве транзисторов на одном ядре в сотни миллионов штук добиться работоспособности каждого из них в силу размеров, особенностей технологии фотолитографии, погрешностей исходного кристалла, и много чего еще. Отсюда и разрабатываются методы гибкого конфигурирования ядра на стадии верификации. Методы, как аппаратные, так и программные, с интеграцией механизмов исправления ошибок в само тело ядра уже на стадии проектирования логики кристалла.Технология производителями и самой верификации и самих этих закладок тщательно секретится. Поскольку, расковыряв дебаг, можно много производственных секретов узнать. Хотя, отдельные умельцы умудряются делать реинжинириг (пояснять не буду, если кто до этого места дочитал, то погуглить точно сможет). Но только это чаще всего относится к печатающей технике в связи с изготовлением фикс-прошивок, убирающих в этой технике защиту от заправки (расчиповкой это в народе называется).
По поводу винтов. Это отдельный разговор. Тут несколько проще и сложнее одновременно. Раньше объем винтов был небольшой. Поэтому физически на низком уровне было не так сложно организовать адресацию для контролера этого самого винта при поиске информации. Сейчас же объемы выросли, а технологии чтения-записи остались те же. Т.е. на основе магнитного носителя. Но магнитный носитель не может до бесконечности увеличиваться. Поэтому в ход идут самые разные ухищрения. Вплоть до того, что дорожки друг от друга отделяются все меньшими расстояниями или вообще начинают частично друг друга перекрывать. Это, естественно, не ведет к надежности. У меня есть ряд винтов по 40 гигабайт. В идеальном состоянии. Выпуска 2001 года. До сих пор можно эксплуатировать. Ни одного бадсектора. А вот на терробайт уже высыпался. И не один. И выпуск их 2012 (2 штуки) и 2013 (1 штука). Почему так происходит? По тому что есть такое понятие, как копроэкономика. Но мы ее коснемся в части по названием ВЫВОД. Поговорим подробней о контролере винта. И о самом винте. Раньше использовалась адресация CHS (Cylinder, Head, Sector). Т.е. чтобы найти какой-то файл использовались его координаты по принципу цилиндр № такой-то, головка № такая-то, сектор № такой-то. Размер рос. И перешагнул физическую возможность самой такой адресации. Поэтому контроллеры дисков стали сообщать БИОСу не реальную, а фиктивную, логическую геометрию, вписывающуюся в ограничения интерфейсов, но не соответствующую реальности. Далее приведу цитату из одной умной книги (Петр Ташков. ”Восстановление данных на 100 %”):
"В действительности данные на пластинах винчестера организованы довольно сложно. Об истинном их расположении «знают» только контроллер и микропрограмма винчестера. Пока все работает, через интерфейс жесткий диск видится как стандартная матрица блоков или секторов. Если же выходят из строя головки, то разрушаются некоторые области пластин и т. д. Поэтому прочитать данные можно лишь штатными средствами такого жесткого диска. Сами специалисты фирм-изготовителей признают, что все рассуждения на тему сканирования извлеченных из корпуса пластин, считывания остаточной намагниченности оказываются бесполезными. Даже теория хранения данных на винчестере оставляет место для неопределенности.
Достаточно жестко прописана на поверхности пластин лишь сервоинформация. Это магнитные метки и коды, которые указывают положение дорожек и секторов. Благодаря им головки позиционируются относительно пластин и находят нужные дорожки и секторы. Сервометки записываются на почти готовый винчестер в процессе изготовления на специальном оборудовании, после этого их невозможно ни стереть, ни изменить."
Получается, что контролер винчестера тоже очень важная составляющая. Но в отличие от всех других контролеров, добраться до него можно с помощью обычного дебаг кабеля, спаянного в бытовых условиях на основе микросхемы MAX232. Интересующиеся могут поискать в Интернете по поисковому запросу «лечение мухи цеце на винте». Почему я так много внимания уделил контролеру именно винта? Да потому что методом прошивки контролера винт из 500 гигов вполне можно сделать винтом на 750. Потеряется производительность и надежность. Но можно ведь… К стати, производитель Seagate по непроверенным слухам так и делал некоторое время. Хотя, может быть и наоборот. Делается винт на 1 Тб, сбои и ошибки неизбежны, путем коррекции и исключения и получают на выходе и 750Гб и 500Гб ! насколько далеко пошла «зараза», настолько и выключается-усыхает емкость винта. Безотходное производство!
Небольшой промежуточный итог.
1) Все «железные» компоненты общаются между собой на уровне машинных кодов, при этом используются внутренние программные решения, зашитые в эти самые компоненты
2) Основную роль согласования и сопровождения этого процесса выполняет БИОС
3) БИОС сам по себе ничего не умеет в плане железа, для его работоспособности необходимы дополнительные служебные программы, прошитые в контролерах. Именно они и являются теми «прокладками» между железом и БИОСом
4) при производстве любого железа производитель вынужден оставить ряд «закладок» для дальнейшей верификации своего продукта на предмет глюков.
4. Теперь о глюках. Он собственно и есть ВЫВОД
Проблемы (глюки т.е.) бывают нескольких видов:
А) Железные
Б) Программные на уровне контролеров и БИОСа
В) Программные на уровне какой-то конкретной операционки
Г) Необъяснимые.
Подробнее о них.
А) Это которые железные.
На каком этапе возможны сбои и глюки? На любом. Начиная от первой секунды работы материнской платы. Мало того. Они есть, ибо абсолютно исправную технику на сегодняшний день выпустить невозможно (вспомним про 32 нм и то, что это сопоставимо с 32 атомами). Но эти же самые глюки и убираются методом программной коррекции на уровне прошивок контролеров. Для чего собственно и нужна верификация. Могут быть и сбои, которые влияют на систему в целом. Проблемы с южником могут привести к отвалу в дальнейшем от системы USB портов. Или артефакты по видео при работе с интегрированной графикой. Да мало ли чего. Но это только та надводная часть айсберга, которая заметна пользователю.
Б) Есть такая вещь. Несовместимость железа. Железячники меня поймут. Это когда по всем канонам какая-то плашка памяти или видеокарта должна работать в этой мамке. Но не хочет. При этом в других мамках, даже на основе этого же самого чипсета и даже этого же самого производителя превосходно работают. Все остальные видеокарты или плашки памяти в этой мамке себя превосходно чувствуют. Вот это и есть – несовместимость. Неприятное явление и крайне редкое. Но бывает.
В) Тоже крайне редко бывает. Ну не хочет какая-то видеокарта в винде ставиться. Не идут драйвера. При этом в линуксе без проблем проприетарные дрова подхватываются и встают. Бывает, когда производитель запустил новую линейку оборудования, а дрова полностью не оттестил. За все время столкнулся раза 3. Не более. Как правило, через месяц-другой появляются или официальные драйвера или самодельные. И все нормально.
Бывает глюк с сетевыми картами NVIDIA, вшитыми на маки. Там вообще все интересно. Отваливаются в винде. Причем, на других операционках ведут себя превосходно. Тоже скорее всего глюк драйверов. А вот программный глюк винды я не смог победить даже обращением в суппорт мелкософта. Суть глюка. Локальная сеть и Интернет. Интернет раздается через локалку. Локалка на машине отсутствует. Причем, наглухо. А вот интернет есть. Всей конторой 2 месяца ничего сделать не могли.
Для того, чтобы программные глюки на уровне операционки извести, в операционку тоже всякие «закладки» встраиваются. Хотя бы Режим Бога в винде 7 и 8. Для непосвященных. Создайте папочку на рабочем столе новую. А потом ее переименуйте в GodMode.{ED7BA470-8E54-465E-825C-99712043E01C} именно так и надо назвать. Вот вам пожалуйста пример программной «закладки» в операционку.
Г) Особая категория. Их не так и много. Но они есть. И сразу с ходу не понятно куда их отнести. Это когда вообще непонятно что и как происходит. Флешка вдруг перестает определяться в одном единственном компьютере. Перестановка операционки не помогает. Установка контролера USB PCI спасает ситуацию. А потом вдруг все опять работает. После того как контролер вытащили. Предвидя поправки знатоков по настройкам БИОС. БИОС при этом даже прошивался. Не помогло. Или вдруг ни с того ни с сего начинает твориться что-то непонятное в присутствии одного и того же человека. Как только этот человек за порог– так сразу все устаканивается. Вот в такие минуты начинаешь вспоминать слова моего хорошего знакомого. «Неисповедимы пути электрона» (с). Надо сказать, что такие ситуации довольно большая редкость. У меня их всего 4 штуки было за все время. А это довольно большой промежуток. И техники компьютерной при этом через меня прошло очень много.
Почему это происходит и борьба с этим
Железные глюки.Происходят по причинам обычной физики. Физика электромагнитных полей и законов физики в разделе «Электродинамика» вообще. Именно отрицательное влияние этих самых законов и призвана ограничить или свести на нет верификация, а так же программные решения на уровне коррекции прохождения и обработки данных в самой прошивке контролеров и прочих элементов.
Несовместимость железа.
Это ничто иное, как различного рода проблемы, возникшие при производстве:
- При неудачной верификации железо все-таки выпустили в продажу
- При производстве нанесли припоя в одном или нескольких местах чуть больше, изменив таким образом ряд электромагнитных характеристик неподобающим образом.
- При производстве допустили иные погрешности. Всех сразу и не причислишь.
Бороться с этим можно только методом замены железа.
По поводу программных проблем на уровне БИОСа и контролеров можно сказать только одно. БИОС перешивается на более новый или наоборот на более старый, а вот с контролерами несколько сложнее. Насколько знаю, без спецоборудования в обычных условиях только контролер винта подается какому-либо пользовательскому воздействию. Поэтому способ борьбы остается тем же. Замена сбойной детали на нормальную.
Про проблемы в операционках – тут и говорить нечего. Мануала на этот счет столько, что им можно спокойно отапливать дома крайнего севера в течение многих лет. Поэтому повторяться не буду.
Подробнее хочется остановиться на необъяснимых.
Ни для кого не секрет, что человек является источником и приемником электромагнитных излучений. Правда, мощность этих излучений крайне мала. Вот собственно и есть люди, в присутствии которых техника просто дуреть начинает. Есть у меня одна клиентка. Как заходит, так у меня АДСЛ модем сразу в перезагрузку уходит. Проверено. Прошу выйти, объясняя перед этим, для чего, чтобы не обидеть. Выходит. Модем запускаю. Заходит – модем в перезагруз. Много раз пробовали. С одним и тем же результатом. Когда пару-тройку раз – это совпадение. Но когда раз 30 подряд – это уже закон. Ноутбук периодически на чистку привозит. От пыли и программного хлама. Её бук у нее замечательно работает. Взяла она бук сестры. Вообще включить не смогла. Есть еще один клиент. Там вообще все интересно. В квартире не все в порядке в плане электромагнитных полей, как я понимаю. Потому что его компьютер у него работает. А вот мой ноутбук в BSOD постоянно сваливался. Его компьютер дома, как я уже говорил, у него замечательно работает. А вот как ко мне он его привозит, я его чаше всего запустить не могу. По POST карте получается проблема в контролере памяти. У него же дома вообще ни одного аппаратного глюка. Я вообще-то эти случаи уже как данность принимаю. Хотя, каюсь, если бы лично со мной такого не было бы, я бы никаким рассказам не поверил.
Из-за чего они вообще возникнуть могут? Скорее всего, здесь совокупность нескольких причин, каждая из которых по своей сути не смертельная. Это и те же самые поля, это и те же самые аппаратные сбои, которые корректируются на уровне прошивки, это и наличие в пыли токопроводящих или абразивных элементов, это и элементарные окисления на контактах как плашек памяти, так и шлейфов. Вот когда они своеобразным образом сочетаются – вот тогда и происходит то, что я назвал необъяснимыми глюками.
Есть еще такой нюанс, как систематическое сознательное ухудшение качества комплектующих. Копроэкономика в действии. Интересующиеся могут почитать что есть такое копроэкономика по ссылке http://2k.livejournal.com/520078.html А я в привязке к компьютерному железу поясню. Все платы формируются либо на основе гетинакса либо на основе стеклотекстолита. Толщина материнок выпусков 2000-2008 год была несколько больше. Да и сам материал был более качественным. Сейчас материнки и многие другие платы компьютерные делаются многослойными. Это означает, что дорожки идут не только сверху и снизу платы, но и в толще самой платы. И это на фоне менее качественного основного материала. Я вот раньше всегда старался материнки заказывать формата ATX, а сейчас microATX. Потому что АТХ реально сильно гнется. И корпуса тоньше стали делать. Более жидкими. Поэтому ставишь такую мать в корпус, а ее сразу вертолетом ведет. А внутри дорожки. А они возьми и порвись через некоторое время. microATX не имеет такой площади поверхности. Поэтому менее подвержена деформациям. Тоже немаловажный фактор глюков между прочим.
В конце хотелось бы сказать вот еще о чем. Это о крайне низком знании пользователями той техники, с которой в последнее время тесно общаются. Я ведь не даром в начале статьи спросил – не напоминает ли вам это все волшебство. Всего лишь ноль и единица используется – а на экране такое!... Потому что аппаратная составляющая обычного пользователя как правило не трогает. А вот страшилки-пугалки про БИОС вирус вполне могут зацепить. Плюс Сноуден порассказал много чего. Вот и пришло время активного сенокоса для нечестных журналюг. Верхушек понахватались и вперед. Мозги народу дурить. Народ ведь дурной, аппаратной составляющей не знает. Достаточно в статье сказать пару фраз про контроллер и БИОС – и ты в глазах обывателя уже прям гуру какой-то. Да, один найдется, кто посмотрит на этот материал сквозь призму знаний. Но ведь на него одного приходиться человек 50 кто это все проглотит. Я ведь почему так подробно аппаратную часть описал. Чтобы читатель хоть немного представлял что есть что в компьютерной технике. По поводу БИОСа отдельно хочу сказать. БИОС в наше время не настолько закрытая вещь чтобы его анализу не подвергнуть. Ведь могла же фирма «ИРБИС» свой логотип в БИОС вшивать. И ДНС тоже БИОС соответствующим образом патчит. Есть такие утилитки, которые это умеют. В особо трудных случаях, когда БИОС штатными средствами не читается, его можно спокойно считать с помощью программатора с той микросхемы, где он зашит и проверить его на предмет CRC. Можно и другой туда залить. По поводу шпионажа благодаря аппаратным закладкам – да. Такая возможность есть. Но ведь и возможность ложкой столовой ямы копать имеется, а не лопатой, специально для этого предназначенной. Нет, конечно, не вопрос, если принципиально надо – то можно. Но зачем???? Для этих целей есть другие возможности. Тем более что полноценное использование этих самых «закладок» для обычного пользователя вообще не страшны, ибо пара-тройка фильмов и 500 ваших фоток вообще всем по барабану. Вот что действительно нужно учесть, так это то, что в ближайшее время необходимо всю оборонку переводить на отечественные компьютеры на базе процессора «Эльбрус». Но это пока из разряда фантастики….
За помощь в написании данной статьи и в правке ряда неточностей, а так же за внесение существенных дополнений особая благодарность Variant_Z. Компьютерщику с большим стажем, хорошему специалисту и просто хорошему человеку.
При написании данной статьи использовались материалы следующих сайтов:
http://www.xtechx.ru
http://hardwareguide.ru
http://ru.wikipedia.org
Специально для портала "Вселенная-ТСС"
При цитировании и копировании ссылка на портал "Вселенная-ТСС" обязательна
Источник: http://universe-tss.su/main/nauka/
Свежие комментарии