Главная загрузочная запись — Master boot record

Главная загрузочная запись — Master boot record

Главные загрузочная запись ( MBR ) представляет собой особый тип загрузочного сектора в самом начале секционированных компьютера запоминающих устройств , таких как жесткие диски или съемных диски , предназначенные для использования с IBM PC-совместимыми системами и за ее пределами. Концепция MBR была публично представлена ​​в 1983 году с PC DOS 2.0 .

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

Организация таблицы разделов в MBR ограничивает максимальное адресуемое пространство хранения разделенного диска до 2 ТиБ (2 32 × 512 байт) . Подходы к небольшому увеличению этого предела при условии, что 33-битная арифметика или 4096-байтовые секторы официально не поддерживаются, поскольку они фатально нарушают совместимость с существующими загрузчиками и большинством MBR-совместимых операционных систем и системных инструментов и могут вызвать серьезное повреждение данных при использовании вне жестко контролируемых системных сред. Таким образом, на новых компьютерах схема разделения на основе MBR заменяется схемой таблицы разделов GUID (GPT). GPT может сосуществовать с MBR, чтобы обеспечить некоторую ограниченную форму обратной совместимости для старых систем.

MBR отсутствуют на несекционированных носителях, таких как дискеты , суперфлоппи или другие устройства хранения, настроенные для работы как таковые.

Содержание

  • 1 Обзор
  • 2 Разбиение диска
    • 2.1 Схема сектора
    • 2.2 Записи в таблице разделов
  • 3 Загрузка системы
  • 4 Идентификация диска
  • 5 Рекомендации по программированию
    • 5.1 Интерфейс BIOS в MBR
    • 5.2 Интерфейс MBR в VBR
  • 6 Редактирование и замена содержимого
  • 7 См. Также
  • 8 Примечания
  • 9 ссылки
  • 10 Дальнейшее чтение
  • 11 Внешние ссылки

Обзор

Поддержка разделенных на разделы носителей и, следовательно, главной загрузочной записи (MBR) была представлена ​​в IBM PC DOS 2.0 в марте 1983 года для поддержки жесткого диска 10 МБ тогда еще нового IBM Personal Computer XT , все еще использующего файловую систему FAT12. . Первоначальная версия MBR была написана Дэвидом Литтоном из IBM в июне 1982 года. Таблица разделов поддерживала до четырех основных разделов , из которых DOS могла использовать только один. Это не изменилось, когда FAT16 была представлена ​​как новая файловая система с DOS 3.0. Поддержка расширенного раздела , особого типа основного раздела, используемого в качестве контейнера для хранения других разделов, была добавлена ​​в DOS 3.2, а вложенные логические диски внутри расширенного раздела — в DOS 3.30. Поскольку MS-DOS, PC DOS, OS / 2 и Windows никогда не загружались с них, формат MBR и загрузочный код оставались практически неизменными по функциональности, за исключением некоторых сторонних реализаций, на протяжении эпох DOS и OS / 2 до 1996 г.

В 1996 году поддержка адресации логических блоков (LBA) была представлена ​​в Windows 95B и DOS 7.10 для поддержки дисков размером более 8 ГБ. Также были введены временные метки диска . Это также отражало идею о том, что MBR должна быть независимой от операционной системы и файловой системы. Тем не менее, эта конструкция правило было частично нарушено в более поздних реализациях Microsoft в MBR, которые обеспечение исполнение CHS доступа к FAT16B и FAT32 типов разделов 0x06 / 0x0B , тогда как ЛАБ используются для 0x0E / 0x0c .

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

Однако записи разделов MBR и загрузочный код MBR, используемые в коммерческих операционных системах, ограничены 32 битами. Таким образом, максимальный размер диска, поддерживаемый на дисках с 512-байтовыми секторами (реальными или эмулированными) схемой разделения MBR (без использования нестандартных методов), ограничен 2 ТиБ. Следовательно, для дисков большего размера необходимо использовать другую схему разделения, поскольку они стали широко доступны с 2010 года. Таким образом, схема разделения MBR находится в процессе замены таблицей разделов GUID (GPT). Официальный подход делает немногим больше, чем обеспечение целостности данных с помощью защитной MBR . В частности, он не обеспечивает обратной совместимости с операционными системами, которые также не поддерживают схему GPT. Между тем, несколько форм гибридных MBR были разработаны и реализованы третьими сторонами, чтобы поддерживать разделы, расположенные в первых физических 2 ТиБ диска, в обеих схемах разделов «параллельно» и / или чтобы позволить более старым операционным системам загружаться с GPT. перегородки тоже. Нынешний нестандартный характер этих решений вызывает различные проблемы совместимости в определенных сценариях.

MBR состоит из 512 или более байтов, расположенных в первом секторе диска.

Он может содержать одно или несколько из:

  • Таблица разделов , описывающая разделы устройства хранения данных. В этом контексте загрузочный сектор также можно назвать сектором раздела .
  • Код начальной загрузки : инструкции по идентификации настроенного загрузочного раздела, затем загрузке и выполнении его загрузочной записи тома (VBR) в качестве загрузчика цепочки .
  • Дополнительная 32-битная временная метка диска .
  • Дополнительная 32-битная подпись диска .

Разбиение диска

IBM PC DOS 2.0 представила FDISK утилиту для создания и обслуживания разделов MBR. Когда запоминающее устройство разделено на разделы согласно этой схеме, его MBR содержит таблицу разделов, описывающую местоположения, размеры и другие атрибуты линейных областей, называемых разделами.

Сами разделы также могут содержать данные для описания более сложных схем разделения, таких как расширенные загрузочные записи (EBR), метки дисков BSD или разделы метаданных Logical Disk Manager .

MBR не находится в разделе; он расположен в первом секторе устройства (физическое смещение 0), предшествующем первому разделу. (Загрузочный сектор, присутствующий на устройстве без разделов или в отдельном разделе, вместо этого называется загрузочной записью тома ). В случаях, когда компьютер работает с оверлеем DDO BIOS или диспетчером загрузки , таблица разделов может быть перемещена в другой физический расположение на устройстве; например, Ontrack Disk Manager часто помещал копию исходного содержимого MBR во второй сектор, а затем скрывался от любой впоследствии загружаемой ОС или приложения, поэтому копия MBR обрабатывалась так, как если бы она все еще находилась в первом секторе.

Схема сектора

