Открытое тестирование ядра Voodoo XNU 9.5.0 (универсальное ядро Mac OS X 10.5.5 для процессоров Intel и AMD)
Команда XNU-Dev оперативно портировала опубликованные Apple исходные коды ядра Mac OS X 10.5.5 (Darwin 9.5.0) для работы на неподдерживаемых процессорах Intel и AMD со встроенным декриптором на лету, патчем CPUID и поддержкой параметра множителя шины busratio.
- Основной автор
-
@R0GUE
Опубликовано 2008-09-22
- Раздел архива
- Релизы ядер и новости сообщества
- Охват в архиве
- 493,765 просмотров · 14 отобранных заметок (из 17 исходных сообщений) · 2008-09-22 – 2008-09-24
- Участники обсуждения (8)
- @gipo (3)@eMatoS (3)@Voyn1x (3)@R0GUE (2)@bhast2 (2)@pαuℓzurrr. (2)@elicip@adil2003
- Справочник оборудования
- USB 3.2 Boot Flash Drives ↗ AMD Desktop Processors ↗ Intel Core Processors ↗
Команда разработчиков XNU-Development не теряла времени даром, чтобы как можно скорее предоставить пользователям неванильных систем актуальное ядро для Mac OS X 10.5.5.
Apple оперативно опубликовала исходные коды ядра 10.5.5, а команда XNU-dev столь же быстро выполнила их портирование. Ядро версии 9.5 уже перенесено и проходит внутреннее тестирование. Следующая бета-версия ядра Voodoo будет базироваться уже на кодовой базе 9.5 (текущая версия Beta 1 основана на 9.4).
Информация для тестировщиков
Пожалуйста, сообщайте обо всех найденных ошибках в трекере на странице Issues ↗. Также обязательно прочитайте этот пост ↗, чтобы узнать, как снять лог идентификатора процессора (CPUID log), и приложите его к вашему отчету об ошибке — это огромная помощь в диагностике проблем!
Если система не загружается вовсе, работает с нарушением таймингов или слишком долго переходит к графическому интерфейсу (синему экрану), попробуйте указать следующие флаги загрузки:
Специально для процессоров AMD: -amd -emulateintel (начиная со сборки alpha8 эти флаги обычно больше не требуются).
Также можно попробовать флаг -force64 для проверки экспериментальной поддержки 64-битного режима на AMD — но эта функция находится на самой ранней стадии разработки, поэтому не ждите от нее полной работоспособности!
Для всех платформ: busratio=xx
где xx — множитель частоты вашего процессора (тактовая частота процессора, деленная на частоту системной шины FSB). Частота шины FSB обычно составляет 100, 133, 166, 200, 333 или 400 МГц.
Требования к загрузчику
Вам необходим загрузчик с поддержкой эмуляции EFI! Настоятельно рекомендуется использовать Chameleon.
Владельцам процессоров Pentium 4 (и ряда других CPU) потребуется обновленная версия Chameleon — старые варианты вроде dfe boot132 могут не сработать!
Обновленный загрузчик Chameleon будет опубликован на официальном сайте одновременно с выходом финального релиза ядра Voodoo. До тех пор используйте при загрузке параметр busratio, как описано выше.
Более подробную информацию о проекте XNU-Dev и ядре 9.5.0 можно найти на официальной странице XNU-Dev ↗.
Дополнения автора и технические ревизии
Последующие дополнения автора @R0GUE
@elicipА есть ли соответствующий System.kext версии 9.5.0?
Вот архив с System.kext версии 9.5.0 (rogue.infinite mac.com/files/950_System_kext.zip). Удачного тестирования!
Полевые заметки и отчёты сообщества
Отобрано 14 технических ответов из 17 исходных сообщений темы
Протестировал новое ядро 9.5.0 XNU...
В целом всё работает нормально, вот только звук при начале воспроизведения хрипит и трещит первые 3 секунды, а затем играет чисто.
Это происходит при запуске абсолютно любого аудиопотока, даже системных звуков вроде очистки Корзины — через пару секунд хрип пропадает...
Пока откатился обратно на ядро 9.4.0 XNU, на котором у меня всё работает безупречно.
Ты забыл указать при загрузке параметр busratio.
Чтобы избавиться от хрипов звука, нужно обязательно передавать ядру правильный множитель busratio.
Например, у меня частота шины FSB равна 200 МГц,
а тактовая частота процессора — 2,6 ГГц.
Делим 2600 на 200
и получаем множитель 13.
Поэтому я загружаюсь с флагом busratio=13.
Подтверждаю, что с этим параметром звук работает идеально.
В будущих сборках автоопределение поправят, ведь сейчас это только альфа-версия.
@bhast2Ты забыл указать при загрузке параметр busratio. Чтобы избавиться от хрипов звука, нужно обязательно передавать ядру правильный множитель busratio. Например, у меня частота шины FSB равна 200 МГц, а тактовая частота процессора — 2,6 ГГц. Делим 2600 на 200 и получаем множитель 13. Поэтому я загружаюсь с флагом busratio=13. Подтверждаю, что с этим параметром звук работает идеально. В будущих сборках автоопределение поправят, ведь сейчас это только альфа-версия.
А как узнать частоту своей шины FSB? У меня процессор тоже на 2,6 ГГц...
UPD: Вопрос снят, у меня шина тоже 200 МГц, так что множитель такой же...
UPD 2: Подтверждаю, теперь со звуком полный порядок!
Заодно попробовал загрузиться в 64-битном режиме, но система зависает сразу после загрузки кекста AppleNForceATA. Впрочем, я и не ждал, что 64 бита заработают с ходу, но начало положено.
@bhast2Ты забыл указать при загрузке параметр busratio. Чтобы избавиться от хрипов звука, нужно обязательно передавать ядру правильный множитель busratio. Например, у меня частота шины FSB равна 200 МГц, а тактовая частота процессора — 2,6 ГГц. Делим 2600 на 200 и получаем множитель 13. Поэтому я загружаюсь с флагом busratio=13. Подтверждаю, что с этим параметром звук работает идеально. В будущих сборках автоопределение поправят, ведь сейчас это только альфа-версия.
Обязательно попробую прописать busratio при первой возможности и отпишусь о результатах.
Можно ли посмотреть реальную частоту FSB и процессора через утилиту CPU-Z? Просто у меня система слегка разогнана, так что значения нестандартные...
Спасибо за наводку, bhast!
Всё работает отлично, но загрузиться в 64-битном режиме не удается — система намертво виснет при инициализации кекста AppleNForceATA.
У меня всё работает прекрасно, и 64-битный режим успешно загружается!
Правда, при попытке открыть «Сведения о системе» (System Profiler) программа аварийно закрывается!
----------------------------------------------
ОС: Leo4all v.5 Server
Материнская плата: ASRock 4CoreDual-SATA2 R2
BIOS: v.1.7 (старая версия)
Чипсет: VIA® PT880 Pro / PT880 Ultra
Звук: кодек ALC662 => Azalia
Процессор: Intel Pentium D 920 2,8 ГГц
Память: 2 ГБ DDR2 667 МГц (двухканальный режим)
Видеокарта: ATI X800 XT AGP (не меняется разрешение экрана!)
Жесткий диск: IDE 160 ГБ
@eMatoSВсё работает отлично, но загрузиться в 64-битном режиме не удается — система намертво виснет при инициализации кекста AppleNForceATA.
Судя по тому, что я читал на форуме InsanelyMac, причина в том, что драйвер AppleNForceATA основан на коде AppleVIAATA, который является чисто 32-битным кекстом. Именно по этой же причине материнские платы на чипсетах nForce испытывают проблемы при работе с 4 ГБ оперативной памяти и более.
Черт возьми! Значит, в 64-битном режиме он так и не заработает, пока кто-нибудь не перепишет этот кекст заново.
Насколько я понимаю, именно так дела и обстоят.
И если это кажется вам проблемой, то подождите выхода Snow Leopard: :
В большинстве случаев Leopard может использовать те же драйверы, что и Tiger. Ограничения возникают лишь при взаимодействии с другими обновленными кекстами и связками. Однако с переходом на Snow Leopard этой обратной совместимости больше не будет: 32-битные драйверы НЕ РАБОТАЮТ в Snow Leopard. Да-да, всё придется начинать с чистого листа.
@Voyn1xСудя по тому, что я читал на форуме InsanelyMac, причина в том, что драйвер AppleNForceATA основан на коде AppleVIAATA, который является чисто 32-битным кекстом. Именно по этой же причине материнские платы на чипсетах nForce испытывают проблемы при работе с 4 ГБ оперативной памяти и более.
В Leopard 64-битный режим реализован на уровне пользовательских приложений, поэтому разрядность кекстов не влияет на процесс загрузки ядра.
64-битный режим задействуется только тогда, когда его запрашивает конкретное приложение.
Ребята, пожалуйста, загляните сюда:
http://forum.insanelymac.com/index.php?s=&showtopic… ↗
И опубликуйте значения регистров MSR ваших процессоров! Это очень поможет разработчикам сделать ядро для систем AMD еще лучше и стабильнее.
Полностью поддерживаю, p-J: разработчикам сейчас очень нужны дампы с систем AMD, так что давайте подсобим, ребята!
@bhast2В Leopard 64-битный режим реализован на уровне пользовательских приложений, поэтому разрядность кекстов не влияет на процесс загрузки ядра. 64-битный режим задействуется только тогда, когда его запрашивает конкретное приложение.
Хм, изучил вопрос глубже — ты действительно прав (по крайней мере, применительно к Leopard, см. мою цитату выше). Однако, как писал Mysticus C на InsanelyMac, проблема с 4 ГБ ОЗУ на платах nForce вызвана именно конфликтом 32-битной адресации драйвера nForce с 64-битным пространством памяти. Могу только предполагать, но, вероятно, принудительное включение 64-битного режима при загрузке упирается в ту же самую проблему.
@bhast2Ты забыл указать при загрузке параметр busratio. Чтобы избавиться от хрипов звука, нужно обязательно передавать ядру правильный множитель busratio. Например, у меня частота шины FSB равна 200 МГц, а тактовая частота процессора — 2,6 ГГц. Делим 2600 на 200 и получаем множитель 13. Поэтому я загружаюсь с флагом busratio=13. Подтверждаю, что с этим параметром звук работает идеально. В будущих сборках автоопределение поправят, ведь сейчас это только альфа-версия.
На сборке alpha11 всё работает безупречно даже без указания флага busratio — звук сразу чистый!
Также установил свежие системные кексты от обновления 10.5.5.
Источники и реестр соавторов (указано участников: 8 · Тема #1361)
| Участник | Роль в досье | Сообщений | Период активности |
|---|---|---|---|
| @gipo | Ключевой участник | 3 | 2008-09-22 → 2008-09-24 |
| @eMatoS | Ключевой участник | 3 | 2008-09-22 → 2008-09-24 |
| @Voyn1x | Ключевой участник | 3 | 2008-09-23 → 2008-09-24 |
| @R0GUE | Основной автор | 2 | 2008-09-22 |
| @bhast2 | Участник | 2 | 2008-09-22 → 2008-09-23 |
| @pαuℓzurrr. | Участник | 2 | 2008-09-22 → 2008-09-23 |
| @elicip | Участник | 1 | 2008-09-22 |
| @adil2003 | Участник | 1 | 2008-09-22 |