git: 29bc0e1a37 - main - update translation of books/arch-handbook to Russian

From: Vladlen Popolitov <vladlen_at_FreeBSD.org>
Date: Thu, 13 Aug 2026 14:00:31 UTC
The branch main has been updated by vladlen:

URL: https://cgit.FreeBSD.org/doc/commit/?id=29bc0e1a378311e1752e750624902043a6ff5da9

commit 29bc0e1a378311e1752e750624902043a6ff5da9
Author:     Vladlen Popolitov <vladlen@FreeBSD.org>
AuthorDate: 2026-08-13 14:00:25 +0000
Commit:     Vladlen Popolitov <vladlen@FreeBSD.org>
CommitDate: 2026-08-13 14:00:25 +0000

    update translation of books/arch-handbook to Russian
    
    Differential Revision: https://reviews.freebsd.org/D58800
---
 .../ru/books/arch-handbook/boot/_index.adoc        |   8 +-
 .../content/ru/books/arch-handbook/boot/_index.po  | 627 +++++++-------
 .../content/ru/books/arch-handbook/isa/_index.adoc |   4 +-
 .../content/ru/books/arch-handbook/isa/_index.po   | 924 ++++++++++-----------
 .../ru/books/arch-handbook/jail/_index.adoc        |   2 +-
 .../content/ru/books/arch-handbook/jail/_index.po  | 208 ++---
 .../ru/books/arch-handbook/kobj/_index.adoc        |  14 +-
 .../content/ru/books/arch-handbook/kobj/_index.po  | 170 ++--
 .../ru/books/arch-handbook/newbus/_index.adoc      |   2 +-
 .../ru/books/arch-handbook/newbus/_index.po        | 210 ++---
 .../ru/books/arch-handbook/pccard/_index.adoc      |   2 +-
 .../ru/books/arch-handbook/pccard/_index.po        | 127 ++-
 .../ru/books/arch-handbook/scsi/_index.adoc        |  12 +-
 .../content/ru/books/arch-handbook/scsi/_index.po  | 889 ++++++++++----------
 .../content/ru/books/arch-handbook/smp/_index.adoc |   2 +-
 .../content/ru/books/arch-handbook/smp/_index.po   | 383 ++++-----
 .../content/ru/books/arch-handbook/usb/_index.adoc |  14 +-
 .../content/ru/books/arch-handbook/usb/_index.po   | 176 ++--
 18 files changed, 1865 insertions(+), 1909 deletions(-)

diff --git a/documentation/content/ru/books/arch-handbook/boot/_index.adoc b/documentation/content/ru/books/arch-handbook/boot/_index.adoc
index 5f3d69baff..086039ef36 100644
--- a/documentation/content/ru/books/arch-handbook/boot/_index.adoc
+++ b/documentation/content/ru/books/arch-handbook/boot/_index.adoc
@@ -650,7 +650,7 @@ seta20.3:
 Сервер BTX подготавливает простое окружение и переключается из 16-битного реального режима в 32-битный защищённый режим, непосредственно перед передачей управления клиенту. Это включает инициализацию и обновление следующих структур данных:
 
 * Изменяет `Таблицу Векторов Прерываний (IVT)`. IVT предоставляет обработчики исключений и прерываний для кода в Реальном Режиме.
-* Создаётся `Таблица дескрипторов прерываний (IDT)`. В ней предусмотрены записи для исключений процессора, аппаратных прерываний, двух системных вызовов и интерфейса V86. IDT предоставляет обработчики исключений и прерываний для кода в защищенном режиме.
+* Создаётся `Таблица дескрипторов прерываний (IDT)`. В ней предусмотрены записи для исключений процессора, аппаратных прерываний, двух системных вызовов и интерфейса V86. IDT предоставляет обработчики исключений и прерываний для кода в защищённом режиме.
 * Создаётся `Сегмент состояния задачи (TSS)`. Это необходимо, потому что процессор работает на _наименее_ привилегированном уровне при выполнении клиента ([.filename]#boot2#), но на _наиболее_ привилегированном уровне при выполнении сервера BTX.
 * Устанавливается GDT (Глобальная Таблица Дескрипторов). Создаются записи (дескрипторы) для кода и данных супервизора, кода и данных пользователя, а также кода и данных реального режима. footnote:[Код и данные реального режима необходимы при переключении обратно в реальный режим из защищённого режима, как указано в руководствах Intel.]
 
@@ -731,7 +731,7 @@ init.0:		mov %bx,(%di)			# Store IP
 ....
 
 .[.filename]#stand/i386/btx/btx/btx.S# [[btx-ivt]]
-Следующий блок создаёт IDT (таблицу дескрипторов прерываний). IDT в защищенном режиме аналогична IVT в реальном режиме. То есть, IDT описывает различные обработчики исключений и прерываний, используемые, когда процессор работает в защищенном режиме. По сути, она также состоит из массива пар сегмент/смещение, хотя структура несколько сложнее, поскольку сегменты в защищенном режиме отличаются от реального режима, и применяются различные механизмы защиты:
+Следующий блок создаёт IDT (таблицу дескрипторов прерываний). IDT в защищённом режиме аналогична IVT в реальном режиме. То есть, IDT описывает различные обработчики исключений и прерываний, используемые, когда процессор работает в защищённом режиме. По сути, она также состоит из массива пар сегмент/смещение, хотя структура несколько сложнее, поскольку сегменты в защищённом режиме отличаются от реального режима, и применяются различные механизмы защиты:
 
 [.programlisting]
 ....
@@ -801,7 +801,7 @@ init.8:		xorl %ecx,%ecx			# Zero
 ....
 
 .[.filename]#stand/i386/btx/btx/btx.S# [[btx-prot]]
-Сначала вызывается `setpic` для программирования 8259A PIC (программируемого контроллера прерываний). Этот чип подключен к нескольким источникам аппаратных прерываний. При получении прерывания от устройства он сигнализирует процессору соответствующим вектором прерывания. Это можно настроить так, чтобы определённые прерывания были связаны с конкретными векторами прерываний, как объяснялось ранее. Затем регистры IDTR (Interrupt Descriptor Table Register) и GDTR (Global Descriptor Table Register) загружаются инструкциями `lidt` и `lgdt` соответственно. Эти регистры загружаются б
зовым адресом и предельным адресом для IDT и GDT. Следующие три инструкции устанавливают бит Protection Enable (PE) в регистре `%cr0`. Это фактически переключает процессор в 32-битный защищенный режим. Затем выполняется дальний переход на `init.8` с использованием селектора сегмента SEL_SCODE, который выбирает сегмент кода супервизора (Supervisor Code Segment). После этого перехода процессор фактически работает на уровне CPL 0 — наиболее привилегированном уровне. Наконец, для стека выбирается сегмент данных супервизора (Supervisor Data Segment) путем присвоения селектора сегмент
а SEL_SDATA регистру `%ss`. Этот сегмент данных также имеет уровень привилегий `0`.
+Сначала вызывается `setpic` для программирования 8259A PIC (программируемого контроллера прерываний). Этот чип подключен к нескольким источникам аппаратных прерываний. При получении прерывания от устройства он сигнализирует процессору соответствующим вектором прерывания. Это можно настроить так, чтобы определённые прерывания были связаны с конкретными векторами прерываний, как объяснялось ранее. Затем регистры IDTR (Interrupt Descriptor Table Register) и GDTR (Global Descriptor Table Register) загружаются инструкциями `lidt` и `lgdt` соответственно. Эти регистры загружаются б
зовым адресом и предельным адресом для IDT и GDT. Следующие три инструкции устанавливают бит Protection Enable (PE) в регистре `%cr0`. Это фактически переключает процессор в 32-битный защищённый режим. Затем выполняется дальний переход на `init.8` с использованием селектора сегмента SEL_SCODE, который выбирает сегмент кода супервизора (Supervisor Code Segment). После этого перехода процессор фактически работает на уровне CPL 0 — наиболее привилегированном уровне. Наконец, для стека выбирается сегмент данных супервизора (Supervisor Data Segment) путем присвоения селектора сегмент
а SEL_SDATA регистру `%ss`. Этот сегмент данных также имеет уровень привилегий `0`.
 
 Наш последний блок кода отвечает за загрузку TR (Регистра Задач) с селектором сегмента для TSS, который мы создали ранее, и настройку окружения пользовательского режима перед передачей управления исполнения клиенту [.filename]#boot2#.
 
@@ -1144,7 +1144,7 @@ sys/i386/i386/machdep.c:
 #endif
 ....
 
-Сегмент состояния задачи (TSS) — это ещё одна структура защищенного режима x86, используемая оборудованием для хранения информации о задаче при переключении задач.
+Сегмент состояния задачи (TSS) — это ещё одна структура защищённого режима x86, используемая оборудованием для хранения информации о задаче при переключении задач.
 
 Локальная таблица дескрипторов (LDT) используется для ссылки на код и данные пользовательского пространства. Определено несколько селекторов, указывающих на LDT, включая шлюзы системных вызовов, а также селекторы кода и данных пользователя:
 
diff --git a/documentation/content/ru/books/arch-handbook/boot/_index.po b/documentation/content/ru/books/arch-handbook/boot/_index.po
index 8dcf7b5bbd..9b1807f9b5 100644
--- a/documentation/content/ru/books/arch-handbook/boot/_index.po
+++ b/documentation/content/ru/books/arch-handbook/boot/_index.po
@@ -5,8 +5,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-11-08 16:17+0000\n"
-"PO-Revision-Date: 2026-04-05 04:45+0000\n"
+"POT-Creation-Date: 2026-08-06 22:55+0100\n"
+"PO-Revision-Date: 2026-05-18 04:45+0000\n"
 "Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
 "Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
 "documentation/booksarch-handbookboot_index/ru/>\n"
@@ -14,8 +14,8 @@ msgstr ""
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
-"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
+"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
 "X-Generator: Weblate 4.17\n"
 
 #. type: Title =
@@ -32,13 +32,13 @@ msgid "Chapter 1. Bootstrapping and Kernel Initialization"
 msgstr "Глава 1. Начальная загрузка и инициализация ядра"
 
 #. type: Title ==
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:52
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:51
 #, no-wrap
 msgid "Synopsis"
 msgstr "Обзор"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:57
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:56
 msgid ""
 "This chapter is an overview of the boot and system initialization processes, "
 "starting from the BIOS (firmware) POST, to the first user process creation.  "
@@ -56,7 +56,7 @@ msgstr ""
 "темой этого документа."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:61
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:60
 msgid ""
 "The FreeBSD boot process can be surprisingly complex.  After control is "
 "passed from the BIOS, a considerable amount of low-level configuration must "
@@ -71,13 +71,13 @@ msgstr ""
 "возможности для настройки и адаптации."
 
 #. type: Title ==
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:63
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:62
 #, no-wrap
 msgid "Overview"
 msgstr "Обзор"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:76
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:75
 msgid ""
 "The boot process is an extremely machine-dependent activity.  Not only must "
 "code be written for every computer architecture, but there may also be "
@@ -114,7 +114,7 @@ msgstr ""
 "секторе. Этот загрузочный код запускает трёхэтапный процесс загрузки FreeBSD."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:82
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:81
 msgid ""
 "The key to understanding this process is that it is a series of stages of "
 "increasing complexity.  These stages are [.filename]#boot1#, [."
@@ -131,7 +131,7 @@ msgstr ""
 "Каждая стадия рассматривается в следующих разделах."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:85
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:84
 msgid ""
 "Here is an example of the output generated by the different boot stages.  "
 "Actual output may differ from machine to machine:"
@@ -140,25 +140,25 @@ msgstr ""
 "Фактический вывод может отличаться в зависимости от машины:"
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:91
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:90
 #, no-wrap
 msgid "*FreeBSD Component*"
 msgstr "*Компонент FreeBSD*"
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:93
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:92
 #, no-wrap
 msgid "*Output (may vary)*"
 msgstr "*Вывод (может отличаться)*"
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:94
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:93
 #, no-wrap
 msgid "`boot0`"
 msgstr "`boot0`"
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:103
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:102
 #, no-wrap
 msgid ""
 "[source,bash]\n"
@@ -176,13 +176,13 @@ msgstr ""
 "...."
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:104
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:103
 #, no-wrap
 msgid "`boot2` footnote:[This prompt will appear if the user presses a key just after selecting an OS to boot at the boot0 stage.]"
 msgstr "`boot2` footnote:[Это приглашение появится, если пользователь нажмет клавишу сразу после выбора ОС для загрузки на этапе boot0.]"
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:113
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:112
 #, no-wrap
 msgid ""
 "[source,bash]\n"
@@ -200,13 +200,13 @@ msgstr ""
 "...."
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:114
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:113
 #, no-wrap
 msgid "[.filename]#loader#"
 msgstr "[.filename]#loader#"
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:130
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:129
 #, no-wrap
 msgid ""
 "[source,bash]\n"
@@ -238,13 +238,13 @@ msgstr ""
 "...."
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:131
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:130
 #, no-wrap
 msgid "kernel"
 msgstr "ядро системы"
 
 #. type: Table
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:144
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:143
 #, no-wrap
 msgid ""
 "[source,bash]\n"
@@ -270,13 +270,13 @@ msgstr ""
 "...."
 
 #. type: Title ==
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:147
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:146
 #, no-wrap
 msgid "The BIOS"
 msgstr "BIOS"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:158
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:157
 msgid ""
 "When the computer powers on, the processor's registers are set to some "
 "predefined values.  One of the registers is the _instruction pointer_ "
@@ -310,7 +310,7 @@ msgstr ""
 "устаревшем 16-битном коде."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:161
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:160
 msgid ""
 "The value of `0xfffffff0` is slightly less than 4 GB, so unless the machine "
 "has 4 GB of physical memory, it cannot point to a valid memory address.  The "
@@ -323,7 +323,7 @@ msgstr ""
 "указывал на блок памяти BIOS."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:166
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:165
 msgid ""
 "The BIOS (Basic Input Output System) is a chip on the motherboard that has a "
 "relatively small amount of read-only memory (ROM).  This memory contains "
@@ -333,14 +333,14 @@ msgid ""
 "jump instruction to the BIOS's POST routines."
 msgstr ""
 "BIOS (Basic Input Output System) — это микросхема на материнской плате, "
-"которая содержит относительно небольшой объём памяти только для чтения (ROM)"
-". Эта память включает различные низкоуровневые процедуры, специфичные для "
-"оборудования, поставляемого с материнской платой. Процессор сначала "
+"которая содержит относительно небольшой объём памяти только для чтения "
+"(ROM). Эта память включает различные низкоуровневые процедуры, специфичные "
+"для оборудования, поставляемого с материнской платой. Процессор сначала "
 "переходит по адресу 0xfffffff0, который фактически находится в памяти BIOS. "
 "Обычно по этому адресу содержится инструкция перехода к процедурам POST BIOS."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:170
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:169
 msgid ""
 "The POST (Power On Self Test) is a set of routines including the memory "
 "check, system bus check, and other low-level initialization so the CPU can "
@@ -357,7 +357,7 @@ msgstr ""
 "CD-ROM, жёсткого диска или других устройств."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:179
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:178
 msgid ""
 "The very last thing in the POST is the `INT 0x19` instruction.  The `INT "
 "0x19` handler reads 512 bytes from the first sector of boot device into the "
@@ -382,7 +382,7 @@ msgstr ""
 "первой дорожке не используются."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:183
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:182
 msgid ""
 "This sector is our boot-sequence starting point.  As we will see, this "
 "sector contains a copy of our [.filename]#boot0# program.  A jump is made by "
@@ -393,13 +393,13 @@ msgstr ""
 "BIOS выполняет переход по адресу `0x7c00`, и она начинает выполняться."
 
 #. type: Title ==
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:185
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:184
 #, no-wrap
 msgid "The Master Boot Record (`boot0`)"
 msgstr "Главная загрузочная запись (`boot0`)"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:194
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:193
 msgid ""
 "After control is received from the BIOS at memory address `0x7c00`, [."
 "filename]#boot0# starts executing.  It is the first piece of code under "
@@ -426,7 +426,7 @@ msgstr ""
 "есть_ MBR."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:197
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:196
 msgid ""
 "As mentioned previously, we're calling the BIOS `INT 0x19` to load the MBR "
 "([.filename]#boot0#) into memory at address `0x7c00`.  The source file for [."
@@ -439,7 +439,7 @@ msgstr ""
 "впечатляющий фрагмент кода, написанный Робертом Нордье."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:202
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:201
 msgid ""
 "A special structure starting from offset `0x1be` in the MBR is called the "
 "_partition table_.  It has four records of 16 bytes each, called _partition "
@@ -457,32 +457,32 @@ msgstr ""
 "продолжать работу."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:204
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:203
 msgid "A partition record has the following fields:"
 msgstr "Запись о разделе содержит следующие поля:"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:206
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:205
 msgid "the 1-byte filesystem type"
 msgstr "1-байтовый тип файловой системы"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:207
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:206
 msgid "the 1-byte bootable flag"
 msgstr "1-байтовый флаг загрузки (`bootable`)"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:208
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:207
 msgid "the 6 byte descriptor in CHS format"
 msgstr "6-байтовый дескриптор в формате CHS"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:209
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:208
 msgid "the 8 byte descriptor in LBA format"
 msgstr "8-байтовый дескриптор в формате LBA"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:213
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:212
 msgid ""
 "A partition record descriptor contains information about where exactly the "
 "partition resides on the drive.  Both descriptors, LBA and CHS, describe the "
@@ -499,7 +499,7 @@ msgstr ""
 "завершается специальной сигнатурой `0xaa55`."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:218
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:217
 msgid ""
 "The MBR must fit into 512 bytes, a single disk sector.  This program uses "
 "low-level \"tricks\" like taking advantage of the side effects of certain "
@@ -517,7 +517,7 @@ msgstr ""
 "будьте очень внимательны при изменении [.filename]#boot0.S#."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:223
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:222
 msgid ""
 "Note that the [.filename]#boot0.S# source file is assembled \"as is\": "
 "instructions are translated one by one to binary, with no additional "
@@ -537,7 +537,7 @@ msgstr ""
 "корректной работы."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:230
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:229
 msgid ""
 "It is worth looking at the [.filename]#Makefile# for [.filename]#boot0# ([."
 "filename]#stand/i386/boot0/Makefile#), as it defines some of the run-time "
@@ -563,7 +563,7 @@ msgstr ""
 "форматирование файла):"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:235
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:234
 #, no-wrap
 msgid ""
 "      BOOT_BOOT0_ORG?=0x600\n"
@@ -573,13 +573,13 @@ msgstr ""
 "      ORG=${BOOT_BOOT0_ORG}\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:237
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:236
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/Makefile# [[boot-boot0-makefile-as-is]]"
 msgstr "[.filename]#stand/i386/boot0/Makefile# [[boot-boot0-makefile-as-is]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:239
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:238
 msgid ""
 "Let us now start our study of the MBR, or [.filename]#boot0#, starting where "
 "execution begins."
@@ -587,7 +587,7 @@ msgstr ""
 "Приступим к изучению MBR, или [.filename]#boot0#, начиная с точки входа."
 
 #. type: delimited block = 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:245
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:244
 msgid ""
 "Some modifications have been made to some instructions in favor of better "
 "exposition.  For example, some macros are expanded, and some macro tests are "
@@ -600,7 +600,7 @@ msgstr ""
 "примерам кода."
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:256
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:255
 #, no-wrap
 msgid ""
 "start:\n"
@@ -620,13 +620,13 @@ msgstr ""
 "      movw $LOAD,%sp\t\t#  stack\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:258
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:257
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-entrypoint]]"
 msgstr "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-entrypoint]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:264
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:263
 msgid ""
 "This first block of code is the entry point of the program.  It is where the "
 "BIOS transfers control.  First, it makes sure that the string operations "
@@ -647,7 +647,7 @@ msgstr ""
 "чтобы обеспечить работоспособный стек."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:266
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:265
 msgid ""
 "The next block is responsible for the relocation and subsequent jump to the "
 "relocated code."
@@ -656,7 +656,7 @@ msgstr ""
 "коду."
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:280
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:279
 #, no-wrap
 msgid ""
 "      movw %sp,%si     # Source\n"
@@ -684,13 +684,13 @@ msgstr ""
 "      jmp main-LOAD+ORIGIN\t# Jump to relocated code\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:282
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:281
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-relocation]]"
 msgstr "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-relocation]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:293
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:292
 msgid ""
 "As [.filename]#boot0# is loaded by the BIOS to address `0x7C00`, it copies "
 "itself to address `0x600` and then transfers control there (recall that it "
@@ -727,7 +727,7 @@ msgstr ""
 "копируют 2 байта (1 слово) за одну итерацию."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:304
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:303
 msgid ""
 "Next, the destination register `%di` is copied to `%bp`.  `%bp` gets the "
 "value `0x800`.  The value `8` is copied to `%cl` in preparation for a new "
@@ -756,7 +756,7 @@ msgstr ""
 "абсолютные адреса избегались."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:306
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:305
 msgid ""
 "The following code block tests whether the drive number provided by the BIOS "
 "should be used, or the one stored in [.filename]#boot0#."
@@ -765,7 +765,7 @@ msgstr ""
 "предоставленный BIOS, или тот, что хранится в [.filename]#boot0#."
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:318
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:317
 #, no-wrap
 msgid ""
 "main:\n"
@@ -789,13 +789,13 @@ msgstr ""
 "#endif\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:320
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:319
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-drivenumber]]"
 msgstr "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-drivenumber]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:327
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:326
 msgid ""
 "This code tests the `SETDRV` bit (`0x20`) in the _flags_ variable.  Recall "
 "that register `%bp` points to address location `0x800`, so the test is done "
@@ -817,7 +817,7 @@ msgstr ""
 "предоставил корректный номер диска, поэтому переходим к `save_curdrive`."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:329
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:328
 msgid ""
 "The next block saves the drive number provided by the BIOS, and calls `putn` "
 "to print a new line on the screen."
@@ -826,7 +826,7 @@ msgstr ""
 "`putn` для вывода новой строки на экран."
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:341
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:340
 #, no-wrap
 msgid ""
 "save_curdrive:\n"
@@ -850,13 +850,13 @@ msgstr ""
 "      callw putn\t\t# Print a newline\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:343
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:342
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-savedrivenumber]]"
 msgstr "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-savedrivenumber]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:345
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:344
 msgid ""
 "Note that we assume `TEST` is not defined, so the conditional code in it is "
 "not assembled and will not appear in our executable [.filename]#boot0#."
@@ -866,7 +866,7 @@ msgstr ""
 "filename]#boot0#."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:351
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:350
 msgid ""
 "Our next block implements the actual scanning of the partition table.  It "
 "prints to the screen the partition type for each of the four entries in the "
@@ -883,7 +883,7 @@ msgstr ""
 "`ufs2` (FreeBSD, ID 0xa5). Реализация довольно проста."
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:356
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:355
 #, no-wrap
 msgid ""
 "      movw $(partbl+0x4),%bx\t# Partition table (+4)\n"
@@ -893,7 +893,7 @@ msgstr ""
 "      xorw %dx,%dx\t\t# Item number\n"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:372
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:371
 #, no-wrap
 msgid ""
 "read_entry:\n"
@@ -929,7 +929,7 @@ msgstr ""
 "      callw putx\t\t# Display it\n"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:377
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:376
 #, no-wrap
 msgid ""
 "next_entry:\n"
@@ -943,13 +943,13 @@ msgstr ""
 "      jnc read_entry\t\t# Till done\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:379
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:378
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-partition-scan]]"
 msgstr "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-partition-scan]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:383
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:382
 msgid ""
 "It is important to note that the active flag for each entry is cleared, so "
 "after the scanning, _no_ partition entry is active in our memory copy of [."
@@ -964,7 +964,7 @@ msgstr ""
 "существует, если пользователь решит записать изменения обратно на диск."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:388
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:387
 msgid ""
 "The next block tests for other drives.  At startup, the BIOS writes the "
 "number of drives present in the computer to address `0x475`.  If there are "
@@ -979,7 +979,7 @@ msgstr ""
 "диске."
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:397
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:396
 #, no-wrap
 msgid ""
 "      popw %ax\t\t\t# Drive number\n"
@@ -997,13 +997,13 @@ msgstr ""
 "      jz print_prompt\t\t# Yes\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:399
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:398
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-test-drives]]"
 msgstr "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-test-drives]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:402
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:401
 msgid ""
 "We make the assumption that a single drive is present, so the jump to "
 "`print_drive` is not performed.  We also assume nothing strange happened, so "
@@ -1014,7 +1014,7 @@ msgstr ""
 "не произошло, поэтому переходим к `print_prompt`."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:404
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:403
 msgid ""
 "This next block just prints out a prompt followed by the default option:"
 msgstr ""
@@ -1022,7 +1022,7 @@ msgstr ""
 "умолчанию:"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:414
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:413
 #, no-wrap
 msgid ""
 "print_prompt:\n"
@@ -1042,13 +1042,13 @@ msgstr ""
 "      jmp start_input\t\t# Skip beep\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:416
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:415
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-prompt]]"
 msgstr "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-prompt]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:418
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:417
 msgid ""
 "Finally, a jump is performed to `start_input`, where the BIOS services are "
 "used to start a timer and for reading user input from the keyboard; if the "
@@ -1059,7 +1059,7 @@ msgstr ""
 "таймер истекает, будет выбран вариант по умолчанию:"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:434
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:433
 #, no-wrap
 msgid ""
 "start_input:\n"
@@ -1091,13 +1091,13 @@ msgstr ""
 "      jb read_key\t\t# No\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:436
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:435
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-start-input]]"
 msgstr "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-start-input]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:449
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:448
 msgid ""
 "An interrupt is requested with number `0x1a` and argument `0` in register `"
 "%ah`.  The BIOS has a predefined set of services, requested by applications "
@@ -1144,7 +1144,7 @@ msgstr ""
 "пользователя; это делается через `int 0x16`, аргумент `1` в `%ah`."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:457
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:456
 msgid ""
 "Whether a key was pressed or the time expired, subsequent code validates the "
 "selection.  Based on the selection, the register `%si` is set to point to "
@@ -1165,7 +1165,7 @@ msgstr ""
 "обратно в MBR на диске. Мы оставляем детали этой реализации читателю."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:459
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:458
 msgid ""
 "We now end our study with the last code block from the [.filename]#boot0# "
 "program:"
@@ -1174,7 +1174,7 @@ msgstr ""
 "filename]#boot0#:"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:472
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:471
 #, no-wrap
 msgid ""
 "      movw $LOAD,%bx\t\t# Address for read\n"
@@ -1200,13 +1200,13 @@ msgstr ""
 "      jmp *%bx\t\t\t# Invoke bootstrap\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:474
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:473
 #, no-wrap
 msgid "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-check-bootable]]"
 msgstr "[.filename]#stand/i386/boot0/boot0.S# [[boot-boot0-check-bootable]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:478
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:477
 msgid ""
 "Recall that `%si` points to the selected partition entry.  This entry tells "
 "us where the partition begins on disk.  We assume, of course, that the "
@@ -1217,7 +1217,7 @@ msgstr ""
 "выбранный раздел действительно является срезом FreeBSD."
 
 #. type: delimited block = 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:482
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:481
 msgid ""
 "From now on, we will favor the use of the technically more accurate term "
 "\"slice\" rather than \"partition\"."
@@ -1226,7 +1226,7 @@ msgstr ""
 "термина \"слайс\" вместо \"раздел\"."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:488
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:487
 msgid ""
 "The transfer buffer is set to `0x7c00` (register `%bx`), and a read for the "
 "first sector of the FreeBSD slice is requested by calling `intx13`.  We "
@@ -1246,18 +1246,18 @@ msgstr ""
 "выполнение нашего следующего этапа (только что прочитанного блока)."
 
 #. type: Title ==
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:490
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:489
 #, no-wrap
 msgid "`boot1` Stage"
 msgstr "Этап `boot1`"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:493
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:492
 msgid "So far we have gone through the following sequence:"
 msgstr "До сих пор мы прошли следующую последовательность:"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:497
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:496
 msgid ""
 "The BIOS did some early hardware initialization, including the POST.  The "
 "MBR ([.filename]#boot0#) was loaded from absolute disk sector one to address "
@@ -1268,7 +1268,7 @@ msgstr ""
 "один с диска. Управление выполнением было передано по этому адресу."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:500
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:499
 msgid ""
 "[.filename]#boot0# relocated itself to the location it was linked to execute "
 "(`0x600`), followed by a jump to continue execution at the appropriate "
@@ -1283,7 +1283,7 @@ msgstr ""
 "Управление выполнением было передано по этому адресу."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:513
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:512
 msgid ""
 "[.filename]#boot1# is the next step in the boot-loading sequence.  It is the "
 "first of three boot stages.  Note that we have been dealing exclusively with "
@@ -1327,7 +1327,7 @@ msgstr ""
 "он фактически загружает [.filename]#boot1# и передаёт ему управление."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:518
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:517
 msgid ""
 "The main task of [.filename]#boot1# is to load the next boot stage.  This "
 "next stage is somewhat more complex.  It is composed of a server called the "
@@ -1342,7 +1342,7 @@ msgstr ""
 "сервера BTX."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:520
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:519
 msgid ""
 "Let us now look in detail at what exactly is done by [.filename]#boot1#, "
 "starting like we did for [.filename]#boot0#, at its entry point:"
@@ -1351,7 +1351,7 @@ msgstr ""
 "начиная, как мы это делали для [.filename]#boot0#, с точки входа:"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:525
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:524
 #, no-wrap
 msgid ""
 "start:\n"
@@ -1361,13 +1361,13 @@ msgstr ""
 "\tjmp main\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:527
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:526
 #, no-wrap
 msgid "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot1-entry]]"
 msgstr "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot1-entry]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:529
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:528
 msgid ""
 "The entry point at `start` simply jumps past a special data area to the "
 "label `main`, which in turn looks like this:"
@@ -1376,7 +1376,7 @@ msgstr ""
 "метке `main`, которая, в свою очередь, выглядит следующим образом:"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:544
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:543
 #, no-wrap
 msgid ""
 "main:\n"
@@ -1406,13 +1406,13 @@ msgstr ""
 "      movsw\t\t\t#  code\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:546
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:545
 #, no-wrap
 msgid "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot1-main]]"
 msgstr "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot1-main]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:551
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:550
 msgid ""
 "Just like [.filename]#boot0#, this code relocates [.filename]#boot1#, this "
 "time to memory address `0x700`.  However, unlike [.filename]#boot0#, it does "
@@ -1427,7 +1427,7 @@ msgstr ""
 "перемещения будет рассмотрена далее."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:556
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:555
 msgid ""
 "Next comes a loop that looks for the FreeBSD slice.  Although [."
 "filename]#boot0# loaded [.filename]#boot1# from the FreeBSD slice, no "
@@ -1448,7 +1448,7 @@ msgstr ""
 "Для этого он перечитывает MBR:"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:564
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:563
 #, no-wrap
 msgid ""
 "      mov $part4,%si\t\t# Partition\n"
@@ -1464,13 +1464,13 @@ msgstr ""
 "      callw nread\t\t# Read MBR\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:566
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:565
 #, no-wrap
 msgid "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot1-find-freebsd]]"
 msgstr "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot1-find-freebsd]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:574
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:573
 msgid ""
 "In the code above, register `%dl` maintains information about the boot "
 "device.  This is passed on by the BIOS and preserved by the MBR.  Numbers "
@@ -1489,7 +1489,7 @@ msgstr ""
 "Ниже приведены данные фальшивого раздела:"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:582
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:581
 #, no-wrap
 msgid ""
 "      part4:\n"
@@ -1505,13 +1505,13 @@ msgstr ""
 "\t.byte 0x50, 0xc3, 0x00, 0x00\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:584
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:583
 #, no-wrap
 msgid "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot2-make-fake-partition]]"
 msgstr "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot2-make-fake-partition]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:589
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:588
 msgid ""
 "In particular, the LBA for this fake partition is hardcoded to zero.  This "
 "is used as an argument to the BIOS for reading absolute sector one from the "
@@ -1526,12 +1526,12 @@ msgstr ""
 "абсолютному сектору один."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:591
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:590
 msgid "Let us now proceed to take a look at `nread`:"
 msgstr "Продолжим, рассмотрев `nread`:"
 
 #. type: delimited block . 4
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:601
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:600
 #, no-wrap
 msgid ""
 "nread:\n"
@@ -1551,13 +1551,13 @@ msgstr ""
 "      jnc return\t\t# If success, return\n"
 
 #. type: Block title
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:603
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:602
 #, no-wrap
 msgid "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot1-nread]]"
 msgstr "[.filename]#stand/i386/boot2/boot1.S# [[boot-boot1-nread]]"
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:612
+#: documentation/content/en/books/arch-handbook/boot/_index.adoc:611
 msgid ""
 "Recall that `%si` points to the fake partition.  The word footnote:[In the "
 "context of 16-bit real mode, a word is 2 bytes.] at offset `0x8` is copied "
@@ -1580,7 +1580,7 @@ msgstr ""
 "использует `xread.1`. Этот механизм будет рассмотрен в следующем разделе."
 
 #. type: Plain text
-#: documentation/content/en/books/arch-handbook/boot/_index.adoc:614
*** 12904 LINES SKIPPED ***