По соглашению, в схеме таблицы разделов MBR есть ровно четыре основных элемента таблицы разделов, хотя некоторые операционные системы и системные инструменты расширили это число до пяти (Advanced Active Partitions (AAP) с PTS-DOS 6.60 и DR-DOS 7.07), восьми ( AST и NEC ( MS-DOS 3.x, а также Storage Dimensions SpeedStor ) или даже шестнадцать записей (с Ontrack Disk Manager ).

Структура классического универсального MBR

АдресОписаниеРазмер
( байты )
0x0000 (0)Область кода начальной загрузки446
0x01BE (446)Запись раздела №1Таблица разделов
(для основных разделов)
16
0x01CE (462)Запись раздела №216
0x01DE (478)Запись раздела №316
0x01EE (494)Запись раздела №416
0x01FE (510)0x55Подпись загрузки2
0x01FF (511)0xAA
Общий размер: 446 + 4 × 16 + 2512

Структура современного стандарта MBR

АдресОписаниеРазмер
( байты )
0x0000 (0)Область кода начальной загрузки (часть 1)218
0x00DA (218)0x0000Временная метка диска (необязательно; Windows 95B / 98 / 98SE / ME (MS-DOS 7.1–8.0). В качестве альтернативы может служить подписью загрузчика OEM с NEWLDR)2
0x00DC (220)Исходный физический диск ( 0x80 — 0xFF )1
0x00DD (221)Секунды (0–59)1
0x00DE (222)Минуты (0–59)1
0x00DF (223)Часы (0–23)1
0x00E0 (224)Область кода начальной загрузки (часть 2, ввод кода в 0x0000 )216 (или 222)
0x01B8 (440)32-битная подпись дискаПодпись диска (необязательно; UEFI , Linux, семейство Windows NT и другие ОС)4
0x01BC (444)0x0000 ( 0x5A5A если защищен от копирования)2
0x01BE (446)Запись раздела №1Таблица разделов
(для основных разделов)
16
0x01CE (462)Запись раздела №216
0x01DE (478)Запись раздела №316
0x01EE (494)Запись раздела №416
0x01FE (510)0x55Подпись загрузки2
0x01FF (511)0xAA
Общий размер: 218 + 6 + 216 + 6 + 4 × 16 + 2512

Структура AAP MBR

АдресОписаниеРазмер
( байты )
0x0000 (0)Область кода начальной загрузки428
0x01AC (428)0x78Подпись AAP (необязательно)2
0x01AD (429)0x56
0x01AE (430)AAP физический диск ( 0x80 — 0xFE ; 0x00 : не используется; 0x01 — 0x7F , 0xFF : зарезервирован)Запись AAP (необязательно) ( запись раздела AAP № 0 со специальной семантикой)1
0x01AF (431)CHS (начальный) адрес раздела AAP / файла образа или VBR / EBR3
0x01B2 (434)Зарезервировано для типа раздела AAP ( 0x00 если не используется) (необязательно)1
0x01B3 (435)Зарезервировано для конечного адреса CHS в AAP (необязательно; байт со смещением 0x01B5 также используется для контрольной суммы MBR (PTS DE, BootWizard); 0x000000 если не используется)3
0x01B6 (438)Запуск LBA файла изображения AAP или VBR / EBR или относительных секторов раздела AAP (копируется со смещением в загруженном секторе над записью «скрытых секторов» BPB DOS 3.31 (или его эмуляции) для поддержки загрузки EBR) +01Chex4
0x01BA (442)Зарезервировано для секторов в AAP (необязательно; 0x00000000 если не используется)4
0x01BE (446)Запись раздела №1Таблица разделов
(для основных разделов)
16
0x01CE (462)Запись раздела №216
0x01DE (478)Запись раздела №316
0x01EE (494)Запись раздела №416
0x01FE (510)0x55Подпись загрузки2
0x01FF (511)0xAA
Общий размер: 428 + 2 + 16 + 4 × 16 + 2512

Структура NEWLDR MBR

АдресОписаниеРазмер
( байты )
0x0000 (0)JMPS ( ) / NEWLDR размер записи (часто / / для кода запуска в / / ) EBhex 0x0A 0x16 0x1C 0x000C 0x0018 0x001EЗапись NEWLDR (необязательно)2
0x0002 (2)» NEWLDR » подпись6
0x0008 (8)ПОГРУЗЧИК физический диск и флаг загрузки ( 0x80 — 0xFE , 0x00 — 0x7E , 0xFF , 0x7F ) (если не используются, это и следующие 3 байта должен быть все 0)1
0x0009 (9)CHS- адрес загрузочного сектора ЗАГРУЗЧИКА или файла образа (например, IBMBIO.LDR ) ( 0x000000 если не используется)3
0x000C (12)Допустимый минимум DL , иначе взять из таблицы разделов ( 0x80 : по умолчанию;: 0x00 всегда использовать DL;: 0xFF всегда использовать запись в таблице)1
0x000D (13)Зарезервировано ( по умолчанию: 0x000000 )3
0x0010 (16)LBA загрузочного сектора или файла образа LOADER (необязательно; 0x00000000 если не используется)4
0x0014 (20)Смещение патча загрузочного модуля VBR (по умолчанию, 0x0000 если не используется, иначе или ) 0024hex 01FDhex2
0x0016 (22)Контрольная сумма ( 0x0000 если не используется)2
0x0018 (24)Подпись загрузчика OEM (» MSWIN4 » для REAL / 32 , см. Также смещение , соответствует метке OEM со смещением в VBR (необязательно) +0DAhex +003hex6
ВарьируетсяОбласть кода начальной загрузки (ввод кода в 0x0000 )Варьируется
0x01AC (428)0x78Подпись AAP (необязательно)2
0x01AD (429)0x56
0x01AE (430)Запись №0 раздела AAP со специальной семантикойЗапись AAP (необязательно)16
0x01BE (446)Запись раздела №1Таблица разделов
(для основных разделов)
16
0x01CE (462)Запись раздела №216
0x01DE (478)Запись раздела №316
0x01EE (494)Запись раздела №416
0x01FE (510)0x55Подпись загрузки2
0x01FF (511)0xAA
Общий размер: 30 + 398 + 2 + 16 + 4 × 16 + 2512

Структура AST / NEC MS-DOS и SpeedStor MBR

АдресОписаниеРазмер
( байты )
0x0000 (0)Область кода начальной загрузки380
0x017C (380)0x5AПодпись AST / NEC (необязательно; не для SpeedStor)2
0x017D (381)0xA5
0x017E (382)Запись раздела №8Расширенная таблица разделов AST / NEC
(необязательно; также для SpeedStor)
16
0x018E (398)Запись раздела №716
0x019E (414)Запись раздела №616
0x01AE (430)Запись раздела №516
0x01BE (446)Запись раздела №4Таблица разделов
(для основных разделов)
16
0x01CE (462)Запись раздела №316
0x01DE (478)Запись раздела №216
0x01EE (494)Запись раздела №116
0x01FE (510)0x55Подпись загрузки2
0x01FF (511)0xAA
Общий размер: 380 + 2 + 4 × 16 + 4 × 16 + 2512

Структура MBR Ontrack Disk Manager

АдресОписаниеРазмер
( байты )
0x0000 (0)Область кода начальной загрузки252
0x00FC (252)0xAAПодпись DM (необязательно)2
0x00FD (253)0x55
0x00FE (254)Запись разделаРасширенная таблица разделов DM
(необязательно)
16
0x010E (270)Запись раздела16
0x011E (286)Запись раздела16
0x012E (302)Запись раздела16
0x013E (318)Запись раздела16
0x014E (334)Запись раздела16
0x015E (350)Запись раздела16
0x016E (366)Запись раздела16
0x017E (382)Запись раздела16
0x018E (398)Запись раздела16
0x019E (414)Запись раздела16
0x01AE (430)Запись раздела16
0x01BE (446)Запись раздела №1Таблица разделов
(для основных разделов)
16
0x01CE (462)Запись раздела №216
0x01DE (478)Запись раздела №316
0x01EE (494)Запись раздела №416
0x01FE (510)0x55Подпись загрузки2
0x01FF (511)0xAA
Общий размер: 252 + 2 + 12 × 16 + 4 × 16 + 2512

Записи в таблице разделов

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

В схеме CHS индексы секторов (почти) всегда начинаются с сектора 1, а не сектора 0 по соглашению, и из-за ошибки во всех версиях MS-DOS / PC DOS до 7.10 количество головок обычно ограничено. до 255 вместо 256. Когда адрес CHS слишком велик для размещения в этих полях, сегодня обычно используется кортеж (1023, 254, 63), хотя в старых системах и старых дисковых инструментах значение цилиндра часто оборачивается вокруг по модулю барьера CHS около 8 ГБ, что вызывает неоднозначность и риски повреждения данных. (Если ситуация связана с «защитной» MBR на диске с GPT, спецификация Intel Extensible Firmware Interface требует использования кортежа (1023, 255, 63).) 10-битное значение цилиндра записывается в двух байтах по порядку для облегчения выполнения вызовов к исходным / устаревшим процедурам доступа к диску INT 13h BIOS, где 16 бит были разделены на сектора и части цилиндра, а не на границы байтов.

Из-за ограничений адресации CHS был осуществлен переход к использованию LBA, или адресации логических блоков . И длина раздела, и начальный адрес раздела — это значения секторов, хранящиеся в записях таблицы разделов как 32-битные величины. Раньше размер сектора считался фиксированным и составлял 512 (2 9 ) байтов, и широкий спектр важных компонентов, включая наборы микросхем , загрузочные секторы , операционные системы , механизмы баз данных , инструменты разделения, утилиты резервного копирования и файловой системы и другое программное обеспечение, имели это значение жестко. -кодированный. С конца 2009 года были доступны дисковые накопители с 4096-байтовыми секторами ( 4Kn или Advanced Format ), хотя размер сектора для некоторых из этих дисков по-прежнему передавался в хост-систему как 512 байтов посредством преобразования на жестком диске. микропрограммное обеспечение накопителя и именуется как накопители эмуляции 512 ( 512e ).

Поскольку адреса и размеры блоков хранятся в таблице разделов MBR с использованием 32 бита, максимальный размер, а также наивысший начальный адрес раздела, использующего диски с 512-байтовыми секторами (фактическими или эмулированными), не могут превышать 2 ТиБ. −512 байт ( 2 199 023 255 040 байт или 4 294 967 295 (2 32 -1) секторов × 512 (2 9 ) байтов на сектор). Снятие этого ограничения возможностей было одной из основных причин разработки GPT.

Поскольку информация о разделах хранится в таблице разделов MBR с использованием адреса начального блока и длины, теоретически возможно определить разделы таким образом, чтобы выделенное пространство для диска с 512-байтовыми секторами давало общий размер, приближающийся к 4 ТиБ, если все разделы, кроме одного, расположены ниже предела 2 ТиБ, а последний назначен как начинающийся с блока 2 32 -1 или близкий к нему, и указывает размер до 2 32 -1, тем самым определяя раздел, требующий 33 а не 32 бита для доступа к адресу сектора. Однако на практике только некоторые операционные системы с поддержкой LBA-48 , включая GNU / Linux, FreeBSD и Windows 7, которые используют внутренние адреса 64-битных секторов, действительно поддерживают это. Из-за ограничений пространства кода и характера таблицы разделов MBR для поддержки только 32-битных загрузочных секторов, даже если они включены для поддержки LBA-48, а не LBA-28 , часто используются 32-битные вычисления, если они специально не предназначены для поддержки полный диапазон адресов LBA-48 или предназначены для работы только на 64-битных платформах. Любой загрузочный код или операционная система, использующая внутри 32-битные адреса секторов, приведет к тому, что адреса будут обходить доступ к этому разделу, что приведет к серьезному повреждению данных во всех разделах.

Для дисков с размером сектора, отличным от 512 байт, например внешних USB- накопителей , также есть ограничения. Размер сектора 4096 приводит к восьмикратному увеличению размера раздела, который может быть определен с помощью MBR, что позволяет разделам размером до 16 ТиБ (2 32 × 4096 байтов). Более поздние версии Windows, чем Windows XP, поддерживают секторы большего размера, а также Mac OS X, а Linux поддерживает секторы большего размера, начиная с 2.6.31 или 2.6.32, но проблемы с загрузчиками, инструментами разметки и реализациями BIOS компьютера присутствуют. определенные ограничения, так как они часто жестко запрограммированы на резервирование только 512 байтов для секторных буферов, что приводит к перезаписи памяти для больших размеров сектора. Это также может вызвать непредсказуемое поведение, поэтому его следует избегать, когда проблема совместимости и соответствия стандартам.

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

Начальная загрузка системы

На компьютерах, совместимых с IBM PC , загрузочная прошивка (содержащаяся в ROM BIOS ) загружает и выполняет главную загрузочную запись. PC / XT (тип 5160) использовал Intel 8088 микропроцессора . Для обеспечения совместимости все системы архитектуры x86 запускаются с микропроцессором в рабочем режиме, называемом реальным режимом . BIOS считывает MBR с запоминающего устройства в физическую память , а затем направляет микропроцессор на запуск загрузочного кода. Поскольку BIOS работает в реальном режиме, процессор находится в реальном режиме, когда программа MBR начинает выполняться, и поэтому ожидается, что начало MBR будет содержать машинный код реального режима .

Поскольку процедура начальной загрузки BIOS загружает и запускает ровно один сектор с физического диска, наличие таблицы разделов в MBR с загрузочным кодом упрощает разработку программы MBR. Он содержит небольшую программу, которая загружает загрузочную запись тома (VBR) целевого раздела. Затем управление передается этому коду, который отвечает за загрузку реальной операционной системы. Этот процесс известен как загрузка цепи .

Популярные программы с кодом MBR были созданы для загрузки ПК DOS и MS-DOS , и аналогичный загрузочный код по-прежнему широко используется. Эти загрузочные секторы ожидают, что FDISK схема таблицы разделов будет использоваться, и просматривают список разделов во встроенной таблице разделов MBR, чтобы найти единственный, который отмечен активным флагом . Затем он загружает и запускает загрузочную запись тома (VBR) активного раздела.

Существуют альтернативные реализации загрузочного кода, некоторые из которых устанавливаются менеджерами загрузки , которые работают по-разному. Некоторый код MBR загружает дополнительный код для диспетчера загрузки с первой дорожки диска, которую он считает «свободным» пространством, не выделенным ни для одного раздела диска, и выполняет его. Программа MBR может взаимодействовать с пользователем, чтобы определить, какой раздел с какого диска следует загружать, и может передавать управление в MBR другого диска. Другой код MBR содержит список расположений на диске (часто соответствующих содержимому файлов в файловой системе ) оставшейся части кода диспетчера загрузки для загрузки и выполнения. (Первый основан на поведении, которое не является универсальным для всех утилит разделения диска, особенно тех, которые читают и записывают GPT. Последний требует, чтобы встроенный список местоположений дисков обновлялся при внесении изменений, которые переместили бы оставшуюся часть кода. )

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

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

Идентификация диска

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

Подпись диска была введена в Windows NT версии 3.5, но теперь она используется несколькими операционными системами, включая ядро Linux версии 2.6 и новее. Инструменты GNU / Linux могут использовать подпись диска NT, чтобы определить, с какого диска загружалась машина.

Windows NT (и более поздние операционные системы Microsoft) использует подпись диска в качестве индекса для всех разделов на любом диске, когда-либо подключенном к компьютеру под этой ОС; эти подписи хранятся в ключах реестра Windows , в первую очередь для хранения постоянных сопоставлений между разделами диска и буквами дисков. Он также может использоваться в файлах BOOT.INI Windows NT (хотя в большинстве случаев этого не происходит) для описания местоположения загрузочных разделов Windows NT (или более поздних версий). Один из ключей (среди многих), в котором подписи дисков NT появляются в реестре Windows 2000 / XP:

Если подпись диска, хранящаяся в MBR, была A8 E1 B9 D2 (в таком порядке), а его первый раздел соответствовал логическому диску C: в Windows, то REG_BINARY данные под значением ключа DosDevicesC: были бы:

Первые четыре байта — это подпись диска. (В других ключах эти байты могут появляться в порядке, обратном порядку, который находится в секторе MBR.) За ними следуют еще восемь байтов, образующих 64-битное целое число с прямым порядком байтов , которые используются для определения байтового смещения. этого раздела. В этом случае 00 7E соответствует шестнадцатеричное значение 0x7E00 ( 32,256 ). Если предположить, что рассматриваемый диск сообщает о размере сектора 512 байт, то деление этого байтового смещения на 512 дает 63, который является номером физического сектора (или LBA), содержащим первый сектор раздела (в отличие от используемого количества секторов. в значениях секторов кортежей CHS, отсчитываемых от единицы , абсолютное значение или значение сектора LBA начинает отсчет с нуля ).

Если бы на этом диске был другой раздел со значениями 00 F8 93 71 02 после подписи диска (например, под значением ключа DosDevicesD: ), он бы начался со смещения байта 0x00027193F800 ( 10,495,457,280 ), который также является первым байтом физического сектора 20,498,940 .

Начиная с Windows Vista , подпись диска также хранится в хранилище данных конфигурации загрузки (BCD), и от этого зависит процесс загрузки. Если подпись диска изменяется, не может быть найдена или возникает конфликт, Windows не может загрузиться. Если Windows не вынуждена использовать перекрывающуюся часть адреса LBA записи Advanced Active Partition в качестве псевдодисковой подписи, использование Windows противоречит функции Advanced Active Partition PTS-DOS 7 и DR-DOS 7.07, в частности, если их загрузочный код расположен за пределами первых 8 ГБ диска, поэтому необходимо использовать адресацию LBA.

Соображения по программированию

MBR возникла в PC XT . Компьютеры, совместимые с IBM PC, имеют обратный порядок байтов , что означает, что процессор сохраняет числовые значения, занимающие два или более байта, в памяти первым младшим байтом . Формат MBR на носителе отражает это соглашение. Таким образом, подпись MBR появится в редакторе диска в виде последовательности 55 AA .

Последовательность начальной загрузки в BIOS загрузит первую допустимую MBR, найденную в физической памяти компьютера по адресу 0x0000 : 0x7C00 . Последняя инструкция, выполненная в коде BIOS, будет «переходом» к этому адресу, чтобы направить выполнение к началу копии MBR. Первичной проверкой для большинства BIOS является подпись со смещением 0x01FE , хотя разработчик BIOS может выбрать включение других проверок, таких как проверка того, что MBR содержит допустимую таблицу разделов без записей, относящихся к секторам, превышающим заявленную емкость диска.

Для BIOS съемные (например, гибкие) и фиксированные диски по сути одно и то же. В любом случае BIOS считывает первый физический сектор носителя в ОЗУ по абсолютному адресу 0x7C00 , проверяет подпись в последних двух байтах загруженного сектора, а затем, если найдена правильная подпись, передает управление первому байту сектор с инструкцией перехода (JMP). Единственное реальное различие, которое делает BIOS, состоит в том, что (по умолчанию или если порядок загрузки не настраивается) он пытается загрузиться с первого съемного диска, прежде чем пытаться загрузиться с первого фиксированного диска. С точки зрения BIOS, действие MBR, загружающего загрузочную запись тома в RAM, точно такое же, как действие загрузочной записи тома с гибкого диска, загружающее объектный код загрузчика операционной системы в RAM. В любом случае программа, загруженная в BIOS, выполняет последовательную загрузку операционной системы.

В то время как код загрузочного сектора MBR ожидает загрузки по физическому адресу 0x0000 : 0x7C00 , вся память с физического адреса 0x0000 : 0x0501 (адрес 0x0000 : 0x0500 является последним, используемым BIOS Phoenix) на 0x0000 : 0x7FFF , позже уменьшенное до 0x0000 : 0xFFFF (а иногда и до 0x9000 : 0xFFFF ) ‍ — «конец первых 640 КБ» — ‌ доступен в реальном режиме. INT 12h Вызов BIOS прерывания может помочь в определении того, какой объем памяти может быть выделено безопасно (по умолчанию он просто считывает базовый размер памяти в килобайтах от сегмента : смещение места 0x0040 : 0x0013 , но это может быть завербован другим жителем предзагрузочной программного обеспечения , как Наложения BIOS, код RPL или вирусы для уменьшения заявленного объема доступной памяти, чтобы другое программное обеспечение этапа загрузки, такое как загрузочные секторы, не перезаписывало их).

Последние 66 байтов 512-байтовой MBR зарезервированы для таблицы разделов и другой информации, поэтому программа загрузочного сектора MBR должна быть достаточно маленькой, чтобы поместиться в 446 байтах памяти или меньше.

Код MBR проверяет таблицу разделов, выбирает подходящий раздел и загружает программу, которая будет выполнять следующий этап процесса загрузки, обычно с использованием вызовов INT 13h BIOS . Код начальной загрузки MBR загружает и запускает (в зависимости от загрузчика или операционной системы) код загрузочной записи тома, который находится в начале «активного» раздела. Загрузочная запись тома уместится в 512-байтовом секторе, но для кода MBR можно безопасно загружать дополнительные секторы для размещения загрузчиков длиной более одного сектора, при условии, что они не делают никаких предположений о размере сектора. Фактически, как минимум 1 КБ ОЗУ доступен по адресу 0x7C00 на каждой машине класса IBM XT и AT, так что сектор размером 1 КБ можно использовать без проблем. Как и MBR, загрузочная запись тома обычно ожидает загрузки по адресу 0x0000 : 0x7C00 . Это происходит из-за того, что конструкция загрузочной записи тома была создана на неразмеченном носителе, где загрузочная запись тома будет загружаться непосредственно процедурой загрузки BIOS; как упоминалось выше, BIOS обрабатывает MBR и загрузочные записи тома (VBR) совершенно одинаково. Поскольку это то же место, где загружается MBR, одна из первых задач MBR — переместить себя в другое место в памяти. Адрес перемещения определяется MBR, но чаще всего это 0x0000 : 0x0600 (для кода MBR MS-DOS / PC DOS, OS / 2 и Windows) или 0x0060 : 0x0000 (большинство MBR DR-DOS). (Несмотря на то, что оба этих сегментированных адреса разрешаются в один и тот же адрес физической памяти в реальном режиме, для загрузки Apple Darwin MBR необходимо переместить на 0x0000 : 0x0600 вместо 0x0060 : 0x0000 , поскольку код зависит от указателя DS: SI к записи раздела, предоставленной MBR, но он ошибочно ссылается на него через 0x0000 : только SI.) Важно не перемещаться по другим адресам в памяти, потому что многие VBR предполагают определенную стандартную структуру памяти при загрузке своего загрузочного файла.

Поле состояния в записи таблицы разделов используется для обозначения активного раздела. Соответствующие стандарту MBR разрешают только один раздел, помеченный как активный, и используют его как часть проверки работоспособности для определения существования действующей таблицы разделов. Они отобразят сообщение об ошибке, если более одного раздела отмечены как активные. Некоторые нестандартные MBR не рассматривают это как состояние ошибки и просто используют первый отмеченный раздел в строке.

Обычно значения, отличные от 0x00 (неактивно) и 0x80 (активно), были недопустимыми, и программа начальной загрузки отображала сообщение об ошибке при их обнаружении. Тем не менее, подключи и играй Спецификация BIOS и загрузки Спецификация BIOS (BBS) позволила другим устройствам стать загрузочным, а с 1994 года Следовательно, с введением MS-DOS 7.10 (Windows 95B) и выше, то MBR начали лечить множество бит 7 как активный флаг и отображал сообщение об ошибке только для значений 0x01 .. 0x7F . Он продолжал рассматривать запись как физический диск, который будет использоваться при загрузке VBR соответствующего раздела позже, тем самым теперь также принимая другие загрузочные диски, кроме 0x80, как действительные, однако MS-DOS не использовала это расширение отдельно. Сохранение фактического номера физического диска в таблице разделов обычно не вызывает проблем с обратной совместимостью, поскольку значение будет отличаться от 0x80 только на дисках, отличных от первого (которые в любом случае ранее не были загрузочными). Однако даже с системами, в которых разрешена загрузка с других дисков, расширение может по-прежнему не работать повсеместно, например, после изменения назначения физических дисков BIOS при удалении, добавлении или замене дисков. Следовательно, согласно спецификации загрузки BIOS (BBS), для современной MBR, принимающей бит 7 в качестве активного флага, рекомендуется передавать значение DL, изначально предоставленное BIOS, вместо использования записи в таблице разделов.

BIOS к интерфейсу MBR

MBR загружается в ячейку памяти 0x0000 : 0x7C00 и со следующими регистрами ЦП, настроенными, когда предыдущий загрузчик начальной загрузки (обычно IPL в BIOS) передает ему выполнение, перескакивая на 0x0000 : 0x7C00 в реальном режиме ЦП .

  • CS : IP = 0x0000 : 0x7C00 (фиксированный)

Некоторые BIOS Compaq ошибочно используют вместо него 0x07C0 : 0x0000 . Хотя это разрешается в одно и то же место в памяти реального режима, это нестандартно, и его следует избегать, поскольку код MBR, предполагающий определенные значения регистров или не записанный для перемещения, может не работать в противном случае.

  • DL = загрузочный накопитель ( фиксированные диски / съемные диски : 0x80 = первый, 0x81 = второй, . 0xFE ; дискеты / суперфлоппи : 0x00 = первый, 0x01 = второй, . 0x7E ; значения 0x7F и 0xFF зарезервированы для ПЗУ / удаленных приводов и не должны использоваться на диске).

DL поддерживается BIOS IBM, а также большинством других BIOS. Известно, что BIOS Toshiba T1000 не поддерживает это должным образом, и некоторые старые BIOS Wyse 286 используют значения DL больше или равные 2 для фиксированных дисков (тем самым отражая номера логических дисков в DOS, а не номера физических дисков в BIOS). USB-накопители, сконфигурированные как съемные диски, обычно получают значение DL = 0x80 , 0x81 и т. Д. Однако некоторые редкие BIOS ошибочно представили их как DL = 0x01 , как если бы они были настроены как суперфлоппи. Соответствующий стандарту BIOS присваивает числа больше или равные 0x80 исключительно фиксированным дискам / съемным дискам, и традиционно только значения 0x80 и 0x00 передавались в качестве физических дисков во время загрузки. По соглашению, разбиваются на разделы только фиксированные диски / съемные диски, поэтому единственное значение DL, которое MBR обычно может видеть, было 0x80 . Многие MBR были закодированы так, чтобы игнорировать значение DL и в любом случае работать с фиксированным значением (обычно 0x80 ). Подключи и играй Спецификация BIOS и загрузки Спецификация BIOS (BBS) , чтобы другие устройства , чтобы стать загрузочным, а с 1994 года позже рекомендует MBR и VBR код должен использовать DL , а не внутренне проводные значения по умолчанию. Это также обеспечит совместимость с различными нестандартными назначениями (см. Примеры выше), что касается кода MBR. Загрузочные компакт-диски, соответствующие спецификации El Torito, могут содержать образы дисков, смонтированные BIOS для использования в этом интерфейсе как дискеты или суперфлоппи. Значения DL, равные 0x00 и 0x01, также могут использоваться расширениями BIOS Protected Area Run Time Interface Services (PARTIES) и Trusted Computing Group (TCG) в режиме Trusted для доступа к невидимым в противном случае разделам PARTIES, файлам образов дисков, расположенным через Boot Engineering Extension Record (BEER) в последнем физическом секторе защищенной области хоста жесткого диска (HPA). Хотя код MBR разработан для имитации дискет или суперфлоппи, он принимает эти нестандартные значения DL, что позволяет использовать образы разделенных носителей, по крайней мере, на этапе загрузки операционных систем.

  • Бит 5 DH = 0: устройство поддерживается через INT 13h ; else: все равно (должно быть равно нулю). DH поддерживается некоторыми BIOS IBM.
  • Некоторые из других регистров обычно также могут содержать определенные значения регистров (DS, ES, SS = 0x0000 ; SP = 0x0400 ) с оригинальными BIOS ROM IBM, но на это не стоит полагаться, поскольку другие BIOS могут использовать другие значения. По этой причине код MBR от IBM, Microsoft, Digital Research и др. Никогда не использовал его. Использование этих значений регистров в загрузочных секторах также может вызвать проблемы в сценариях последовательной загрузки.

Системы с поддержкой Plug-and-Play BIOS или BBS будут предоставлять указатель на данные PnP в дополнение к DL:

  • DL = загрузочный привод (см. Выше)
  • ES : DI = указывает на » $PnP » структуру проверки установки

Эта информация позволяет загрузчику в MBR (или VBR, если он передается) активно взаимодействовать с BIOS или резидентным оверлеем PnP / BBS BIOS в памяти для настройки порядка загрузки и т. Д., Однако эта информация игнорируется. большинством стандартных MBR и VBR. В идеале ES: DI передается в VBR для последующего использования загруженной операционной системой, но операционные системы с поддержкой PnP обычно также имеют резервные методы для получения точки входа PnP BIOS позже, так что большинство операционных систем не полагаются на это. .

MBR к интерфейсу VBR

По соглашению, стандартный совместимый MBR передает выполнение успешно загруженному VBR, загруженному в ячейку памяти 0x0000 : 0x7C00 , путем перехода на 0x0000 : 0x7C00 в реальном режиме ЦП со следующими поддерживаемыми или специально настроенными регистрами:

  • CS: IP = 0x0000 : 0x7C00 (константа)
  • DL = загрузочный привод (см. Выше)

MBR MS-DOS 2.0-7.0 / PC DOS 2.0-6.3 не передают значение DL, полученное при записи, а скорее используют запись состояния загрузки в записи таблицы разделов выбранного основного раздела в качестве физического загрузочного накопителя. Поскольку по соглашению это 0x80 в большинстве таблиц разделов MBR, это не изменит ситуацию, если BIOS не попытается загрузиться с физического устройства, отличного от первого фиксированного диска / съемного диска в строке. Это также причина того, почему эти операционные системы не могут загрузиться со второго жесткого диска и т. Д. Некоторые инструменты FDISK позволяют также помечать разделы на дополнительных дисках как «активные». В этой ситуации, зная, что эти операционные системы в любом случае не могут загрузиться с других дисков, некоторые из них продолжают использовать традиционно фиксированное значение 0x80 в качестве активного маркера, тогда как другие используют значения, соответствующие текущему назначенному физическому диску ( 0x81 , 0x82 ), тем самым позволяя загружаться с других дисков, по крайней мере теоретически. Фактически, это будет работать со многими кодами MBR, которые принимают установленный бит 7 записи состояния загрузки как активный флаг, а не настаивают на 0x80 , однако MBR MS-DOS / PC DOS жестко запрограммированы на принятие фиксированного значения Только 0x80 . Сохранение фактического номера физического диска в таблице разделов также вызовет проблемы при изменении назначения физических дисков BIOS, например, при удалении, добавлении или замене дисков. Следовательно, для обычной MBR, принимающей бит 7 в качестве активного флага, а в противном случае просто использования и передачи в VBR значение DL, изначально предоставленное BIOS, обеспечивает максимальную гибкость. В MBR MS-DOS 7.1–8.0 бит 7 рассматривается как активный флаг, а любые значения 0x01 .. 0x7F — как недопустимые, но они по-прежнему берут физический диск из таблицы разделов, а не используют значение DL, предоставленное BIOS. Расширенные MBR DR-DOS 7.07 обрабатывают бит 7 как активный флаг и по умолчанию используют и передают значение DL BIOS (включая нестандартные значения 0x00 .. 0x01, используемые некоторыми BIOS также для разделенных носителей), но они также предоставляют специальный NEWLDR блок конфигурации для поддержки альтернативных методов загрузки в сочетании с LOADER и REAL / 32, а также для изменения детального поведения MBR, чтобы он также мог работать со значениями дисков, полученными из таблицы разделов (важно в сочетании с LOADER и AAP, см. Смещение NEWLDR 0x000C ), преобразовать нестандартные приводные устройства Wyse 0x02 .. 0x7F в 0x80 .. 0xFD и, при необходимости, исправить значение привода (сохраненное со смещением 0x019 в расширенном блоке параметров BIOS (EBPB) или смещение сектора 0x01FD ) загружали VBR перед передачей им выполнения (см. смещение NEWLDR 0x0014 ) — это также позволяет другим загрузчикам использовать NEWLDR в качестве загрузчика цепочки, настраивать его образ в памяти на лету и «туннелировать» загрузку VBR, EBR или AAP через NEWLDR.

  • Содержимое DH и ES: DI должно сохраняться в MBR для полной поддержки Plug-and-Play (см. Выше), однако многие MBR, включая MS-DOS 2.0 — 8.0 / PC DOS 2.0 — 6.3 и Windows NT / 2000 / XP, не надо. (Это неудивительно, поскольку эти версии DOS предшествовали стандарту Plug-and-Play BIOS, а предыдущие стандарты и соглашения не указывали никаких требований для сохранения каких-либо регистров, кроме DL.) Некоторые MBR устанавливают DH в 0.

Код MBR передает дополнительную информацию в VBR во многих реализациях:

  • DS: SI = указывает на 16-байтовую запись таблицы разделов MBR (в перемещенной MBR), соответствующую активированной VBR. PC-MOS 5.1 зависит от этого для загрузки, если ни один раздел в таблице разделов не отмечен как загрузочный. В сочетании с ЗАГРУЗЧИКОМ многопользовательские загрузочные секторы DOS и REAL / 32 используют это для определения загрузочного сектора активного раздела (или другого загрузчика начальной загрузки, такого как IBMBIO.LDR, в фиксированной позиции на диске), если загрузочный файл (LOADER.SYS) может не найти. PTS-DOS 6.6 и S / DOS 1.0 используют это вместе со своей функцией Advanced Active Partition (AAP). В дополнение к поддержке LOADER и AAP, DR-DOS 7.07 может использовать это для определения необходимого метода доступа INT 13h при использовании двойного кода CHS / LBA VBR, и он обновит поле загрузочного диска / флага состояния в записи раздела в соответствии с эффективно используемое значение DL. Дарвин загрузчики ( от Apple boot1h , boot1u и Дэвид Эллиотта boot1fat32 ) зависят от этого указателя , а также, но , кроме того , они не используют DS, но предположим , что должен быть установлен в 0x0000 вместо этого. Это вызовет проблемы, если это предположение неверно. Код MBR OS / 2, MS-DOS от 2.0 до 8.0, PC DOS от 2.0 до 7.10 и Windows NT / 2000 / XP также предоставляет тот же интерфейс, хотя эти системы его не используют. MBR Windows Vista / 7 больше не предоставляют этот указатель DS: SI. В то время как некоторые расширения зависят только от самой записи в 16-байтовой таблице разделов, для других расширений может потребоваться также наличие всей таблицы разделов из 4 (или 5 записей).
  • DS: BP = необязательно указывает на 16-байтовую запись таблицы разделов MBR (в перемещенной MBR), соответствующую активированной VBR. Он идентичен указателю, предоставляемому DS: SI (см. Выше) и предоставляется MBR MS-DOS 2.0-8.0, PC DOS 2.0-7.10, Windows NT / 2000 / XP / Vista / 7. Однако он не поддерживается большинством сторонних MBR.

В DR-DOS 7.07 расширенный интерфейс может быть дополнительно предоставлен расширенной MBR и вместе с ЗАГРУЗЧИКОМ:

  • AX = магическая подпись, указывающая на наличие этого расширения NEWLDR ( 0x0EDC )
  • DL = загрузочный привод (см. Выше)
  • DS: SI = указывает на используемую 16-байтовую запись таблицы разделов MBR (см. Выше)
  • ES: BX = начало загрузочного сектора или образа сектора NEWLDR (обычно 0x7C00 )
  • CX = зарезервировано

В сочетании с GPT в предложении Enhanced Disk Drive Specification (EDD) 4 Hybrid MBR рекомендуется другое расширение интерфейса:

  • EAX = 0x54504721 (» !GPT «)
  • DL = загрузочный привод (см. Выше)
  • DS: SI = указывает на структуру передачи гибридной MBR, состоящую из 16-байтовой фиктивной записи таблицы разделов MBR (со всеми установленными битами, за исключением флага загрузки со смещением 0x00 и типа раздела со смещением 0x04 ), за которым следуют дополнительные данные. Это частично совместимо с более старым расширением DS: SI, рассмотренным выше, если для этих старых расширений требуется только 16-байтовая запись раздела, а не вся таблица разделов.

Поскольку более старые операционные системы (включая их VBR) не поддерживают это расширение и не могут адресовать секторы за пределами барьера 2 ТиБ, гибридный загрузчик с поддержкой GPT должен по-прежнему эмулировать 16-байтовую фиктивную запись таблицы разделов MBR, если загрузочный раздел находится в пределах первых 2 ТиБ.

  • ES: DI = указывает на » $PnP » структуру проверки установки (см. Выше)

Редактирование и замена содержимого

Хотя можно напрямую манипулировать байтами в секторе MBR с помощью различных редакторов дисков , существуют инструменты для записи фиксированных наборов функционального кода в MBR. Начиная с MS-DOS 5.0, в программе FDISK есть переключатель /MBR , который перезаписывает код MBR. Под Windows 2000 и Windows XP , то консоль восстановления может быть использована для написания нового кода MBR на устройство хранения с помощью своей fixmbr команды. Под Windows Vista и Windows 7 , то среда восстановления может быть использована для написания нового кода MBR с помощью BOOTREC /FIXMBR команды. Некоторые сторонние утилиты также могут использоваться для непосредственного редактирования содержимого таблиц разделов (без каких-либо знаний о шестнадцатеричных редакторах или редакторах дисков / секторов), например MBRWizard .

dd также широко используется команда POSIX для чтения или записи в любое место на устройстве хранения, включая MBR. В Linux для установки MBR Windows можно использовать ms-sys. В проектах GRUB и LILO есть инструменты для записи кода в сектор MBR, а именно grub-install и lilo -mbr . Интерактивная консоль GRUB Наследство может написать в MBR, используя setup и embed команды, но GRUB2 в настоящее время требует , grub-install чтобы быть запущена из операционной системы.

Различные программы могут создавать « резервную копию » как таблицы первичных разделов, так и логических разделов в расширенном разделе.

Работа с разделами диска и загрузчиками Windows

Итак, доброго времени суток подписчики.

Сегодня, спустя рукава долгое время я наконец решил и запиливаю пост об одном из важных разделов установки и настройки Windows. А именно — распиливание диска на разделы и редактирование загрузчика.

А конкретно — я расскажу о программах которые часто использую.

Первая — замена стандартному Bootcfg.exe и BCDEdit, которые не так удобны в использовании, называется EasyBCD.

Удобный интерфейс. Русский язык. Бесплатно для некоммерческого использования. Подходит для любой операционной системы семейства MS.

Установка и первый запуск:

Главное окно программы

Как видим тут у нас прописаны 2 загрузчика.

Загрузчик Win 10 и старый «пиратский загрузчик» для Win 7.

К примеру, нам надо удалить старую и ненужную запись о загрузчике для Win 7. Для этого нажимаем кнопку «Редактировать меню загрузки»

Собственно выделяем ненужный загрузчик, жмём кнопку удалить и сохранить. Внимание! Удаление загрузчика активной системы приведёт к тому что в следующий раз компьютер у Вас не включится!!

Собственно любыеработы с загрузчиком Вы проводите аккуратно, со знанием дела и на свой страх и риск! Также делайте резервные копии важ

1.Внизу страницы нажимаем выбираем Non-commercial Free и нажимаем Register

2.Нас перекидывает на страницу регистрации на которой придумываем любое имя и почту (например: Udfisu IHDFIO и ESdfwer@efwrf.com)

3.Скачивание программы начнется автоматически

Вторая программа сегодняшней рубрики это Partition Magic Software.

Данная программа позволяет удобно редактировать разделы жесткого диска вашего ПК.

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

Единственный минус — отсутствие русского языка. Но интерфейс в принципе интуитивен и при помощи переводчика за 5 минут освоить программу возможно.

Главное окно программы:

1. Выбираем Free 9.1 Full version Windows 10/8.1/8/7/Vista/XP 30.49 MB Download from CNET

2. Нажимаем большую зелёную кнопку.

Также есть альтернатива в виде программы EaseUS Partition Master Free. Но она тоже на английском языке. И интерфейс там один-к-одному. Плюс прикручены не нужные функции в виде очистки жесткого диска и т.д..

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

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

Также на офф. сайтах вышеуказанных программ есть Bootable версии. Для загрузки с флешки/CD если основная система не загружается.

Готовые файлы прилагаю на Яндекс.Диске. Вирусов нет.

Спасибо за просмотр. Также предлагайте темы для следующих постов.

З.Ы. Я не несу ответственности за то что сломалось по причине выполнения действий указанных в посту. Все действия вы выполняете на свой страх и риск. Не вешайте свои косяки на других))

