diff --git a/ru_RU.KOI8-R/articles/5-roadmap/article.sgml b/ru_RU.KOI8-R/articles/5-roadmap/article.sgml
index b8e79bbd53..aca9faaba4 100644
--- a/ru_RU.KOI8-R/articles/5-roadmap/article.sgml
+++ b/ru_RU.KOI8-R/articles/5-roadmap/article.sgml
@@ -3,7 +3,7 @@
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/5-roadmap/article.sgml,v 1.7 2007/05/15 06:07:48 gad Exp $
- Original revision: 1.27
+ Original revision: 1.30
-->
Выбор подходящей для вас версии &os;
- . Она была написана в Августе 2005 г. (на два с половиной
+ .
+ Статья Выбор подходящей для вас версии &os;
+ была написана в Августе 2005 г. (на два с половиной
года позже) и содержит раздел, в котором описывается как разворачивались
планы и события, а также какие уроки были получены.
@@ -85,7 +87,7 @@
привело к тому, что качество релизов 3.0 и 3.1 не могло удовлетворить
большинство пользователей, и так было до версии 3.2, когда линейка была
признана стабильной
. Хуже того, ветка &t.releng.3; была
- создана на основе релиза 3.0. а ветка &t.releng.head; должна была вести к
+ создана на основе релиза 3.0, а ветка &t.releng.head; должна была вести к
4-CURRENT. В результате ветки &t.releng.head; и &t.releng.3; стали
сильно отличаться, что значительно осложнило поддержку ветки
&t.releng.3;. &os; 2.2.8 была оставлена как последняя версия &os;,
@@ -131,15 +133,15 @@
- VM: Функция ядра malloc изолирована и освобождена
- от Giant. Распределитель зон UMA также не использует Giant.
+ VM: функция ядра malloc изолирована и освобождена
+ от Giant. Аллокатор зон UMA также не использует Giant.
Изоляция vm_object находится в работе и является важным шагом в
исключении Giant из работы с буферами/кэшем. Изоляция pmap ещё
не реализовывалась.
- GEOM: Уровень блоков GEOM был разработан с учётом работы без
+ GEOM: уровень блоков GEOM был разработан с учётом работы без
Giant и он позволяет работать модулям GEOM и низлежащим драйверам
блочных устройств без Giant. На данный момент только драйверы
&man.ata.4; и &man.aac.4; разделены и работают без
@@ -156,7 +158,7 @@
- Сеть: Работа по переводу на изоляцию сетевого стека была
+ Сеть: работа по переводу на изоляцию сетевого стека была
начата заново. Изначально целями были таблицы маршрутизации, ARP,
функции моста, IPFW, Fast-Forward, TCP, UDP, IP, Fast IPSEC и
уровни интерфейсов, а также некоторые драйверы устройств Ethernet.
@@ -169,21 +171,21 @@
- VFS: Начата предварительная подготовка.
+ VFS: начата предварительная подготовка.
- буфер/кэш: Закончена начальная работа по изоляции
+ Буфер/кэш: закончена начальная работа по изоляции
буферов.
- Proc: Начальное изоляция proc уже есть, во &os; 5.2 ожидается
+ Proc: начальное изоляция proc уже есть, во &os; 5.2 ожидается
ещё больший прогресс.
- CAM: На уровне CAM SCSI значительной работы не
+ CAM: на уровне CAM SCSI значительной работы не
проделано.
@@ -214,7 +216,7 @@
- kernel encryption: криптографические драйверы и ядро технологии
+ Kernel encryption: криптографические драйверы и ядро технологии
&man.crypto.4; не используют Giant. KAME IPsec не
отделяются.
@@ -225,11 +227,11 @@
- вытесняемость ядра: включена вытесняемость для потоков
+ Вытесняемость ядра: включена вытесняемость для потоков
выполнения прерываний. Однако несогласованность из-за того, что
Giant используется в большинстве кода ядра и подпрограммах
обработки прерываний драйверов устройств, вызывает множество
- лишних переключений контекста и может на самом деле сказаться на
+ лишних переключений контекста и может сказаться на
производительности. Ведётся работа по выяснению того, как сделать
вытесняемость условной.
@@ -244,8 +246,8 @@
подпрограммы обслуживания прерываний от устройств могут создавать
блокировки для выставления семафоров, выделения памяти и так далее.
Хотя это облегчает написание драйверов, при этом понижается
- реактивность системы из-за того, что для обслуживания ithread должно
- быть выполнено полное переключение контекста процесса. Это
+ реактивность системы из-за полного переключения контекста процесса,
+ которое должно быть выполнено для обслуживания ithread. Это
усугубляется значительным использованием ядром семафора Giant, и часто
приводит к множеству пауз и переключений контекстов для обслуживания
прерывания. Драйверы, которые зарегистрировали свои прерывания как
@@ -263,18 +265,19 @@
- Возможно, особый случай облегчённых ithread. При этом может,
- придётся уменьшить количество сохраняемых данных контекста для
- ithread, заимствовать стек из другого kthread и/или создавать
- новый быстрый способ обхода подпрограммы mi_switch().
+ Как вариант — задействовать особый вид легковесных
+ ithread. Это могло бы привести к уменьшению количества сохраняемых
+ контекстов для ithread, к заимствованию стека из другого kthread
+ и/или к созданию нового быстрого пути, исключающего вызов
+ mi_switch().
Можно ввести новую модель обработки прерываний, которая
позволит драйверам регистрировать 'фильтр прерываний' вместе с
- обычной процедурой обработки. Это будет похоже на используемую
- сейчас в Mac OS X модель. Процедуры фильтрации прерываний позволят
- драйверу определять, должен ли он участвовать в обработке
+ обычной процедурой обработки. Это будет похоже на модель,
+ используемую сейчас в Mac OS X. Процедуры фильтрации прерываний
+ позволят драйверу определять, должен ли он участвовать в обработке
прерывания, позволят ему подавлять источник прерываний и, возможно,
определять и планировать действия по его обработке. Она будет
работать в том же самом контексте, что и низкоуровневая процедура
@@ -305,7 +308,7 @@
Компоненты уровня ядра и пользовательского уровня для KSE и THR
- должны быть созданы для все платформ уровня Tier-1. Решение о том,
+ должны быть созданы для всех платформ уровня Tier-1. Решение о том,
какой пакет реализации потоков выполнения будет использоваться по
умолчанию, будет, скорее всего, приниматься для каждой платформы
отдельно, в зависимости от стабильности и завершённости каждого
@@ -501,7 +504,7 @@
- KSE: И компоненты уровня ядра, и компоненты пользовательского
+ KSE: и компоненты уровня ядра, и компоненты пользовательского
уровня должны достичь одинакового уровня функциональности во всех
платформах уровня Tier-1 в UP и SMP конфигурациях. Определение
того, что является платформами ранга Tier-1
, можно
@@ -520,7 +523,7 @@
- интерфейс и драйверы busdma: такие архитектуры, как PAE/&i386;
+ Интерфейс и драйверы busdma: такие архитектуры, как PAE/&i386;
и sparc64, в которых отсутствует прямое отображение адресного
пространства хоста в адресное пространство плат расширения, требуют
исключения функции vtophys() и ей подобных. Интерфейс busdma был
@@ -536,7 +539,7 @@
- распределение ресурсов PCI: соответствие спецификации PC2003
+ Распределение ресурсов PCI: соответствие спецификации PC2003
требует, что системы x86 не конфигурировали устройства PCI из
системной BIOS, оставляя эту задачу исключительно ОС. Во &os;
должна появиться возможность управления и распределения ресурсов
@@ -553,11 +556,11 @@
Производительность
Производительность зависит от хода работ над инфраструктурой SMPng
- и в следующих областях:
+ в следующих областях:
- Устройства хранения: Технология GEOM позволяет драйверам
+ Устройства хранения: технология GEOM позволяет драйверам
устройств хранения работать без использования Giant. Все драйверы,
которые взаимодействуют напрямую с GEOM (в противоположность тем,
что находятся ниже уровня CAM или другого промежуточного слоя),
@@ -577,7 +580,7 @@
- Прерывания и переключение контекстов: Как обсуждалось выше,
+ Прерывания и переключение контекстов: как обсуждалось выше,
задержки в прерываниях и переключениях контекстов имеют большое
влияние на производительность. Переключение контекстов для ithread
и kthread на всех платформах должно быть улучшено. Должна быть
@@ -637,7 +640,7 @@
- NEWCARD/OLDCARD: Подсистема NEWCARD во &os; 5.0 сделана
+ NEWCARD/OLDCARD: подсистема NEWCARD во &os; 5.0 сделана
используемой по умолчанию. К сожалению, в ней отсутствует
поддержка для не-Cardbus мостов и на некоторых лэптопах она
не работает из-за проблем с маршрутизацией прерываний.
@@ -657,8 +660,8 @@
- Новый планировщик задач: Он уже готов, и пользователи могут
- выбирать между классическим планировщиком 44BSD и новым
+ Новый планировщик задач: он уже готов, и пользователи могут
+ выбирать между классическим планировщиком 4BSD и новым
планировщиком ULE. В ветке &t.releng.5; должен быть планировщик,
имеющий привязку к процессору, поддержку HyperThreading и KSE,
а также отсутствие снижения производительности или времени реакции