OSDev

для всех
Текущее время: 20 май 2024, 23:09

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 353 ]  На страницу Пред.  1 ... 6, 7, 8, 9, 10, 11, 12 ... 36  След.
Автор Сообщение
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 28 апр 2012, 21:29 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
Yoda писал(а):
  • Увеличено резервирование места под BIOS Data Area до 12кБ.
В смысле под Extended BIOS Data Area?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 02 май 2012, 14:21 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
Разумеется :).
Поправлю в описании, чтобы не смущать.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 02 май 2012, 15:17 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
Кстати, а зачем резервировать? Ведь можно просто узнать, сколько памяти имеется (INT 12h вроде? не помню, уже давным-давно под ПК не пишу) -- BIOS сам отнимет ту часть вверху 640 Кбайт, что занята им под данные...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 02 май 2012, 16:01 

Зарегистрирован: 22 май 2007, 15:29
Сообщения: 283
Нижние 640 можно еще и через старую int 12 узнать, не прибегая к E820. Или в BDA размер посмотреть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 02 май 2012, 21:58 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
+1. Но Yoda задекларировал гарантированную загрузку из файла 620 кб, т.е. он просто использует 620 кб для загрузки файла плюс еще какое-то количество для кода/служебных данных, вообще не выполняя проверки на достаточность доступной базовой памяти для всего этого добра. Получается: 640 - 1,5 (до начала образа) - 620 (сам образ) - 0,5 (копия загрузчика; это минимум - загрузчик может быть больше плюс служебные данные) = 18 кб - это максимальный размер EBDA, с которым смогут работать загрузчики Ёды. В принципе загрузчики можно сделать так, чтобы конец области под образ можно было использовать для служебных целей до "последнего момента", т.е. 0,5 кб в конце при грамотном проектировании может быть достаточно в любом случае. Лично я во всех первичных загрузчиках использую int 12h и не накладываю ограничений на размер доступной базовой памяти, а файлы загружаю всегда целиком или же выдаю сообщение об ошибке, когда это сделать невозможно.
Цитата:
AMT, Вершина доступной базовой памяти
Адрес вершины доступной базовой памяти, размер которой в килобайтах можно получить посредством вызова сервисной функции BIOS с номером 0x12 из регистра AX. Максимально возможное значение AMT – 0xA0000, что соответствует 640 Кб доступной базовой памяти.
-----
Использование базовой памяти
Код:
0                  SLE                        AMT
+-----+-----+------+---------+---------+------+-----
| IVT | BDA | AVL1 | boot.os | boot.fs | AVL2 | ...
+-----+-----+------+---------+---------+------+-----
Вторичный загрузчик не должен разрушать IVT и BDA.

Области AVL1 и AVL2 могут использоваться вторичным загрузчиком после того, как он выполнит настройку стека. Область AVL2 может иметь нулевой размер.

Область boot.os/boot.fs – это место загрузки соответствующих файлов вторичного загрузчика (слово “boot” в именах файлов при необходимости может быть изменено). Эти файлы могут располагаться в любых записях загрузочного каталога под именами, записанными в любом буквенном регистре, следовательно, они могут быть помещены в загрузочный каталог при помощи обычного копирования. Каждый из этих файлов должен иметь ненулевой размер, причем размер файла boot.os должен быть кратен 1 Кб, а в его конце должна находиться стандартная загрузочная сигнатура.

Updated. Заменил удаленную картинку на псевдографику. Удалил концовку цитаты, касающуюся передачи параметров.


Последний раз редактировалось phantom-84 03 июн 2013, 17:51, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 02 май 2012, 22:24 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
SII писал(а):
Кстати, а зачем резервировать? Ведь можно просто узнать, сколько памяти имеется

Конечно можно. Но это мало что даст и затратить драгоценнейшие байты.
Я уже писал, вроде бы.

phantom-84 писал(а):
Получается: 640 - 1,5 (до начала образа) - 620 (сам образ) - 0,5 (копия загрузчика; это минимум - загрузчик может быть больше плюс служебные данные) = 18 кб - это максимальный размер EBDA, с которым смогут работать загрузчики Ёды.

Не совсем так. Много чего зависит от конкретной файловой системы. Самый тяжёлый случай на сегодняшний момент - NTFS. Если исходить из неё, то получается 640к - 620к (образ) - 1.5к (вектора прерываний и BDA) - 2к (код загрузочного сектора) - 4к (буфер чтения сектора диска) - 0.5к (стек и локальные переменные) = 12к. Что и выделено под EBDA.