Также смотрите мой предыдущий пост по теме:

Переход на Windows 10 после окончания срока перехода

тэг для игнора — SuperDolban

Найдены дубликаты

Хорошая инфа. Спасибо, добрый человек.

Удаление загрузчика активной системы приведёт к тому что в следующий раз компьютер у Вас не включится!!

Точно не включится? Сабж блокирует подачу электричества?

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

вот гле ты был недели две назад с этим постом?

Прошу прощения, у меня вопрос.

Lenovo Idea Pad 710

Надо установить Win 7, стоит 10.

Я поставил везде legasy и режим IDE, с флешки грузится, винда копирует файлы, появляется голубой фон установщика и подвижная стрелочка мыши. И все, дальше ничего не происходит(а должно появиться меню выбора языка).

Возможно, вам известна причина такого поведения?

Сборка левая, это да. Установлена уже не раз на разные и стационары и ноутбуки, такого не было нигде(просто удивляюсь, первый раз такое).

Из-под стоящей сейчас там системы прогнал тест хдд, все ок.

С AHCI то же самое, только без фона установщика, просто мышь на черном и так же стоит.

Мб форматнуть диск сначала? Просто я хотел это сделать виндовым установщиком, как обычно.

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

Оригинальную надо ломать, а активатор не могу найти нормальный.

На том же пикабу:

С чистым дистрибутивом та же хрень:(

В Windows 10 будет больше рекламы

Компания Microsoft представила две опции в настройках, которые предназначены для продвижения и рекомендаций в сервисах Microsoft, Office 365 и браузере Microsoft Edge. В ближайшие несколько недель сверху программы настроек будет появляться уведомления с предложением «получить больше Windows».

После нажатия на этот баннер пользователь будет получать полноэкранную рекламу Microsoft, в которой будут отображаться предложения о настройке различных сервисов, где будет как возможность настроить Windows Hello, так и возможность оформить подписку Microsoft 365. Пользователи смогут продолжить, или отложить напоминание на 3 дня.

Далее появится страница рекомендованных настроек для браузера, который будет предлагать установить настройки для браузера, рекомендованные самой компанией Microsoft. Это означает, что пользователям будут предлагать установить Bing поисковой системой по умолчанию, а Edge — браузером по умолчанию. В случае, если пользователь согласится, браузер будет закреплено на рабочем столе и в панели задач.

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

Блокировка ВСЕЙ рекламы в телефоне за 1 минуту в 2020 году бесплатно и без sms 🙂 а также ограждаем ваших деток от просмотра порнографии

Читал аналогичный пост, написанный 2 дня назад для ПК, и судя по комментариям, вопрос животрепещущий, т.к. бо́льшую часть времени мы всё-же проводим с телефоном в обнимку)

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

Для Android:
Настройки > в поисковой строке пишем «DNS» > Персональный DNS сервер > Имя хоста DNS > прописываем » dns.adguard.com > Profit!
Вы прекрасны, великолепны и у вас теперь нет рекламы!))
Для визуалов, ниже в картинках, как это сделать:

! В разных прошивках и у разных производителей название может различаться, поэтому смотрите, чтобы слово «DNS» было в пункте меню !

Для Xiaomi и кастомных прошивок на его основе (MIUI) может потребоваться дополнительное приложение, если не отображает этот пункт меню:

Далее там выбираем пункт «Private DNS» и также прописываем настройку.

Если у вас не находит данный пункт меню в телефоне, просто поищите в Гугле, по фразе:
Как настроить DNS на Samsung A10 (представьте свое название производителя и модели)

А как-же владельцы iPhone и iPad спросите вы?
А никак! Ябочники должны страдать!
Ну, или покупать настройку всего за 19,99$
Муа-ха-ха-ха! «Зловещий смех»))

На самом деле здесь всё запутанней, сложнее и вообще, я, как старый «пират» не особо люблю айось за закрытость платформы, ну вы поняли)

Итак, настройка DNS в iOS (iPhone, iPad):1)Войдите в меню настроек устройства
2)Выберите пункт «Wi-Fi» (для мобильных сетей ручная настройка DNS невозможна).
3)Нажмите на название сети, к которой устройство подключено в данный момент.
4) В поле «DNS» введите введите адреса DNS:
176.103.130.130 (основной)
и
176.103.130.131(дополнительный)
чтобы прописать сервера AdGuard
либо
8.8.8.8
и
8.8.4.4
чтобы прописать DNS от Google

Итак, поздравляю!
Теперь и вы тоже прекрасны и можете наслаждаться пользованием телефоном без рекламы)

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

Пы.Сы.
Если вы хотите иметь альтернативу, чуть ниже приведу список открытых DNS серверов с описанием:

OpenDNS
208.67.222.222
208.67.220.220
Достоинства:
Давно представлен на рынке
Блокирует фишинг-сайты
Дополнительная веб-фильтрация

Cloudflare
1.1.1.1
1.0.0.1
Достоинства:
Отличная производительность
Строгие правила конфиденциальности
Поддержка на форуме сообщества

Также Cloudflare ввел фильтрацию вредоносного ПО через серверы: 1.1.1.2 и 1.0.0.2
и блокировку контента для взрослых (особенно актуально будет тем, у кого маленькие детки пользуются смартфоном) через серверы 1.1.1.3 и 1.0.0.3.

Google Public DNS
8.8.8.8
8.8.4.4
Достоинства:
Прозрачность и соблюдение конфиденциальности
Недостатки:
Предназначен для опытных пользователей

Яндекс.DNS
77.88.8.8
77.88.8.1
Достоинства:
Защита от вредоносного ПО
Стабильность
Недостатки:
Не самая высокая скорость работы

Comodo Secure DNS
8.26.56.26
8.20.247.20
Достоинства:
Фокус на безопасность
Обработка припаркованных доменов
Недостатки:
Не самая лучшая производительность

Quad9 DNS
9.9.9.9
149.112.112.112
Достоинства:
Высокий уровень производительности
Блокировка вредоносных доменов
Недостатки:
Мало информации по настройке

Adguard DNS
176.103.130.130
176.103.130.131
Достоинства:
Блокировка рекламы, счетчиков и фишинг-сайтов
Недостатки:
Блокируется не вся реклама из-за технологических ограничений

Пы.Пы.Сы. На этом всё) Пользуйтесь на здоровье, и пусть ваш интернет всегда будет чистым, а устройства без вирусов!))

Подключение старого принтера к Windows 10 при помощи Google Cloud Print

Есть в нашей семье старый лазерный принтер «Canon LBP-1120», который когда-то был отправлен на «пенсию» в гараж. Рабочий принтер с состоянием «почти новый» в силу того, что им мало пользовались. Вместо него юзаем наипростейший струйный МФУ «Canon MG2400». Он печатает в цвете, сканирует, копирует и самое главное без проблем заправляется. Конечно проигрывает в скорости печати, но для домашних нужд вполне себе удовлетворяет.

И вот появилась задача распечатать много и быстро, причем в ч/б. Струйный МФУ в этом деле естественно не помощник. Сходил в гараж за нашим «героем» и подключил к его своему ноутбуку, на котором уже очень и очень давно обитает «Windows 10». И конечно же наш «герой» не определился системой, драйверов нет, определился только USB интерфейс. И то хорошо.

Полез на сайт «Canon» за драйвером, а там – «К сожалению, ваше устройство больше не поддерживается в выбранной операционной системе. Просмотрите наш текущий ассортимент доступных устройств». В общем то я не удивился, принтер старый, а корпорациям надо зарабатывать на новых устройствах. Зачем поддерживать старое устройство? И такая ситуация почти со всеми старыми принтерами.

К слову сказать, если по работе такие принтеры попадаются, то вердикт устанавливает сразу – «На списание!». А тут ситуация как-бы не рабочая, да и карантин тоже имеет место быть. К тому же, покупать новый принтер, чтобы распечатать один раз полтыщи страниц – не резон.

Ищем альтернативные способы подключения.

Что можно сделать:

1. Попробовать найти в Интернете альтернативный драйвер. Альтернативного драйвера на мой принтер нет, я не нашел, может плохо искал). Многие ссылки с якобы «подходящим» драйвером ведут к откровенно подозрительным сайтам, поэтому не советую. Были советы использовать универсальный драйвер «HP». Не помогло.

2. Установить на виртуальной машине 32-битную «Windows 7», установить на него принтер, расшарить его и подключиться к ней из «Windows 10». Вроде здравая мысль. НО НЕ РАБОТАЕТ! Для «Windows 10» всё равно нужны драйвера принтера, которые уже не поддерживаются.

3. Установить на виртуальной машине 32-битную «Windows 7», установить на него принтер и установить на нем какой-нибудь виртуальный принтер, роутер принтеров или принт-сервер, который бы перенаправлял задание печати на наш принтер. Тоже вроде здравая идея. Часть программ условно-бесплатные, часть платные – они нам не подходят. А те что бесплатные вроде как работают, но в среде опять же «Windows 7» или возможно ниже. Задания печати из «Windows 10» просто игнорируют. Задание в «Диспетчере печати» появляется, но на печать не идет. Разбираться глубже не стал и отмел этот вариант. Возможно я ленивый и у меня кривые руки)

4. 100% рабочий вариант без танцев с бубном! Великий и могучий «Google»! А точнее «Google Cloud Print». Способ пришел как говорится – «Он сам пришел!».

Просто надо установить на гостевую ОС «Windows 7» браузер «Google Chrome», благо он еще оказывается поддерживается на 32-битных «Windows 7».

Далее надо авторизоваться в «Chrome» на гостевой ОС под своим Google-аккаунтом и открыть страницу https://www.google.com/cloudprint

На странице облачного принтера надо кликнуть на ссылку «Добавить обычный принтер» и следуя инструкции добавить наш старый принтер в облако.

Затем надо установить на наш родной «Windows 10» драйвер «облачного принтера Google» по ссылке https://tools.google.com/dlpage/cloudprintdriver

Всё как обычно – скачать, установить и всё! В списке принтеров у нас появляется «Виртуальный принтер Google».

И да, надо быть авторизованным под одним и тем же аккаунтом на родной и гостевой ОС в «Chrome».

Всё как обычно, для печати выбираем принтер «Виртуальный принтер Google» и нажимаем на «Печать». Нас перенаправит на страницу нашего виртуального принтера. Там выбираем принтер, который добавили до этого в нашей гостевой ОС и опять нажимаем на «Печать». Ждем… Моя первая страница распечаталась через секунды, эдак за 50, уже было подумал, что ничего не получилось. Но потом печать шла уже быстрее, через секунды 20-30))).

Но! Печатает! Работает! Бесплатно!

Можно было бы написать короче) Или наоборот поподробней?

Это не подробная инструкция как сделать, а просто описание способа «как можно сделать». Ведь в ИТ-кухне все изменчиво. Сегодня так, а завтра уже не так!

Как говорил гуру кулинарной кухни Илья Лазерсон – «Только принципы!». А принципы практически не изменяются.

Всем добра и удачи!

Microsoft хочет заставить пользователей уйти с Windows 7

Оповещения о смерти начнутся в полноэкранном режиме.

Компания Microsoft стоит сейчас перед непростой задачей — как заставить упорствующих пользователей Windows 7 перейти на Windows 10. Судя по всему, решение найдено.

Для обычных пользователей расширенная поддержка Windows 7 завершается 14 января 2020 года. Microsoft сейчас уже предупреждает пользователей о скорой смерти Windows 7 и предлагает переходить на Windows 10. Тем не менее, пользователи не спешат следовать советам Microsoft и переходить на более современную Windows 10.

Всплывающие иногда небольшие оповещения показались Microsoft недостаточно стимулирующими. Компания объявила, что с 15 января 2020 года она начнёт выводить полноэкранные оповещения. В них будут описываться риски использования Windows 7 Service Pack 1 после прекращения поддержки 14 января 2020 года.

Такое полноэкранное оповещение будет оставаться на дисплее, пока пользователь не вступит с ним во взаимодействие. Загораживающие доступ к контенту оповещения будут выводиться для следующих версий Windows 7 Service Pack 1: Starter (Начальная), Home Basic (Домашняя базовая) и Premium (Домашняя расширенная), Professional (Профессиональная) и Ultimate (Максимальная).

Сайты, выглядящие как рабочий стол Windows

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

Достаточно старый сайт, я его находил еще лет 10 назад под другим доменом, с тех пор особо не поменялся.

Каждая иконка — отдельная страничка, есть реакция на кнопки окошек, закрываются, уменьшаются, сворачиваются, все работает через GTT-параметры. Сайт живой, в чате переписка.

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

Здесь уровень повыше будет. Сайт создавался изначально как имитация работы интерфейса Windpws XP для шуток над друзьями и даже про BIOS и BSOD не забыли. Окошки можно перемещать мышкой, можно свернуть, открыть несколько, запустить программы и многое другое.

Есть скайп с поддержкой камеры и Half-Life 3

Как обычно, с моего блога Бортовой журнал Ктулху

По ссылке есть чутка поболее.

Срок действия вашей лицензии.

Является ли это причиной компенсации рекламодателю, за некачественно оказанную услугу?
Является ли это рекламой/антирекламой Microsoft?

Прекращается поддержка Windows 7

Твою мать! Я ещё от XP не отошёл!

Заставка Windows 10. Как это было.

Правда или фейк — не знаю, судить вам.

Песочница Windows

Windows 10 1903 принесла нам песочницу Windows Sandbox. Это очередная технология Microsoft, использующая возможности Hyper-V без установки последнего. Ранее я писал уже про подобный подход в Application Guard защитника Windows. Она стала первой технологией, использующей функции Hyper-V для запуска браузера в изолированном окружении, доступная владельцу Windows 10 Pro и старше без танцев с бубном. Песочница позволяет быстро создать временную изолированную среду для запуска потенциально опасных приложений и документов. Все изменения, внесенные в песочницу не сохраняются и при её закрытии будут утеряны.

Системные требования:

— Windows 10 Pro или Enterprise 1903 (билд 18305 и выше)

— Архитектура AMD64 (64-х разрядная система и процессор)

— 4 Гб RAM (8 рекомендуется)

— 1 Гб дискового пространства ( рекомендуется использовать SSD)

— Включенная поддержка аппаратной виртуализации в UEFI/BIOS

— 2-х ядерный процессор ( рекомендуется 4-х ядерный с Hyper-Threading)

Преимущества перед виртуальной машиной

Высокая готовность. Первоначально нужно лишь включить компонент. Не нужно ничего скачивать или устанавливать. Песочница запускается менее минуты.

Оперативное восстановление. Подобно восстановлению ВМ из снимка, песочница оживает при её перезапуске. Не нужно ничего восстанавливать, если песочница повредилась. Закрыли и открыли — всё уже работает.

Безопасность. Песочница использует аппаратную виртуализацию. Hyper-V изолирует ядро песочницы от ядра основной системы.

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

Производительность. Используется аппаратное ускорение GPU, умное управлениепамятью и интегрированный планировщик задач.

Это бесплатно. Операционную систему песочницы не нужно отдельно лицензировать в отличии от системы на том-же VirtualBox.

Включение Windows Sandbox

Для включения песочницы нам следует ввести команду в PowerShell:

Enable-WindowsOptionalFeature -FeatureName «Containers-DisposableClientVM» –Online

Или в командной строке:

Dism /online /Enable-Feature /FeatureName:»Containers-DisposableClientVM» -All

Или найти апплет включения компонентов в панели управления. После установки компьютер следует перезагрузить.

Воспользовавшись поиском Windows мы легко найдем песочницу. Ярлык так-же есть в главном меню.

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

В списке процессов её так-же никто не прятал. В моём случае, это процессы 5816 и 17976:

Как видно, используется Hyper-V, хоть в его оснастке и пусто. Но давайте взглянем на саму песочницу. Это такая же Windows, как у нас. Характеристиками система не обделена: ядер процессора как у хоста, 4 гигабайта памяти и 40 гб жесткий диск. Достаточно для большинства задач подобного рода. Стоит отметить, что виртуальный диск увеличивается динамически по мере использования. память так-же в системе используется динамическая, но в отличие от виртуального диска, возвращает системе неиспользованное пространство.

Работать с песочницей предельно просто. Окно, что мы видим — это подключение по RDP, его можно развернуть в полный экран — система масштабируется. Принтеры проброшены в момент подключения. Интернет будет из коробки. В зависимости от настроек виртуального коммутатора, будет видна локальная сеть (по умолчанию видна). Файлы можно передать в песочницу через копировать — вставить, буфер обмена работает.

Что любопытно, в песочнице пользователь по умолчанию называется: WDAGUtilityAccount. Первые четыре буквы — это сокращение от Windows Defender Application Guard, что намекает на развитие технологии Application Guard.

Подробности от команды разработчиков Windows Sandbox

Песочница Windows построена на технологии, которая называется Windows Containers. Контейнеры разрабатывались (и давно используются) для работы в облаке. Microsoft взял уже достаточно зрелую и протестированную технологию и доработал её для пользователей десктопной Windows.

Динамически генерируемый образ

Песочница является хотя и легковесной, но всё же виртуальной машиной. И, как любой виртуальной машине, ей требуется образ, с которого она может загрузится. Важнейшей особенностью Песочницы является то, что Вам не нужно откуда-то качать или создавать этот образ. Он создастся на лету, из файлов вашей текущей ОС Windows.

Мы хотим всегда получить одно и то же «чистое» окружение для Песочницы. Но есть проблема: некоторые системные файлы могут меняться. Решением было создание «динамически генерируемого образа»: для изменённых файлов в него будут включаться их оригинальные версии, но вот неизменные файлы физически в этот образ входить не будут. Вместо них будут использоваться ссылки на реальные файлы на диске. Как показала практика — такими ссылками будут большинство файлов в образе. Лишь малая их часть (около 100 МБ) войдут в образ полностью — это и будет его размер. Более того, когда Вы не используете Песочницу, эти файлы хранятся в сжатом виде и занимают около 25 МБ. При запуске Песочницы они разворачиваются в тот самый «динамический образ» размером около 100 МБ.

Умное управление памятью

Управление памятью для Песочницы — ещё одно важное усовершенствование. Гипервизор позволяет запускать на одной физической машине несколько виртуальных и это, в общем, неплохо работает на серверах. Но, в отличии от серверов, ресурсы обычных пользовательских машин значительно более ограничены. Для достижения приемлемого уровня производительности Microsoft разработал специальный режим работы памяти, при котором основная ОС и Песочница могут с некоторых случаях использовать одни и те же страницы памяти.

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

Интегрированный планировщик

В случае использования обычных виртуальных машин гипервизор контролирует работу виртуальных процессоров, работающих в них. Для Песочницы была разработана новая технология, которая называется «интегрированный планировщик», которая позволяет основной ОС решать когда и сколько ресурсов выделить Песочнице. Работает это так: виртуальный процессоры Песочницы работают как потоки внутри процесса Песочницы. В итоге они имеют те же «права», что и остальные потоки в вашей основной ОС. Если, к примеру, у вас работают какие-то высокоприоритетные потоки, то Песочница не будет отнимать у них много времени для выполнения своих задач, которые имеют нормальный приоритет. Это позволит пользоваться Песочницей, не замедляя работу критически важных приложений и сохраняя достаточную отзывчивость UI основной ОС, аналогично тому, как работает Linux KVM.

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

Как уже говорилось выше, Песочница использует гипервизор. Мы по сути запускаем одну копию Windows внутри другой. А это означает, что для её загрузки понадобится какое-то время. Мы можем тратить его при каждом запуске Песочницы, либо сделать это лишь раз, сохранив после загрузки всё состояние виртуальной ОС (изменившиеся файлы, память, регистры процессора) на диске. После этого мы сможем запускать Песочницу из данного снимка, экономя при этом время её старта.

Виртуализация графики

Аппаратная виртуализация графики — это ключ к плавному и быстрому пользовательскому интерфейсу, особенно для «тяжелых» в плане графики приложений. Однако, классические виртуальные машины изначально ограничены в возможностях напрямую использовать все ресурсы GPU. И здесь важную роль выполняют средства виртуализации графики, которые позволяют преодолеть данную проблему и в какой-то форме использовать аппаратную акселерацию в виртуальном окружении. Примером такой технологии может быть, например, Microsoft RemoteFX.

Кроме того, Microsoft активно работала с производителями графических систем и драйверов для того, чтобы интегрировать возможности виртуализации графики непосредственно в DirectX и WDDM (модель драйверов в ОС Windows).

В результате графика в Песочнице работает следующим образом:

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

Графическая подсистема Песочницы, получив команды отрисовки графики, передаёт их основной ОС

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

Это процесс можно изобразить так:

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

Использование батареи

Песочница имеет доступ к информации о заряде батареи и может оптимизировать свою работу для его экономии.

Как обычно, привожу ссылку на оригинал статьи в моём блоге.

http://ru.qaz.wiki/wiki/Master_boot_record
http://pikabu.ru/story/rabota_s_razdelami_diska_i_zagruzchikami_windows_4496340

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *