git: a0e1df672e - main - update translation of books/arch-handbook to Russian Reviewed by: andy Differential Revision: https://reviews.freebsd.org/D53493
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 09 Nov 2025 11:16:51 UTC
The branch main has been updated by vladlen:
URL: https://cgit.FreeBSD.org/doc/commit/?id=a0e1df672e153605c7bcf765b8740bf630342e45
commit a0e1df672e153605c7bcf765b8740bf630342e45
Author: Vladlen Popolitov <vladlen@FreeBSD.org>
AuthorDate: 2025-11-09 11:16:41 +0000
Commit: Vladlen Popolitov <vladlen@FreeBSD.org>
CommitDate: 2025-11-09 11:16:41 +0000
update translation of books/arch-handbook to Russian
Reviewed by: andy
Differential Revision: https://reviews.freebsd.org/D53493
---
.../content/ru/books/arch-handbook/_index.adoc | 4 +-
.../content/ru/books/arch-handbook/_index.po | 22 +-
.../books/arch-handbook/bibliography/_index.adoc | 2 +-
.../ru/books/arch-handbook/bibliography/_index.po | 6 +-
.../content/ru/books/arch-handbook/book.adoc | 2 +-
.../content/ru/books/arch-handbook/book.po | 26 +-
.../ru/books/arch-handbook/boot/_index.adoc | 2 +-
.../content/ru/books/arch-handbook/boot/_index.po | 390 +++++++++++----------
.../books/arch-handbook/driverbasics/_index.adoc | 2 +-
.../ru/books/arch-handbook/driverbasics/_index.po | 34 +-
.../content/ru/books/arch-handbook/isa/_index.adoc | 2 +-
.../content/ru/books/arch-handbook/isa/_index.po | 156 +++++----
.../ru/books/arch-handbook/jail/_index.adoc | 4 +-
.../content/ru/books/arch-handbook/jail/_index.po | 95 ++---
.../ru/books/arch-handbook/kobj/_index.adoc | 2 +-
.../content/ru/books/arch-handbook/kobj/_index.po | 36 +-
.../ru/books/arch-handbook/locking/_index.adoc | 2 +-
.../ru/books/arch-handbook/locking/_index.po | 31 +-
.../content/ru/books/arch-handbook/mac/_index.adoc | 38 +-
.../content/ru/books/arch-handbook/mac/_index.po | 245 +++++++------
.../ru/books/arch-handbook/newbus/_index.adoc | 6 +-
.../ru/books/arch-handbook/newbus/_index.po | 64 ++--
.../content/ru/books/arch-handbook/parti.adoc | 2 +-
.../content/ru/books/arch-handbook/parti.po | 4 +-
.../content/ru/books/arch-handbook/partii.adoc | 2 +-
.../content/ru/books/arch-handbook/partii.po | 4 +-
.../content/ru/books/arch-handbook/partiii.adoc | 2 +-
.../content/ru/books/arch-handbook/partiii.po | 4 +-
.../ru/books/arch-handbook/pccard/_index.adoc | 2 +-
.../ru/books/arch-handbook/pccard/_index.po | 45 +--
.../content/ru/books/arch-handbook/pci/_index.adoc | 2 +-
.../content/ru/books/arch-handbook/pci/_index.po | 74 ++--
.../ru/books/arch-handbook/scsi/_index.adoc | 20 +-
.../content/ru/books/arch-handbook/scsi/_index.po | 149 ++++----
.../content/ru/books/arch-handbook/smp/_index.adoc | 10 +-
.../content/ru/books/arch-handbook/smp/_index.po | 107 +++---
.../ru/books/arch-handbook/sound/_index.adoc | 2 +-
.../content/ru/books/arch-handbook/sound/_index.po | 48 +--
.../ru/books/arch-handbook/sysinit/_index.adoc | 2 +-
.../ru/books/arch-handbook/sysinit/_index.po | 12 +-
.../content/ru/books/arch-handbook/usb/_index.adoc | 2 +-
.../content/ru/books/arch-handbook/usb/_index.po | 77 ++--
.../content/ru/books/arch-handbook/vm/_index.adoc | 2 +-
.../content/ru/books/arch-handbook/vm/_index.po | 37 +-
44 files changed, 962 insertions(+), 818 deletions(-)
diff --git a/documentation/content/ru/books/arch-handbook/_index.adoc b/documentation/content/ru/books/arch-handbook/_index.adoc
index 7417861a9b..b615f17b1a 100644
--- a/documentation/content/ru/books/arch-handbook/_index.adoc
+++ b/documentation/content/ru/books/arch-handbook/_index.adoc
@@ -1,5 +1,5 @@
---
-add_single_page_link: true
+add_single_page_link: 'true'
authors:
-
author: 'The FreeBSD Documentation Project'
@@ -9,7 +9,7 @@ description: 'Для разработчиков систем FreeBSD. В это
next: books/arch-handbook/parti
params:
path: /books/arch-handbook/
-showBookMenu: true
+showBookMenu: 'true'
tags: ["Arch Handbook", "FreeBSD"]
title: 'Руководство по архитектуре FreeBSD'
trademarks: ["freebsd", "apple", "microsoft", "unix", "general"]
diff --git a/documentation/content/ru/books/arch-handbook/_index.po b/documentation/content/ru/books/arch-handbook/_index.po
index 980f503404..c3bf8aae62 100644
--- a/documentation/content/ru/books/arch-handbook/_index.po
+++ b/documentation/content/ru/books/arch-handbook/_index.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-14 22:43+0300\n"
+"POT-Creation-Date: 2025-05-01 19:56-0300\n"
"PO-Revision-Date: 2025-08-16 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
@@ -18,11 +18,13 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/books/arch-handbook/_index.adoc:1
#, no-wrap
msgid "For FreeBSD system developers. This book covers the architectural details of many important FreeBSD kernel subsystems"
-msgstr "Для разработчиков систем FreeBSD. В этой книге рассматриваются архитектурные особенности многих важных подсистем ядра FreeBSD"
+msgstr ""
+"Для разработчиков систем FreeBSD. В этой книге рассматриваются архитектурные "
+"особенности многих важных подсистем ядра FreeBSD"
#. type: Title =
#: documentation/content/en/books/arch-handbook/_index.adoc:1
@@ -31,12 +33,12 @@ msgstr "Для разработчиков систем FreeBSD. В этой кн
msgid "FreeBSD Architecture Handbook"
msgstr "Руководство по архитектуре FreeBSD"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/books/arch-handbook/_index.adoc:51
msgid "Abstract"
msgstr "Аннотация"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/books/arch-handbook/_index.adoc:53
msgid ""
"Welcome to the FreeBSD Architecture Handbook. This manual is a _work in "
@@ -50,7 +52,7 @@ msgstr ""
"Если вы хотите помочь в работе над этим проектом, напишите на электронную "
"почту списка рассылки {freebsd-doc}."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/books/arch-handbook/_index.adoc:55
msgid ""
"The latest version of this document is always available from the "
@@ -61,11 +63,11 @@ msgid ""
msgstr ""
"Актуальная версия этого документа всегда доступна на https://www.FreeBSD.org/"
"[официальном веб-сервере FreeBSD]. Его также можно загрузить в различных "
-"форматах и с разными вариантами сжатия с https://download.freebsd.org/doc/"
-"[сервера загрузок FreeBSD] или одного из многочисленных зеркал extref:"
-"{handbook}mirrors/[mirror sites, mirrors]."
+"форматах и с разными вариантами сжатия с https://download.freebsd.org/doc/["
+"сервера загрузок FreeBSD] или одного из многочисленных зеркал "
+"extref:{handbook}mirrors/[mirror sites, mirrors]."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/books/arch-handbook/_index.adoc:56
msgid "'''"
msgstr "'''"
diff --git a/documentation/content/ru/books/arch-handbook/bibliography/_index.adoc b/documentation/content/ru/books/arch-handbook/bibliography/_index.adoc
index 96ff388686..805bac4a4d 100644
--- a/documentation/content/ru/books/arch-handbook/bibliography/_index.adoc
+++ b/documentation/content/ru/books/arch-handbook/bibliography/_index.adoc
@@ -3,7 +3,7 @@ description: 'Библиография Руководства по архите
params:
path: /books/arch-handbook/bibliography/
prev: books/arch-handbook/partiii
-showBookMenu: true
+showBookMenu: 'true'
tags: ["bibliography", "Arch Handbook", "FreeBSD"]
title: Библиография
weight: 20
diff --git a/documentation/content/ru/books/arch-handbook/bibliography/_index.po b/documentation/content/ru/books/arch-handbook/bibliography/_index.po
index c5253e7d57..3caebc93a7 100644
--- a/documentation/content/ru/books/arch-handbook/bibliography/_index.po
+++ b/documentation/content/ru/books/arch-handbook/bibliography/_index.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-14 22:43+0300\n"
+"POT-Creation-Date: 2025-05-01 19:56-0300\n"
"PO-Revision-Date: 2025-07-12 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
@@ -18,7 +18,7 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/books/arch-handbook/bibliography/_index.adoc:1
#, no-wrap
msgid "Bibliography of the FreeBSD Architecture Handbook"
@@ -31,7 +31,7 @@ msgstr "Библиография Руководства по архитекту
msgid "Bibliography"
msgstr "Библиография"
-#. type: appendix
+#. type: Plain text
#: documentation/content/en/books/arch-handbook/bibliography/_index.adoc:51
msgid ""
"[1] _Marshall Kirk McKusick, Keith Bostic, Michael J Karels, and John S "
diff --git a/documentation/content/ru/books/arch-handbook/book.adoc b/documentation/content/ru/books/arch-handbook/book.adoc
index 22f9cfba0b..4aea684095 100644
--- a/documentation/content/ru/books/arch-handbook/book.adoc
+++ b/documentation/content/ru/books/arch-handbook/book.adoc
@@ -1,5 +1,5 @@
---
-add_split_page_link: true
+add_split_page_link: 'true'
authors:
-
author: 'The FreeBSD Documentation Project'
diff --git a/documentation/content/ru/books/arch-handbook/book.po b/documentation/content/ru/books/arch-handbook/book.po
index a099efa2f7..067584be72 100644
--- a/documentation/content/ru/books/arch-handbook/book.po
+++ b/documentation/content/ru/books/arch-handbook/book.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-14 22:43+0300\n"
+"POT-Creation-Date: 2022-07-07 23:22-0300\n"
"PO-Revision-Date: 2025-08-16 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
@@ -18,11 +18,13 @@ msgstr ""
"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
"X-Generator: Weblate 4.17\n"
-#. type: Yaml Front Matter Hash Value: description
+#. type: YAML Front Matter: description
#: documentation/content/en/books/arch-handbook/book.adoc:1
#, no-wrap
msgid "For FreeBSD system developers. This book covers the architectural details of many important FreeBSD kernel subsystems"
-msgstr "Для разработчиков систем FreeBSD. В этой книге рассматриваются архитектурные особенности многих важных подсистем ядра FreeBSD"
+msgstr ""
+"Для разработчиков систем FreeBSD. В этой книге рассматриваются архитектурные "
+"особенности многих важных подсистем ядра FreeBSD"
#. type: Title =
#: documentation/content/en/books/arch-handbook/book.adoc:1
@@ -31,12 +33,12 @@ msgstr "Для разработчиков систем FreeBSD. В этой кн
msgid "FreeBSD Architecture Handbook"
msgstr "Руководство по архитектуре FreeBSD"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/books/arch-handbook/book.adoc:49
msgid "Abstract"
msgstr "Аннотация"
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/books/arch-handbook/book.adoc:51
msgid ""
"Welcome to the FreeBSD Architecture Handbook. This manual is a _work in "
@@ -50,22 +52,22 @@ msgstr ""
"Если вы хотите помочь в работе над этим проектом, напишите на электронную "
"почту списка рассылки {freebsd-doc}."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/books/arch-handbook/book.adoc:53
msgid ""
-"The latest version of this document is always available from the "
-"link:https://www.FreeBSD.org/[FreeBSD World Wide Web server]. It may also be "
+"The latest version of this document is always available from the link:"
+"https://www.FreeBSD.org/[FreeBSD World Wide Web server]. It may also be "
"downloaded in a variety of formats and compression options from the https://"
"download.freebsd.org/doc/[FreeBSD download server] or one of the numerous "
"extref:{handbook}[mirror sites, mirrors]."
msgstr ""
"Актуальная версия этого документа всегда доступна на https://www.FreeBSD.org/"
"[официальном веб-сервере FreeBSD]. Его также можно загрузить в различных "
-"форматах и с разными вариантами сжатия с https://download.freebsd.org/doc/"
-"[сервера загрузок FreeBSD] или одного из многочисленных зеркал extref:"
-"{handbook}mirrors/[mirror sites, mirrors]."
+"форматах и с разными вариантами сжатия с https://download.freebsd.org/doc/["
+"сервера загрузок FreeBSD] или одного из многочисленных зеркал "
+"extref:{handbook}mirrors/[mirror sites, mirrors]."
-#. type: .abstract-title
+#. type: Plain text
#: documentation/content/en/books/arch-handbook/book.adoc:55
msgid "'''"
msgstr "'''"
diff --git a/documentation/content/ru/books/arch-handbook/boot/_index.adoc b/documentation/content/ru/books/arch-handbook/boot/_index.adoc
index 5b356b42ac..f5a67dedba 100644
--- a/documentation/content/ru/books/arch-handbook/boot/_index.adoc
+++ b/documentation/content/ru/books/arch-handbook/boot/_index.adoc
@@ -4,7 +4,7 @@ next: books/arch-handbook/locking
params:
path: /books/arch-handbook/boot/
prev: books/arch-handbook/parti
-showBookMenu: true
+showBookMenu: 'true'
tags: ["boot", "BIOS", "kernel", "MBR", "FreeBSD"]
title: 'Глава 1. Начальная загрузка и инициализация ядра'
weight: 2
diff --git a/documentation/content/ru/books/arch-handbook/boot/_index.po b/documentation/content/ru/books/arch-handbook/boot/_index.po
index 171dbcf2b3..f013cc2bb5 100644
--- a/documentation/content/ru/books/arch-handbook/boot/_index.po
+++ b/documentation/content/ru/books/arch-handbook/boot/_index.po
@@ -5,7 +5,7 @@
msgid ""
msgstr ""
"Project-Id-Version: FreeBSD Documentation VERSION\n"
-"POT-Creation-Date: 2025-10-14 22:43+0300\n"
+"POT-Creation-Date: 2025-05-01 19:56-0300\n"
"PO-Revision-Date: 2025-07-02 04:45+0000\n"
"Last-Translator: Vladlen Popolitov <vladlenpopolitov@list.ru>\n"
"Language-Team: Russian <https://translate-dev.freebsd.org/projects/"
@@ -25,7 +25,7 @@ msgstr ""
msgid "Bootstrapping and Kernel Initialization"
msgstr "Начальная загрузка и инициализация ядра"
-#. type: Yaml Front Matter Hash Value: title
+#. type: YAML Front Matter: title
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:1
#, no-wrap
msgid "Chapter 1. Bootstrapping and Kernel Initialization"
@@ -101,9 +101,9 @@ msgstr ""
"существовать различные типы загрузки в рамках одной архитектуры. Например, "
"список файлов в каталоге [.filename]#stand# показывает большое количество "
"кода, зависящего от архитектуры. Для каждой из поддерживаемых архитектур "
-"существует отдельный каталог. FreeBSD поддерживает стандарт загрузки CSM "
-"(Compatibility Support Module). Таким образом, CSM поддерживается (как с "
-"GPT, так и с MBR разметкой), а также загрузка через UEFI (GPT полностью "
+"существует отдельный каталог. FreeBSD поддерживает стандарт загрузки CSM ("
+"Compatibility Support Module). Таким образом, CSM поддерживается (как с GPT, "
+"так и с MBR разметкой), а также загрузка через UEFI (GPT полностью "
"поддерживается, MBR — в основном). Также поддерживается загрузка файлов с "
"ext2fs, MSDOS, UFS и ZFS. FreeBSD поддерживает функцию загрузочного "
"окружения ZFS, которая позволяет основной ОС передавать детали о том, что "
@@ -124,8 +124,8 @@ msgid ""
"stage is examined in the following sections."
msgstr ""
"Ключ к пониманию этого процесса заключается в том, что он состоит из "
-"последовательных стадий возрастающей сложности. Эти стадии — "
-"[.filename]#boot1#, [.filename]#boot2# и [.filename]#loader# (подробнее см. "
+"последовательных стадий возрастающей сложности. Эти стадии — [."
+"filename]#boot1#, [.filename]#boot2# и [.filename]#loader# (подробнее см. "
"man:boot[8]). Система загрузки выполняет каждую стадию последовательно. "
"Последняя стадия, [.filename]#loader#, отвечает за загрузку ядра FreeBSD. "
"Каждая стадия рассматривается в следующих разделах."
@@ -179,7 +179,9 @@ msgstr ""
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:104
#, 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.]"
+msgstr ""
+"`boot2` footnote:[Это приглашение появится, если пользователь нажмет клавишу "
+"сразу после выбора ОС для загрузки на этапе boot0.]"
#. type: Table
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:113
@@ -234,7 +236,8 @@ msgstr ""
"Console internal video/keyboard\n"
"(root@releng1.nyi.freebsd.org, Fri Apr 9 04:04:45 UTC 2021)\n"
"Loading /boot/defaults/loader.conf\n"
-"/boot/kernel/kernel text=0xed9008 data=0x117d28+0x176650 syms=[0x8+0x137988+0x8+0x1515f8]\n"
+"/boot/kernel/kernel text=0xed9008 data=0x117d28+0x176650 "
+"syms=[0x8+0x137988+0x8+0x1515f8]\n"
"...."
#. type: Table
@@ -264,9 +267,12 @@ msgstr ""
"Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994\n"
" The Regents of the University of California. All rights reserved.\n"
"FreeBSD is a registered trademark of The FreeBSD Foundation.\n"
-"FreeBSD 13.0-RELEASE 0 releng/13.0-n244733-ea31abc261f: Fri Apr 9 04:04:45 UTC 2021\n"
-" root@releng1.nyi.freebsd.org:/usr/obj/usr/src/i386.i386/sys/GENERIC i386\n"
-"FreeBSD clang version 11.0.1 (git@github.com:llvm/llvm-project.git llvmorg-11.0.1-0-g43ff75f2c3fe)\n"
+"FreeBSD 13.0-RELEASE 0 releng/13.0-n244733-ea31abc261f: Fri Apr 9 04:04:45 "
+"UTC 2021\n"
+" root@releng1.nyi.freebsd.org:/usr/obj/usr/src/i386.i386/sys/GENERIC "
+"i386\n"
+"FreeBSD clang version 11.0.1 (git@github.com:llvm/llvm-project.git llvmorg-11"
+".0.1-0-g43ff75f2c3fe)\n"
"...."
#. type: Title ==
@@ -299,8 +305,8 @@ msgstr ""
"битное значение `0xfffffff0`. Регистр указателя команд (также известный как "
"Счётчик Команд) указывает на код, который должен быть выполнен процессором. "
"Ещё один важный регистр — это 32-битный управляющий регистр `cr0`, и его "
-"значение сразу после перезагрузки равно `0`. Один из битов ``cr0``, бит PE "
-"(Protection Enabled, Защита Включена), указывает, работает ли процессор в 32-"
+"значение сразу после перезагрузки равно `0`. Один из битов ``cr0``, бит PE ("
+"Protection Enabled, Защита Включена), указывает, работает ли процессор в 32-"
"битном защищённом режиме или 16-битном реальном режиме. Поскольку этот бит "
"сброшен при загрузке, процессор запускается в 16-битном реальном режиме. "
"Реальный режим означает, среди прочего, что линейные и физические адреса "
@@ -333,9 +339,9 @@ msgid ""
"jump instruction to the BIOS's POST routines."
msgstr ""
"BIOS (Basic Input Output System) — это микросхема на материнской плате, "
-"которая содержит относительно небольшой объем памяти только для чтения "
-"(ROM). Эта память включает различные низкоуровневые процедуры, специфичные "
-"для оборудования, поставляемого с материнской платой. Процессор сначала "
+"которая содержит относительно небольшой объем памяти только для чтения (ROM)"
+". Эта память включает различные низкоуровневые процедуры, специфичные для "
+"оборудования, поставляемого с материнской платой. Процессор сначала "
"переходит по адресу 0xfffffff0, который фактически находится в памяти BIOS. "
"Обычно по этому адресу содержится инструкция перехода к процедурам POST BIOS."
@@ -370,15 +376,15 @@ msgid ""
"MBR, or Master Boot Record. The remaining sectors on the first track are "
"never used."
msgstr ""
-"Самым последним действием в POST является инструкция `INT 0x19`. Обработчик "
-"`INT 0x19` считывает 512 байт из первого сектора загрузочного устройства в "
+"Самым последним действием в POST является инструкция `INT 0x19`. Обработчик `"
+"INT 0x19` считывает 512 байт из первого сектора загрузочного устройства в "
"память по адресу `0x7c00`. Термин _первый сектор_ происходит из архитектуры "
"жёстких дисков, где магнитная пластина разделена на множество цилиндрических "
"дорожек. Дорожки нумеруются, и каждая дорожка разделена на несколько (обычно "
"64) секторов. Нумерация дорожек начинается с 0, но нумерация секторов "
"начинается с 1. Дорожка 0 находится на внешней стороне магнитной пластины, а "
-"сектор 1, первый сектор, имеет особое назначение. Он также называется MBR "
-"(Master Boot Record) или Главная Загрузочная Запись. Остальные секторы на "
+"сектор 1, первый сектор, имеет особое назначение. Он также называется MBR ("
+"Master Boot Record) или Главная Загрузочная Запись. Остальные секторы на "
"первой дорожке не используются."
#. type: Plain text
@@ -434,8 +440,8 @@ msgid ""
"which is an awesome piece of code written by Robert Nordier."
msgstr ""
"Как упоминалось ранее, мы вызываем прерывание BIOS `INT 0x19` для загрузки "
-"MBR ([.filename]#boot0#) в память по адресу `0x7c00`. Исходный файл для "
-"[.filename]#boot0# можно найти в [.filename]#stand/i386/boot0/boot0.S# — это "
+"MBR ([.filename]#boot0#) в память по адресу `0x7c00`. Исходный файл для [."
+"filename]#boot0# можно найти в [.filename]#stand/i386/boot0/boot0.S# — это "
"впечатляющий фрагмент кода, написанный Робертом Нордье."
#. type: Plain text
@@ -532,8 +538,8 @@ msgstr ""
"дополнительной информации (например, без формата файла ELF). Такой "
"низкоуровневый контроль достигается на этапе компоновки с помощью "
"специальных флагов, передаваемых компоновщику. Например, текстовая секция "
-"программы располагается по адресу `0x600`. На практике это означает, что "
-"[.filename]#boot0# должен быть загружен в память по адресу `0x600` для "
+"программы располагается по адресу `0x600`. На практике это означает, что [."
+"filename]#boot0# должен быть загружен в память по адресу `0x600` для "
"корректной работы."
#. type: Plain text
@@ -550,15 +556,15 @@ msgid ""
"command the linker to start the text section at address `0x600`, and to "
"build the output file \"as is\" (strip out any file formatting):"
msgstr ""
-"Стоит взглянуть на [.filename]#Makefile# для [.filename]#boot0# "
-"([.filename]#stand/i386/boot0/Makefile#), так как он определяет некоторые "
-"аспекты поведения [.filename]#boot0# во время выполнения. Например, если для "
-"ввода-вывода используется терминал, подключённый к последовательному порту "
-"(COM1), необходимо определить макрос `SIO` (`-DSIO`). `-DPXE` включает "
-"загрузку через PXE при нажатии kbd:[F6]. Кроме того, программа определяет "
-"набор _флагов_, которые позволяют дополнительно настроить её поведение. Всё "
-"это проиллюстрировано в [.filename]#Makefile#. Например, обратите внимание "
-"на директивы компоновщика, которые предписывают ему начинать секцию текста с "
+"Стоит взглянуть на [.filename]#Makefile# для [.filename]#boot0# ([.filename]#"
+"stand/i386/boot0/Makefile#), так как он определяет некоторые аспекты "
+"поведения [.filename]#boot0# во время выполнения. Например, если для ввода-"
+"вывода используется терминал, подключённый к последовательному порту (COM1), "
+"необходимо определить макрос `SIO` (`-DSIO`). `-DPXE` включает загрузку "
+"через PXE при нажатии kbd:[F6]. Кроме того, программа определяет набор "
+"_флагов_, которые позволяют дополнительно настроить её поведение. Всё это "
+"проиллюстрировано в [.filename]#Makefile#. Например, обратите внимание на "
+"директивы компоновщика, которые предписывают ему начинать секцию текста с "
"адреса `0x600` и создавать выходной файл \"как есть\" (удаляя любое "
"форматирование файла):"
@@ -720,11 +726,11 @@ msgstr ""
"который указывает `%di`. Это повторяется ещё 255 раз. При каждом повторении "
"оба регистра, исходный и конечный, `%si` и `%di`, увеличиваются на единицу. "
"Таким образом, по завершении копирования 256 слов (512 байт), `%di` имеет "
-"значение `0x600`+`512`= `0x800`, а `%si` — значение `0x7c00`+`512`= "
-"`0x7e00`; таким образом, мы завершили _перемещение_ кода. С момента "
-"последнего обновления этого документа инструкции копирования в коде "
-"изменились, поэтому вместо movsb и stosb были введены movsw и stosw, которые "
-"копируют 2 байта (1 слово) за одну итерацию."
+"значение `0x600`+`512`= `0x800`, а `%si` — значение `0x7c00`+`512`= `0x7e00`;"
+" таким образом, мы завершили _перемещение_ кода. С момента последнего "
+"обновления этого документа инструкции копирования в коде изменились, поэтому "
+"вместо movsb и stosb были введены movsw и stosw, которые копируют 2 байта (1 "
+"слово) за одну итерацию."
#. type: Plain text
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:304
@@ -822,8 +828,8 @@ msgid ""
"The next block saves the drive number provided by the BIOS, and calls `putn` "
"to print a new line on the screen."
msgstr ""
-"Следующий блок сохраняет номер диска, предоставленный BIOS, и вызывает "
-"`putn` для вывода новой строки на экран."
+"Следующий блок сохраняет номер диска, предоставленный BIOS, и вызывает `putn`"
+" для вывода новой строки на экран."
#. type: delimited block . 4
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:341
@@ -862,8 +868,8 @@ msgid ""
"not assembled and will not appear in our executable [.filename]#boot0#."
msgstr ""
"Обратите внимание, что мы предполагаем, что `TEST` не определён, поэтому "
-"условный код в нём не собирается и не появится в нашем исполняемом файле "
-"[.filename]#boot0#."
+"условный код в нём не собирается и не появится в нашем исполняемом файле [."
+"filename]#boot0#."
#. type: Plain text
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:351
@@ -879,8 +885,8 @@ msgstr ""
"выводит на экран тип раздела для каждой из четырёх записей в таблице "
"разделов. Каждый тип сравнивается со списком известных файловых систем "
"операционных систем. Примерами распознаваемых типов разделов являются NTFS "
-"(Windows(R), ID 0x7), `ext2fs` (Linux(R), ID 0x83) и, конечно же, `ffs`/"
-"`ufs2` (FreeBSD, ID 0xa5). Реализация довольно проста."
+"(Windows(R), ID 0x7), `ext2fs` (Linux(R), ID 0x83) и, конечно же, "
+"`ffs`/`ufs2` (FreeBSD, ID 0xa5). Реализация довольно проста."
#. type: delimited block . 4
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:356
@@ -958,8 +964,8 @@ msgid ""
"chooses to write the changes back to disk."
msgstr ""
"Важно отметить, что флаг активности для каждой записи сбрасывается, поэтому "
-"после сканирования _ни одна_ запись о разделе не активна в нашей копии "
-"[.filename]#boot0# в памяти. Позже флаг активности будет установлен для "
+"после сканирования _ни одна_ запись о разделе не активна в нашей копии [."
+"filename]#boot0# в памяти. Позже флаг активности будет установлен для "
"выбранного раздела. Это гарантирует, что только один активный раздел "
"существует, если пользователь решит записать изменения обратно на диск."
@@ -1129,13 +1135,13 @@ msgstr ""
"значение вычисляется BIOS через RTC (Real Time Clock). Эти часы могут быть "
"настроены на работу с частотой от 2 Гц до 8192 Гц. BIOS устанавливает их на "
"18,2 Гц при запуске. Когда запрос выполнен, 32-битный результат возвращается "
-"BIOS в регистрах `%cx` и `%dx` (младшие байты в `%dx`). Этот результат "
-"(часть `%dx`) копируется в регистр `%di`, и к `%di` добавляется значение "
+"BIOS в регистрах `%cx` и `%dx` (младшие байты в `%dx`). Этот результат ("
+"часть `%dx`) копируется в регистр `%di`, и к `%di` добавляется значение "
"переменной `TICKS`. Эта переменная находится в [.filename]#boot0# по "
"смещению `_TICKS` (отрицательное значение) от регистра `%bp` (который, "
"напомним, указывает на `0x800`). Значение этой переменной по умолчанию — "
-"`0xb6` (182 в десятичной системе). Идея заключается в том, что "
-"[.filename]#boot0# постоянно запрашивает время у BIOS, и когда значение, "
+"`0xb6` (182 в десятичной системе). Идея заключается в том, что [."
+"filename]#boot0# постоянно запрашивает время у BIOS, и когда значение, "
"возвращённое в регистре `%dx`, становится больше значения, хранящегося в "
"`%di`, время истекает и будет сделан выбор по умолчанию. Поскольку RTC "
"тикает 18,2 раза в секунду, это условие выполнится через 10 секунд (это "
@@ -1160,8 +1166,8 @@ msgstr ""
"соответствующую запись раздела в таблице разделов. Этот новый выбор "
"переопределяет предыдущий выбор по умолчанию. Действительно, он становится "
"новым значением по умолчанию. Наконец, устанавливается флаг ACTIVE "
-"выбранного раздела. Если это было разрешено при компиляции, версия "
-"[.filename]#boot0# в памяти с этими изменёнными значениями записывается "
+"выбранного раздела. Если это было разрешено при компиляции, версия [."
+"filename]#boot0# в памяти с этими изменёнными значениями записывается "
"обратно в MBR на диске. Мы оставляем детали этой реализации читателю."
#. type: Plain text
@@ -1170,8 +1176,8 @@ msgid ""
"We now end our study with the last code block from the [.filename]#boot0# "
"program:"
msgstr ""
-"Мы завершаем наше изучение последним блоком кода из программы "
-"[.filename]#boot0#:"
+"Мы завершаем наше изучение последним блоком кода из программы [."
+"filename]#boot0#:"
#. type: delimited block . 4
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:472
@@ -1240,8 +1246,8 @@ msgstr ""
"первого сектора слайса FreeBSD выполняется вызовом `intx13`. Мы "
"предполагаем, что всё прошло успешно, поэтому переход к `beep` не "
"выполняется. В частности, новый прочитанный сектор должен заканчиваться "
-"магической последовательностью `0xaa55`. Наконец, значение в `%si` "
-"(указатель на выбранную таблицу разделов) сохраняется для использования на "
+"магической последовательностью `0xaa55`. Наконец, значение в `%si` ("
+"указатель на выбранную таблицу разделов) сохраняется для использования на "
"следующем этапе, и выполняется переход по адресу `0x7c00`, где начинается "
"выполнение нашего следующего этапа (только что прочитанного блока)."
@@ -1263,8 +1269,8 @@ msgid ""
"MBR ([.filename]#boot0#) was loaded from absolute disk sector one to address "
"`0x7c00`. Execution control was passed to that location."
msgstr ""
-"BIOS выполнил первоначальную инициализацию оборудования, включая POST. MBR "
-"([.filename]#boot0#) был загружен по адресу `0x7c00` из абсолютного сектора "
+"BIOS выполнил первоначальную инициализацию оборудования, включая POST. MBR (["
+".filename]#boot0#) был загружен по адресу `0x7c00` из абсолютного сектора "
"один с диска. Управление выполнением было передано по этому адресу."
#. type: Plain text
@@ -1311,18 +1317,18 @@ msgstr ""
"работали исключительно с секторами диска. Действительно, BIOS загружает "
"самый первый сектор, а [.filename]#boot0# загружает первый сектор раздела "
"FreeBSD. Обе загрузки происходят по адресу `0x7c00`. Мы можем концептуально "
-"представлять эти секторы диска как содержащие файлы [.filename]#boot0# и "
-"[.filename]#boot1#, соответственно, но на самом деле это не совсем верно для "
-"[.filename]#boot1#. Строго говоря, в отличие от [.filename]#boot0#, "
-"[.filename]#boot1# не является частью загрузочных блоков footnote:[Файл /"
-"boot/boot1 существует, но он не записывается в начало раздела FreeBSD. "
-"Вместо этого он объединяется с boot2, формируя файл boot, который "
-"записывается в начало раздела FreeBSD и считывается во время загрузки.]. "
-"Вместо этого, единый полноценный файл [.filename]#boot# ([.filename]#/boot/"
-"boot#) в итоге записывается на диск. Этот файл представляет собой комбинацию "
-"[.filename]#boot1#, [.filename]#boot2# и `Boot Extender` (или BTX). Этот "
-"единый файл превышает размер одного сектора (больше 512 байт). К счастью, "
-"[.filename]#boot1# занимает _ровно_ первые 512 байт этого файла, поэтому, "
+"представлять эти секторы диска как содержащие файлы [.filename]#boot0# и [."
+"filename]#boot1#, соответственно, но на самом деле это не совсем верно для [."
+"filename]#boot1#. Строго говоря, в отличие от [.filename]#boot0#, [."
+"filename]#boot1# не является частью загрузочных блоков footnote:[Файл /boot/"
+"boot1 существует, но он не записывается в начало раздела FreeBSD. Вместо "
+"этого он объединяется с boot2, формируя файл boot, который записывается в "
+"начало раздела FreeBSD и считывается во время загрузки.]. Вместо этого, "
+"единый полноценный файл [.filename]#boot# ([.filename]#/boot/boot#) в итоге "
+"записывается на диск. Этот файл представляет собой комбинацию [."
+"filename]#boot1#, [.filename]#boot2# и `Boot Extender` (или BTX). Этот "
+"единый файл превышает размер одного сектора (больше 512 байт). К счастью, [."
+"filename]#boot1# занимает _ровно_ первые 512 байт этого файла, поэтому, "
"когда [.filename]#boot0# загружает первый сектор раздела FreeBSD (512 байт), "
"он фактически загружает [.filename]#boot1# и передает ему управление."
@@ -1508,7 +1514,8 @@ msgstr ""
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:584
#, 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]]"
+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
@@ -1570,8 +1577,8 @@ msgid ""
"also uses `xread.1`. This mechanism will be discussed in the next section."
msgstr ""
"Напомним, что `%si` указывает на поддельный раздел. Слово footnote:[В "
-"контексте 16-битного реального режима слово — это 2 байта.] по смещению "
-"`0x8` копируется в регистр `%ax`, а слово по смещению `0xa` — в `%cx`. BIOS "
+"контексте 16-битного реального режима слово — это 2 байта.] по смещению `0x8`"
+" копируется в регистр `%ax`, а слово по смещению `0xa` — в `%cx`. BIOS "
"интерпретирует их как младшее 4-байтовое значение, обозначающее LBA для "
"чтения (старшие четыре байта предполагаются нулевыми). Регистр `%bx` "
"содержит адрес памяти, куда будет загружен MBR. Инструкция, помещающая `%cs` "
@@ -1760,8 +1767,8 @@ msgstr ""
"FreeBSD в таблице разделов MBR, поэтому вызов `nread` фактически прочитает "
"секторы в начале этого раздела. Аргумент, переданный в регистре `%dh`, "
"указывает `nread` прочитать 16 секторов диска. Напомним, что первые 512 "
-"байт, или первый сектор слайса FreeBSD, совпадает с программой "
-"[.filename]#boot1#. Также напомним, что файл, записанный в начало слайса "
+"байт, или первый сектор слайса FreeBSD, совпадает с программой [."
+"filename]#boot1#. Также напомним, что файл, записанный в начало слайса "
"FreeBSD, это не [.filename]#/boot/boot1#, а [.filename]#/boot/boot#. Давайте "
"посмотрим на размер этих файлов в файловой системе:"
@@ -1796,13 +1803,13 @@ msgid ""
msgstr ""
"Оба файла [.filename]#boot0# и [.filename]#boot1# имеют размер 512 байт "
"каждый, поэтому они занимают _ровно_ один сектор диска. [.filename]#boot2# "
-"значительно больше, так как содержит как сервер BTX, так и клиент "
-"[.filename]#boot2#. Наконец, файл под названием просто [.filename]#boot# на "
+"значительно больше, так как содержит как сервер BTX, так и клиент [."
+"filename]#boot2#. Наконец, файл под названием просто [.filename]#boot# на "
"512 байт больше, чем [.filename]#boot2#. Этот файл представляет собой "
-"объединение [.filename]#boot1# и [.filename]#boot2#. Как уже отмечалось, "
-"[.filename]#boot0# записывается в самый первый сектор диска (MBR), а "
-"[.filename]#boot# записывается в первый сектор раздела FreeBSD; "
-"[.filename]#boot1# и [.filename]#boot2# _не_ записываются на диск. Команда, "
+"объединение [.filename]#boot1# и [.filename]#boot2#. Как уже отмечалось, [."
+"filename]#boot0# записывается в самый первый сектор диска (MBR), а [."
+"filename]#boot# записывается в первый сектор раздела FreeBSD; [."
+"filename]#boot1# и [.filename]#boot2# _не_ записываются на диск. Команда, "
"используемая для объединения [.filename]#boot1# и [.filename]#boot2# в "
"единый файл [.filename]#boot#, выглядит просто как `cat boot1 boot2 > boot`."
@@ -1819,12 +1826,12 @@ msgid ""
"in the next section."
msgstr ""
"Итак, [.filename]#boot1# занимает ровно первые 512 байт [.filename]#boot#, "
-"и, поскольку [.filename]#boot# записывается в первый сектор слайса FreeBSD, "
-"[.filename]#boot1# полностью помещается в этот первый сектор. Когда `nread` "
-"читает первые 16 секторов слайса FreeBSD, он фактически читает весь файл "
-"[.filename]#boot# footnote:[512*16=8192 байта, ровно размер boot]. Более "
-"подробно о том, как [.filename]#boot# формируется из [.filename]#boot1# и "
-"[.filename]#boot2#, мы увидим в следующем разделе."
+"и, поскольку [.filename]#boot# записывается в первый сектор слайса FreeBSD, ["
+".filename]#boot1# полностью помещается в этот первый сектор. Когда `nread` "
+"читает первые 16 секторов слайса FreeBSD, он фактически читает весь файл [."
+"filename]#boot# footnote:[512*16=8192 байта, ровно размер boot]. Более "
+"подробно о том, как [.filename]#boot# формируется из [.filename]#boot1# и [."
+"filename]#boot2#, мы увидим в следующем разделе."
#. type: Plain text
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:713
@@ -1840,10 +1847,10 @@ msgstr ""
"Напомним, что `nread` использует адрес памяти `0x8c00` в качестве буфера "
"передачи для хранения прочитанных секторов. Этот адрес выбран не случайно. "
"Действительно, поскольку [.filename]#boot1# принадлежит первым 512 байтам, "
-"он оказывается в диапазоне адресов `0x8c00`-`0x8dff`. Следующие 512 байт "
-"(диапазон `0x8e00`-`0x8fff`) используются для хранения _bsdlabel_ footnote:"
-"[Исторически известной как disklabel. Если вам когда-либо было интересно, "
-"где FreeBSD хранит эту информацию, она находится в этой области — см. "
+"он оказывается в диапазоне адресов `0x8c00`-`0x8dff`. Следующие 512 байт ("
+"диапазон `0x8e00`-`0x8fff`) используются для хранения _bsdlabel_ footnote:["
+"Исторически известной как disklabel. Если вам когда-либо было интересно, где "
+"FreeBSD хранит эту информацию, она находится в этой области — см. "
"man:bsdlabel[8]]."
#. type: Plain text
@@ -1990,11 +1997,11 @@ msgid ""
"`0x9010`, the entry point of the BTX server."
msgstr ""
"[.filename]#boot1# загружает первые 16 секторов среза FreeBSD по адресу "
-"`0x8c00`. Эти 16 секторов, или 8192 байта, представляют собой весь файл "
-"[.filename]#boot#. Файл является объединением [.filename]#boot1# и "
-"[.filename]#boot2#. [.filename]#boot2#, в свою очередь, содержит сервер BTX "
-"и клиент [.filename]#boot2#. Наконец, выполняется переход по адресу "
-"`0x9010`, точке входа сервера BTX."
+"`0x8c00`. Эти 16 секторов, или 8192 байта, представляют собой весь файл [."
+"filename]#boot#. Файл является объединением [.filename]#boot1# и [."
+"filename]#boot2#. [.filename]#boot2#, в свою очередь, содержит сервер BTX и "
+"клиент [.filename]#boot2#. Наконец, выполняется переход по адресу `0x9010`, "
+"точке входа сервера BTX."
#. type: Plain text
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:770
@@ -2006,10 +2013,9 @@ msgid ""
"creates the [.filename]#boot# file:"
msgstr ""
"Прежде чем изучать сервер BTX подробно, давайте рассмотрим, как создается "
-"единый, всеобъемлющий файл [.filename]#boot#. Способ сборки "
-"[.filename]#boot# определен в его [.filename]#Makefile# ([.filename]#stand/"
-"i386/boot2/Makefile#). Рассмотрим правило, которое создает файл "
-"[.filename]#boot#:"
+"единый, всеобъемлющий файл [.filename]#boot#. Способ сборки [.filename]#boot#"
+" определен в его [.filename]#Makefile# ([.filename]#stand/i386/boot2/"
+"Makefile#). Рассмотрим правило, которое создает файл [.filename]#boot#:"
#. type: delimited block . 4
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:775
@@ -2036,8 +2042,8 @@ msgid ""
"simple:"
msgstr ""
"Это говорит нам, что [.filename]#boot1# и [.filename]#boot2# необходимы, и "
-"правило просто объединяет их для создания одного файла с именем "
-"[.filename]#boot#. Правила для создания [.filename]#boot1# также довольно "
+"правило просто объединяет их для создания одного файла с именем [."
+"filename]#boot#. Правила для создания [.filename]#boot1# также довольно "
"просты:"
#. type: delimited block . 4
@@ -2058,7 +2064,8 @@ msgid ""
"\t${LD} ${LD_FLAGS} -e start --defsym ORG=${ORG1} -T ${LDSCRIPT} -o ${.TARGET} boot1.o\n"
msgstr ""
" boot1.out: boot1.o\n"
-"\t${LD} ${LD_FLAGS} -e start --defsym ORG=${ORG1} -T ${LDSCRIPT} -o ${.TARGET} boot1.o\n"
+"\t${LD} ${LD_FLAGS} -e start --defsym ORG=${ORG1} -T ${LDSCRIPT} -o ${."
+"TARGET} boot1.o\n"
#. type: Block title
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:790
@@ -2082,18 +2089,18 @@ msgid ""
"and symbolic information; `-O binary` indicates the output format, that is, "
"a simple, unformatted binary file."
msgstr ""
-"Для применения правила создания [.filename]#boot1# необходимо собрать "
-"[.filename]#boot1.out#. Это, в свою очередь, зависит от наличия "
-"[.filename]#boot1.o#. Последний файл является результатом ассемблирования "
+"Для применения правила создания [.filename]#boot1# необходимо собрать [."
+"filename]#boot1.out#. Это, в свою очередь, зависит от наличия [."
+"filename]#boot1.o#. Последний файл является результатом ассемблирования "
"нашего знакомого [.filename]#boot1.S# без компоновки. Теперь применяется "
-"правило создания [.filename]#boot1.out#. Оно указывает, что "
-"[.filename]#boot1.o# должен быть скомпонован с точкой входа `start` и "
-"начальным адресом `0x7c00`. Наконец, [.filename]#boot1# создается из "
-"[.filename]#boot1.out# применением соответствующего правила. Это команда "
-"[.filename]#objcopy#, применяемая к [.filename]#boot1.out#. Обратите "
-"внимание на флаги, передаваемые [.filename]#objcopy#: `-S` указывает на "
-"удаление всей информации о перемещении и символов; `-O binary` указывает "
-"формат вывода, то есть простой, неформатированный двоичный файл."
+"правило создания [.filename]#boot1.out#. Оно указывает, что [.filename]#boot1"
+".o# должен быть скомпонован с точкой входа `start` и начальным адресом "
+"`0x7c00`. Наконец, [.filename]#boot1# создается из [.filename]#boot1.out# "
+"применением соответствующего правила. Это команда [.filename]#objcopy#, "
+"применяемая к [.filename]#boot1.out#. Обратите внимание на флаги, "
+"передаваемые [.filename]#objcopy#: `-S` указывает на удаление всей "
+"информации о перемещении и символов; `-O binary` указывает формат вывода, то "
+"есть простой, неформатированный двоичный файл."
#. type: Plain text
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:801
@@ -2157,7 +2164,8 @@ msgid ""
"\t${LD} ${LD_FLAGS} --defsym ORG=${ORG2} -T ${LDSCRIPT} -o ${.TARGET} ${.ALLSRC}\n"
msgstr ""
" boot2.out: ${BTXCRT} boot2.o sio.o ashldi3.o\n"
-"\t${LD} ${LD_FLAGS} --defsym ORG=${ORG2} -T ${LDSCRIPT} -o ${.TARGET} ${.ALLSRC}\n"
+"\t${LD} ${LD_FLAGS} --defsym ORG=${ORG2} -T ${LDSCRIPT} -o ${.TARGET} ${."
+"ALLSRC}\n"
#. type: delimited block . 4
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:828
@@ -2173,7 +2181,8 @@ msgstr ""
" boot2.h: boot1.out\n"
"\t${NM} -t d ${.ALLSRC} | awk '/([0-9])+ T xread/ \\\n"
"\t { x = $$1 - ORG1; \\\n"
-"\t printf(\"#define XREADORG %#x\\n\", REL1 + x) }' \\\n"
+"\t printf(\"#define XREADORG %#x\\n"
+"\", REL1 + x) }' \\\n"
"\t ORG1=`printf \"%d\" ${ORG1}` \\\n"
"\t REL1=`printf \"%d\" ${REL1}` > ${.TARGET}\n"
@@ -2224,8 +2233,8 @@ msgid ""
msgstr ""
"Отметим, что изначально файл заголовка [.filename]#boot2.h# отсутствует, но "
"его создание зависит от [.filename]#boot1.out#, который у нас уже есть. "
-"Правило его создания немного лаконично, но важно то, что результат, "
-"[.filename]#boot2.h#, выглядит примерно так:"
+"Правило его создания немного лаконично, но важно то, что результат, [."
+"filename]#boot2.h#, выглядит примерно так:"
#. type: delimited block . 4
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:851
@@ -2253,13 +2262,12 @@ msgid ""
msgstr ""
"Напомним, что [.filename]#boot1# был перемещён (т.е. скопирован из `0x7c00` "
"в `0x700`). Это перемещение теперь обретает смысл, потому что, как мы "
-"увидим, сервер BTX освобождает часть памяти, включая область, куда "
-"[.filename]#boot1# был изначально загружен. Однако серверу BTX необходим "
-"доступ к функции `xread` из [.filename]#boot1#; согласно выводу "
-"[.filename]#boot2.h#, эта функция находится по адресу `0x725`. "
-"Действительно, сервер BTX использует функцию `xread` из перемещённого кода "
-"[.filename]#boot1#. Теперь эта функция доступна из клиента "
-"[.filename]#boot2#."
+"увидим, сервер BTX освобождает часть памяти, включая область, куда [."
+"filename]#boot1# был изначально загружен. Однако серверу BTX необходим "
+"доступ к функции `xread` из [.filename]#boot1#; согласно выводу [."
+"filename]#boot2.h#, эта функция находится по адресу `0x725`. Действительно, "
+"сервер BTX использует функцию `xread` из перемещённого кода [."
+"filename]#boot1#. Теперь эта функция доступна из клиента [.filename]#boot2#."
#. type: Plain text
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:868
@@ -2284,11 +2292,11 @@ msgstr ""
"выполнения по адресу `0x2000` (${ORG2}). Напомним, что [.filename]#boot2# "
"будет выполняться в пользовательском режиме внутри специального "
"пользовательского сегмента, созданного сервером BTX. Этот сегмент начинается "
-"с адреса `0xa000`. Также помните, что часть [.filename]#boot2# в "
-"[.filename]#boot# была скопирована по адресу `0xc000`, то есть со смещением "
+"с адреса `0xa000`. Также помните, что часть [.filename]#boot2# в [."
+"filename]#boot# была скопирована по адресу `0xc000`, то есть со смещением "
"`0x2000` от начала пользовательского сегмента, поэтому [.filename]#boot2# "
-"будет работать корректно при передаче управления на него. Далее, "
-"[.filename]#boot2.bin# создается из [.filename]#boot2.out# путем удаления "
+"будет работать корректно при передаче управления на него. Далее, [."
+"filename]#boot2.bin# создается из [.filename]#boot2.out# путем удаления "
"символов и информации о формате; boot2.bin представляет собой _сырой_ "
"бинарный файл. Теперь обратите внимание, что файл [.filename]#boot2.ldr# "
"создается как 512-байтный файл, заполненный нулями. Это пространство "
@@ -2306,14 +2314,13 @@ msgid ""
"address `0x9000`. The details can be found in [.filename]#stand/i386/btx/"
"btx/Makefile#."
msgstr ""
-"Теперь, когда у нас есть файлы [.filename]#boot1#, [.filename]#boot2.bin# и "
-"[.filename]#boot2.ldr#, осталось только добавить сервер BTX перед созданием "
-"универсального файла [.filename]#boot#. Сервер BTX находится в "
-"[.filename]#stand/i386/btx/btx#; у него есть собственный "
-"[.filename]#Makefile# со своим набором правил для сборки. Важно отметить, "
-"что он также компилируется как _сырой_ бинарный файл и линкуется для "
-"выполнения по адресу `0x9000`. Подробности можно найти в [.filename]#stand/"
-"i386/btx/btx/Makefile#."
+"Теперь, когда у нас есть файлы [.filename]#boot1#, [.filename]#boot2.bin# и ["
+".filename]#boot2.ldr#, осталось только добавить сервер BTX перед созданием "
+"универсального файла [.filename]#boot#. Сервер BTX находится в [.filename]#"
+"stand/i386/btx/btx#; у него есть собственный [.filename]#Makefile# со своим "
+"набором правил для сборки. Важно отметить, что он также компилируется как "
+"_сырой_ бинарный файл и линкуется для выполнения по адресу `0x9000`. "
+"Подробности можно найти в [.filename]#stand/i386/btx/btx/Makefile#."
#. type: Plain text
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:880
@@ -2335,11 +2342,11 @@ msgstr ""
"названием [.filename]#btxld# (исходный код расположен в [.filename]#/usr/src/"
"usr.sbin/btxld#). Некоторые аргументы этой программы включают имя выходного "
"файла ([.filename]#boot#), его точку входа (`0x2000`) и формат файла "
-"(бинарный). Различные файлы окончательно объединяются этой утилитой в файл "
-"[.filename]#boot#, который состоит из [.filename]#boot1#, "
-"[.filename]#boot2#, `bsdlabel` и сервера BTX. Этот файл, занимающий ровно 16 "
-"секторов или 8192 байта, записывается в начало раздела FreeBSD во время "
-"установки. Теперь перейдем к изучению программы сервера BTX."
+"(бинарный). Различные файлы окончательно объединяются этой утилитой в файл [."
+"filename]#boot#, который состоит из [.filename]#boot1#, [.filename]#boot2#, "
+"`bsdlabel` и сервера BTX. Этот файл, занимающий ровно 16 секторов или 8192 "
+"байта, записывается в начало раздела FreeBSD во время установки. Теперь "
+"перейдем к изучению программы сервера BTX."
#. type: Plain text
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:883
@@ -2412,12 +2419,11 @@ msgid ""
"has a special header at address range `0x9000-0x900f`, right before its "
"entry point. This header is defined as follows:"
msgstr ""
-"Приступим к изучению фактической реализации. Напомним, что "
-"[.filename]#boot1# выполнил переход на адрес `0x9010` — точку входа сервера "
-"BTX. Прежде чем изучать выполнение программы там, обратите внимание, что "
-"сервер BTX имеет специальный заголовок в диапазоне адресов `0x9000-0x900f`, "
-"непосредственно перед точкой входа. Этот заголовок определён следующим "
-"образом:"
+"Приступим к изучению фактической реализации. Напомним, что [.filename]#boot1#"
+" выполнил переход на адрес `0x9010` — точку входа сервера BTX. Прежде чем "
+"изучать выполнение программы там, обратите внимание, что сервер BTX имеет "
+"специальный заголовок в диапазоне адресов `0x9000-0x900f`, непосредственно "
+"перед точкой входа. Этот заголовок определён следующим образом:"
#. type: delimited block . 4
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:915
@@ -2469,10 +2475,10 @@ msgid ""
msgstr ""
"Обратите внимание, что первые два байта — это `0xeb` и `0xe`. В архитектуре "
"IA-32 эти два байта интерпретируются как относительный переход за заголовок "
-"к точке входа, поэтому теоретически [.filename]#boot1# мог бы перейти сюда "
-"(адрес `0x9000`) вместо адреса `0x9010`. Обратите внимание, что последнее "
-"поле в заголовке BTX — это указатель на точку входа клиента "
-"([.filename]#boot2#)b2. Это поле исправляется во время компоновки."
+"к точке входа, поэтому теоретически [.filename]#boot1# мог бы перейти сюда ("
+"адрес `0x9000`) вместо адреса `0x9010`. Обратите внимание, что последнее "
+"поле в заголовке BTX — это указатель на точку входа клиента ([."
+"filename]#boot2#)b2. Это поле исправляется во время компоновки."
#. type: Plain text
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:924
@@ -2759,8 +2765,8 @@ msgstr ""
"только дескрипторы для векторов прерываний `0x30`, `0x31` и `0x32` имеют "
"уровень привилегий 3, такой же, как у клиента [.filename]#boot2#, что "
"означает, что клиент может выполнить программно-генерируемое прерывание к "
-"этим векторам через инструкцию `int` без ошибки (это способ, которым "
-"[.filename]#boot2# использует сервисы, предоставляемые сервером BTX). Также "
+"этим векторам через инструкцию `int` без ошибки (это способ, которым [."
+"filename]#boot2# использует сервисы, предоставляемые сервером BTX). Также "
"обратите внимание, что _только_ программно-генерируемые прерывания защищены "
"от кода, выполняющегося на более низких уровнях привилегий. Аппаратно-"
"генерируемые прерывания и исключения, генерируемые процессором, _всегда_ "
@@ -2931,8 +2937,8 @@ msgid ""
msgstr ""
"Наш последний блок кода отвечает за загрузку TR (Регистра Задач) с "
"селектором сегмента для TSS, который мы создали ранее, и настройку окружения "
-"пользовательского режима перед передачей управления исполнения клиенту "
-"[.filename]#boot2#."
+"пользовательского режима перед передачей управления исполнения клиенту [."
+"filename]#boot2#."
#. type: delimited block . 4
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:1123
@@ -3181,14 +3187,13 @@ msgid ""
msgstr ""
"`boot2` входит в бесконечный цикл, ожидая ввода пользователя, затем вызывает "
"`load()`. Если пользователь ничего не нажимает, цикл прерывается по "
-"таймауту, и `load()` загружает файл по умолчанию ([.filename]#/boot/"
-"loader#). Функции `ino_t lookup(char *filename)` и `int xfsread(ino_t inode, "
-"void *buf, size_t nbyte)` используются для чтения содержимого файла в "
-"память. [.filename]#/boot/loader# — это ELF-бинарный файл, но с заголовком "
-"ELF, перед которым добавлена структура `struct exec` из [.filename]#a.out#. "
-"`load()` анализирует ELF-заголовок загрузчика, загружает содержимое "
-"[.filename]#/boot/loader# в память и передаёт управление на точку входа "
-"загрузчика:"
+"таймауту, и `load()` загружает файл по умолчанию ([.filename]#/boot/loader#)"
+". Функции `ino_t lookup(char *filename)` и `int xfsread(ino_t inode, void *"
+"buf, size_t nbyte)` используются для чтения содержимого файла в память. [."
+"filename]#/boot/loader# — это ELF-бинарный файл, но с заголовком ELF, перед "
+"которым добавлена структура `struct exec` из [.filename]#a.out#. `load()` "
+"анализирует ELF-заголовок загрузчика, загружает содержимое [.filename]#/boot/"
+"loader# в память и передаёт управление на точку входа загрузчика:"
#. type: delimited block . 4
#: documentation/content/en/books/arch-handbook/boot/_index.adoc:1201
@@ -3275,8 +3280,10 @@ msgid ""
"<lots of kernel .o files>\n"
msgstr ""
"/usr/obj/usr/src/i386.i386/sys/GENERIC/kernel.meta:\n"
-"ld -m elf_i386_fbsd -Bdynamic -T /usr/src/sys/conf/ldscript.i386 --build-id=sha1 --no-warn-mismatch \\\n"
-"--warn-common --export-dynamic --dynamic-linker /red/herring -X -o kernel locore.o\n"
+"ld -m elf_i386_fbsd -Bdynamic -T /usr/src/sys/conf/ldscript.i386 --build-"
+"id=sha1 --no-warn-mismatch \\\n"
+"--warn-common --export-dynamic --dynamic-linker /red/herring -X -o kernel "
+"locore.o\n"
"<lots of kernel .o files>\n"
#. type: Plain text
@@ -3312,8 +3319,8 @@ msgid ""
"says that a kernel's entry point is the symbol `btext`. This symbol is "
*** 3825 LINES SKIPPED ***