phantom-84 писал(а):
В принципе загрузчики можно сделать так, чтобы конец области под образ можно было использовать для служебных целей до "последнего момента", т.е. 0,5 кб в конце при грамотном проектировании может быть достаточно в любом случае.

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

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 03 май 2012, 13:28 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
Да, я не учел размер сектора > 512 байт (например, 2 или 4 кб). Для стека можно попытаться использовать область ниже образа (хотя нек. функции BIOS требуют большей глубины стека, чем 256 байт). Что же касается кода загрузчика, то он может быть частично размещен в конце области для образа и лишь завершающие действия можно разместить в коде, расположенном после этой области (я часто в загрузчиках прибегаю к подобным трюкам - поверх отработавшего кода можно писать данные, например, 2-килобайтный загрузчик для CD/DVD у меня разбит на две равные части и пока не началась загрузка первого файла по адресу 8000h, в основном работает код из второй части загрузчика, также находящийся по адресу 8000h).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 18 окт 2012, 22:26 

Зарегистрирован: 18 окт 2012, 21:03
Сообщения: 54
Очень интересный загрузчик, но :
1) не вышло загрузить KERNEL.SYS от FreeDOS
2) не вышло загрузить SYSLINUX LDLINUX.SYS
3) не вышло загрузить ваше тестовое ядро на FAT32 cluster 4k (на FAT16 ваше тестовое грузилось причем на бажном биос)
4) не вышло загрузить GRUB4DOS ядро GRLDR напрямую.

НО удалось загрузить при помощи вашего MBR - GRUB4DOS через его собственный MBR, по следующей цепочке, Ваш MBR грузит MBRgrub а он грузит ядро GRLDR.
И самое главное что по такой хитрой цепочки ваш MBR смог загрузить GRUB на ноуте с багом в биос на котором собственный MBR от GRUB его не грузит, точней он грузит модуль но при этом не передает правильною конфигурацию диска и grub не может читать диск и грузить свои настройки или что либо вообще. Самое интересное что и с именитым SYSLINUX таже история его собственный MBR не в силах на этом ноуте с багом загрузить себя.
Я перепробовал на этом ноуте с багом десятки разных загрузчиков и MBR и нашел всего 2 способных загрузиться, один из них ваш, второй FlashBoot 2.1s.
FlashBoot 2.1s - может создать MBR с проверкой поддержки биосом LBA и если он не поддерживает то эмулирует CHS. Это единственный метод загрузки на очень большом количестве дешевых матерей где не удосужились нормально для USB прописать поддержку LBA. Я был удивлен что такие монстры как syslinux, grub, plop, не уделили этой проблеме должного внимания и их MBR грузятся только на нормальных BIOS. Ваша MBR грузиться видно потому что пишет CHS режим по умолчанию, но это для влехи в 2Гб. а для 32ГБ она наверно выберет LBA и тогда тоже не станет грузиться. Вам не кажется что проверка BIOS на поддержку LBA и эмуляция CHS если BIOS не поддерживает LBA - хорошая идея? Вы не думаете ее реализовать? Единственный конкурент FlashBoot 2.1s но он платный, хотя везде полно его ворованных лицензий )) (1 минус), он буржуйный (2 минус), глючит при создании MBR для загрузки grub4dos на ноуте с багом не грузит только на хорошем железе и только при создании MBR с syslinux нормально потом работает на бажном ноуте. Но FlashBoot 2.1s нельзя так гибко настраивать (огромный минус). Он грузит только сильно устаревшее ядро syslinux 3.71 и подсунуть ему другое не выходит, потому что он грузит не по имени файла а по прямому адресу и размеру.
Если бы вы доработали ваш MBR и boot следующим образом:
1) В MBR проверка BIOS на поддержку LBA если отсутствует то эмуляция режима CHS.
2) boot подружить с грандами загрузки, так как эти гранды MBR не уделили должного внимания. Примерно так, включить в boot ключики для GRUB4DOS и отдельно для SYSLINUX. (boot -d H -grub GRLDR или boot -d H -sysl LDLINUX.SYS) и чтоб сразу на их имена и размеры адаптировалось MBR и на то чтоб загрузила эти ядра. Потому как и сейчас есть возможность указать имена вот только не грузит потому как не производит анализ ядра. Я вообще бы сделал обязательным для всех ядер пытающихся загрузится с помощью вашей MBR предварительную проверку их boot.exe, т.е. не абстрактно имя ядра давать а чтоб оно само было boot предложено чтоб он мог адаптировать максимально MBR под них. (Командой типа boot -krnl ядро -d H) Да и еще уж если пишется MBR то куда он пишется по умолчанию сразу делала бы ваша утилита активным разделом. А то boot -d H , потом грузишь не грузиться, оказывается при инсталляции MBR активность не выставляется а ее нужно отдельной командой, отдельной командой хорошо менять активность но уж при записи MBR и активность на тот диск должна автоматом прыгать - это логично.

Вот сумбурно малость, извиняюсь, но мне очень понравился ваш MBR.
P.S. ДА почемуто опять не грузит на FAT32 с вашей MBR даже на нормальном BIOS даже вашу kernel , видно при разных разбивках (я все время форматирую по разному) флешку , ведет себя по разному, не могу теперь подобрать тот формат когда везде грузилась )) вобщем с FAT32 еще глюкует, но если вы продолжите совершенствовать ваше детище и вам будет нужен тестер то я к вашим услугам.

P.P.S. Да при попытки загрузить PLOP ядро plpbt.bin вашей MBR система входит в непрекращающийся цикл перезагрузки, весело мигая экраном каждую секунду )))

P.P.P.S. ДА вот еще соображение, вы говорили phantom64 что он архаичен придерживаясь своих XT шек и только x86 команд а сами придерживаетесь зачем то 512байт, зачем? Ведь давно уже лазая в былые годы в Norton DE можно было заметить все диски стали большие и с разбивкой clustera на 64 sectora так почему вы используете только 1 sector а не все 64, у вас было бы 32 кило на все про все, уже не встретить ни флешки не чего еще меньше чем на 2гига, зачем вам цепляться за 512байт? По моему это тоже архаичность.


Последний раз редактировалось SII 19 окт 2012, 06:15, всего редактировалось 1 раз.
Слияние трёх сообщений в одно


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 19 окт 2012, 09:31 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
jarilo писал(а):
2) не вышло загрузить SYSLINUX LDLINUX.SYS
Чем грузили-то? Родным первичным загрузчиком? Если нет, то вот пример того, как "прошивать" версию 4.05:
Код:
include "mkfloppy.inc"

LDLINUX_MAGIC equ 3EB202FEh

file "content/boot/syslinux/ldlinux.bss", 11
dw 512
db 1
dw 1
db 2
dw 14*512/32
dw 2*80*18
db 0F0h
dw 9
dw 18
dw 2
dd 0
dd 0
db 0
db 0
db 29h
dd 55555555h
db 11 dup 32
db "FAT12", 32, 32, 32
file "content/boot/syslinux/ldlinux.bss": $, 512-$

store dword loader_base/512 at 11Ah
store dword 0 at 120h

; fat1
db 0F0h, 0FFh, 0FFh, 9*512-3 dup 0

; fat2
db 0F0h, 0FFh, 0FFh, 9*512-3 dup 0

; root
dent kernel, "KERNEL  BIN", FA_ARC
dent boot, "BOOT", FA_DIR
; ...
rb 33*512-$

defdir boot
{
dent syslinux, "SYSLINUX", FA_DIR
}

defdir syslinux
{
dent loader, "LDLINUX SYS", FA_ARC
dent config, "SYSLINUXCFG", FA_ARC
dent menu, "MENU    C32", FA_ARC
dent mboot, "MBOOT   C32", FA_ARC
}

; data
stof kernel, "content/kernel.bin"
stod boot, root
stod syslinux, boot
stof loader, "content/boot/syslinux/ldlinux.sys"
store word (loader_size+511)/512 at loader_base+20h
store dword (loader_size+3)/4 at loader_base+24h
store qword loader_base/512+1 at loader_base+1EEh
store word (loader_size+511)/512-1 at loader_base+1F6h

checksum=0
repeat (loader_size+3)/4
load value dword from loader_base+4*(%-1)
checksum=(checksum+value) and 0FFFFFFFFh
end repeat
store dword (LDLINUX_MAGIC-checksum) and 0FFFFFFFFh at loader_base+28h

stof config, "content/boot/syslinux/syslinux.cfg"
stof menu, "content/boot/syslinux/menu.c32"
stof mboot, "content/boot/syslinux/mboot.c32"
; ...
rb 2*80*18*512-$
Адрес загрузки ldlinux.sys - 8000h. Адрес запуска (минуя helper), передаваемые параметры (и прочее окружение) не помню.

Цитата:
4) не вышло загрузить GRUB4DOS ядро GRLDR напрямую.
Напрямую - это как? При помощи grldr.mbr, записанного в начало диска? GRUB4DOS нужно правильно установить, т.е. просто использовать родной инсталлятор.

Цитата:
...может создать MBR с проверкой поддержки биосом LBA и если он не поддерживает то эмулирует CHS.
Что значит эмуляция CHS? Обычно просто идет детект поддержки EDD-сервиса (LBA-адресации) и если детект завершился неудачей, используется устаревший сервис (CHS-адресация), если такое вообще возможно, т.е. позволяет диапазон адресов. Во многих загрузчиках нет автодетекта, но можно жестко профиксить нужный режим.

Цитата:
P.S. ДА почемуто опять не грузит на FAT32 с вашей MBR даже на нормальном BIOS даже вашу kernel , видно при разных разбивках (я все время форматирую по разному) флешку , ведет себя по разному, не могу теперь подобрать тот формат когда везде грузилась )) вобщем с FAT32 еще глюкует, но если вы продолжите совершенствовать ваше детище и вам будет нужен тестер то я к вашим услугам.
Интересно проверить. Если чЁ, будет повод бросить камень в огород Ёды. Пока я только пользовался NTFS-загрузчиком из данного пакета - вроде работает. Кстати, Yoda, недавно на буржуйском форуме обсуждали загрузку загрузочной записи NTFS (полностью) ntldr'ом. Там нужна дополнительная точка входа и другой начальный адрес загрузки, чтобы это работало. Будет неплохо, если ты реализуешь такую возможность в своем NTFS-загрузчике. Я, еще не имея последнего, уже в перспективе решил это сделать. Это позволит боязливым пользователям использовать твой загрузчик, не перезаписывая загрузочную записть (и MBR, естественно, тоже), т.е. вообще без инсталляции в нынешнем понимании этого слова.

Цитата:
P.P.S. Да при попытки загрузить PLOP ядро plpbt.bin вашей MBR система входит в непрекращающийся цикл перезагрузки, весело мигая экраном каждую секунду )))
PLOP - это полное ... Выкинь его.

Цитата:
P.P.P.S. ДА вот еще соображение, вы говорили phantom64 что он архаичен придерживаясь своих XT шек и только x86 команд а сами придерживаетесь зачем то 512байт, зачем? Ведь давно уже лазая в былые годы в Norton DE можно было заметить все диски стали большие и с разбивкой clustera на 64 sectora так почему вы используете только 1 sector а не все 64, у вас было бы 32 кило на все про все, уже не встретить ни флешки не чего еще меньше чем на 2гига, зачем вам цепляться за 512байт? По моему это тоже архаичность.
Чувак, научись всегда писать ники правильно, иначе будешь постоянно получать по макушке. Использовать набор команд 8086 вовсе не обязательно. Сейчас этого никто не делает в загрузчиках. Причину моего подобного поведения я когда-то объяснял. Что касается загрузчика, то про какой именно загрузчик вы говорите? Да, я говорил Ёде, что нет никакого практического смысла делать загрузчик под FAT32 умещающимся в один сектор, разделяя его при этом на две версии. Этот загрузчик де-факто имеет размер 1 кб (1,5 кб вместе с FSInfo). Но что касается например MBR-загрузчика, то всегда лучше использовать один сектор, чем постоянно подтягивать MBR-helper. Здесь лучше поэтапно подгружать дополнительный код в зависимости от объема необходимых функций. Например, мои MBR-загрузчики односекторные, но они помимо своих штатных функций могут подгружать дополнительный код, например EBR. В 3-ей версии Alter'а есть возможность вообще загрузить один произвольный сектор и за счет того, что находящийся в нем код получает информацию о своем местонахождении на диске, можно догрузить любое количество следующих за ним на диске секторов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OS Boot Tools
СообщениеДобавлено: 19 окт 2012, 13:47 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
jarilo писал(а):
1) не вышло загрузить KERNEL.SYS от FreeDOS
2) не вышло загрузить SYSLINUX LDLINUX.SYS
3) не вышло загрузить ваше тестовое ядро на FAT32 cluster 4k (на FAT16 ваше тестовое грузилось причем на бажном биос)
4) не вышло загрузить GRUB4DOS ядро GRLDR напрямую.

Что не удивительно, т.к. каждое ядро или вторичный загрузчик имеют свой собственный адрес загрузки, точку входа и передаваемые параметры. Мой загрузчик предназначался в первую очередь для разработчиков ОС. Для загрузки других ОС необходимо делать промежуточный загрузчик. Возможно, я когда-нибудь сделаю его, но прямо сейчас у меня нет таких планов.

jarilo писал(а):
Ваша MBR грузиться видно потому что пишет CHS режим по умолчанию, но это для влехи в 2Гб. а для 32ГБ она наверно выберет LBA и тогда тоже не станет грузиться. Вам не кажется что проверка BIOS на поддержку LBA и эмуляция CHS если BIOS не поддерживает LBA - хорошая идея?

Именно так и делается в большинстве загрузчиков, включая мой. Режим доступа CHS используется только в том случае, если отсутствует поддержка BIOS-ом режима LBA.

jarilo писал(а):
2) boot подружить с грандами загрузки, так как эти гранды MBR не уделили должного внимания. Примерно так, включить в boot ключики для GRUB4DOS и отдельно для SYSLINUX. (boot -d H -grub GRLDR или boot -d H -sysl LDLINUX.SYS) и чтоб сразу на их имена и размеры адаптировалось MBR и на то чтоб загрузила эти ядра.

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

jarilo писал(а):
А то boot -d H , потом грузишь не грузиться, оказывается при инсталляции MBR активность не выставляется а ее нужно отдельной командой, отдельной командой хорошо менять активность но уж при записи MBR и активность на тот диск должна автоматом прыгать - это логично.

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

jarilo писал(а):
P.S. ДА почемуто опять не грузит на FAT32 с вашей MBR даже на нормальном BIOS даже вашу kernel , видно при разных разбивках (я все время форматирую по разному) флешку , ведет себя по разному, не могу теперь подобрать тот формат когда везде грузилась )) вобщем с FAT32 еще глюкует

Достаточно сложно сказать, почему не грузится, не имея возможности провести эксперименты с вашим BIOS-ом.

jarilo писал(а):
Да при попытки загрузить PLOP ядро plpbt.bin вашей MBR система входит в непрекращающийся цикл перезагрузки, весело мигая экраном каждую секунду )))

Это как раз и происходит по описанной выше причине, - plpbt.bin ожидает, что он загружен совсем по другому адресу (не 600h) и, вероятно, у него другая точка входа. Иными словами, универсального начального загрузчика быть не может. Только двухстадийный.

jarilo писал(а):
ДА вот еще соображение, вы говорили phantom64 что он архаичен придерживаясь своих XT шек и только x86 команд а сами придерживаетесь зачем то 512байт, зачем? Ведь давно уже лазая в былые годы в Norton DE можно было заметить все диски стали большие и с разбивкой clustera на 64 sectora

Вы путаете понятия. Кластер - это элемент файловой системы. А по стандартам начальной загрузки, как BIOS, так и MBR грузят только один лигический сектор, т.е. 512 байт в случае жёсткого диска, флешки или флоппи-диска. Теоретически можно зарезервировать произвольное количество дополнительных секторов под расширение загрузчика, но при этом потеряется его общность - не любой диск можно будет сделать загрузочным.

phantom-84 писал(а):
Интересно проверить. Если чЁ, будет повод бросить камень в огород Ёды.

Ну конечно, как же без этого! :mrgreen:

phantom-84 писал(а):
Кстати, Yoda, недавно на буржуйском форуме обсуждали загрузку загрузочной записи NTFS (полностью) ntldr'ом. Там нужна дополнительная точка входа и другой начальный адрес загрузки, чтобы это работало. Будет неплохо, если ты реализуешь такую возможность в своем NTFS-загрузчике. Я, еще не имея последнего, уже в перспективе решил это сделать. Это позволит боязливым пользователям использовать твой загрузчик, не перезаписывая загрузочную записть (и MBR, естественно, тоже), т.е. вообще без инсталляции в нынешнем понимании этого слова.

Погоди-погоди, не понял, кто чего грузит... ntldr грузит загрузочную запись NTFS? А смысл? И потом, мой загрузчик это и есть загрузочная запись, что значит "использовать его, не переписывая загрузочную запись"?

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 353 ]  На страницу Пред.  1 ... 6, 7, 8, 9, 10, 11, 12 ... 36  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB