официального списка нет, обычный компилируется в ядро самостоятельно, остальные могут быть разобраны расширениями ядра. Вот список, который я нашел до сих пор.
общие параметры загрузка:
-v
: всегда загружайте систему в подробном режиме без необходимости удерживать CMD -V при запуске.
-x
: всегда загружать систему в Безопасный Режим без держать Shift при запуске.
f
: Старый Безопасный Режим.
-s
: загрузите систему в однопользовательском режиме без необходимости удерживать CMD -S при запуске.
-F
- Игнорировать Файл Boot.
iog
(например,iog=0x0
)
это отменяет режим "раскладушка" для портативных систем Apple, где, когда вы закрываете дисплей, но подключить систему к внешний монитор и клавиатура система будет бодрствовать. После выполнения этой команды при подключении внешнего монитора внутренний дисплей будет отключен, что может быть полезно в некоторых ситуациях, например, когда вы зеркально отображаете рабочий стол, но хотите запустить внешний дисплей с более высоким разрешением, чем ваш ноутбук.CNET
arch
изменяет способ загрузки системы, либо до 32-битной (i386
) или 64-разрядный (x86_64
) ядра. Обратите внимание, что сторонние расширения ядра могут быть 32-бит или 64-бит.
Graphics Mode
: размеры графического режима VESA.
Text Mode
: размеры режима текста VGA.
Boot Graphics
: графический или текстовый режим.
Quiet Boot
: Тихий Bootmode Что.
MKext Cache
: Mkext файл кэша.
Kernel Cache
: Кэш Ядра папка.
rd
: Корневое Устройство.
boot-uuid
: Boot UUID.
platform
: эксперт платформы {ACPI}.
config
: загрузить альтернативный список конфигураций (например,config=gfx
загрузить /Library/Preferences/SystemConfiguration/foo.plist
вместо com.apple.Boot.plist
)x86osx.
serverperfmode=1
на OS X El Capitan 10.11 и более поздних версиях это включает режим работы посвятить дополнительные системные ресурсы для серверных приложений.
DTrace:
dtrace_dof_mode
: установить режимы DTrace DOF {0/1/2/3}.
DisableFBT
: отключить FBT {1}.
IgnoreFBTBlacklist
: игнорировать черный список некоторых критических модулей {1}.
BSD:
-b
: не запускать /etc / rc.ботинок.
-l
: протоколирование утечек памяти (osfmk/kern/startup.c
).
srv
: загрузка с сервера {1}.
ncl
: количество кластеров.
nbuf
: количество буферов для BSD.
kmem
: доступ к памяти ядра {1}.
trace
: размер буфера трассировки ядра.
msgbuf
: Буфер Сообщений.
rp
: корневой путь.
mcache_flags
: кэш-память флаги.
mbuf_debug
: Отладка MBuf {1}.
initmcl
: mbuf кластеров инит.
socket_debug
: отладка сокета (net).
net_affinity
: чистое сродство (net).
rte_debug
: Route debug (net) {flags}.
-rwroot_hack
: Mount root чтение/запись.
IOKit:
mseg
: максимальный сегмент.
dart
: удалить существующий mapper.
io
: набор IO Отлаживать.
Mach:
keepsyms
: не выгружать KLD / преобразование символов адресов {1}.
debug
: отладка ядра {flags} (например,debug=0x14e
).
включает функции отладки ядра, которые покажут вам дополнительную информацию. Например:
0x01
- остановитесь во время загрузки и дождитесь присоединения отладчика
0x02
- отправить отладки ядра консоль
0x04
- падение в отладчик на немаскируемом прерывании
0x08
- отправлять отладочную информацию ядра на последовательный порт
0x10
- сделать ddb отладчиком по умолчанию
0x20
- вывод диагностической информации в системный журнал
0x40
- разрешить отладчику ARP и route
0x80
- поддержка старых версий gdb на новых системах
0x100
- отключить графический диалог паники экран
nvram_paniclog
: передать paniclog в NVRAM {1}.
pmsafe_debug
: перевести процессоры в" безопасный " режим питания {1}.
preempt
: установить частоту прерываний по умолчанию.
unsafe
: Макс опасные кванты.
poll
: Макс квантов опрос.
yield
: график опроса сдвиг урожайности.
idlehalt
: остановить поток простоя, чтобы позволить процессор в малоэнергичному режим {1}.
panic_io_port
: в панике прочитать из этого порта ввода / вывода {0x0 to 0xffff}.
_fpu
: ограничение времени загрузки процессора {387 / mmx / sse}.
disable high mem/2
: предпочитаю high mem}.
immediate_NMI
: принудительный отладчик NMI {1}.
-legacy
: режим наследия 32бит силы.
lcks
: статистика замком.
novmx
: в Rosetta {1} эмуляции altivec нет.
max_valid_dma_addr
: Макс допустимый ДМА адрес.
maxbouncepool
: Макс отказов размера бассейн.
maxloreserve
: максимальный низкий запас.
npvhash
: физический виртуальный хэш.
wpkernel
: защита ядра {1}.
-no_shared_cr3
: отключение общего адресного пространства ядра для 64-разрядных пользователей.
-pmap_trace
: включить трассировки ядра для pmap.
_panicd_ip
: IP сервера паники.
_router_ip
: IP маршрутизатор.
panicd_port
: порт сервера паники.
-zc
: проверка элемента свободной зоны.
mtxspin
: мьютекс спин (ppc).
vmmforce
: усилие VMM (ppc).
fn
: Force nap (ppc) (acpi) {0/1/2}.
pmsx
: Экспириментально режим (ppc) {1} управления силы stepper.
ctrc
: установка трассировки для конкретного ЦП (ppc).
tb
: по умолчанию размер буфера трассировки (КПП.)
wcte
: таймер комбайна записи позволяет (ppc).
mcklog
: снимите флаг проверки компьютера (ppc).
mcksoft
: спасение програмного обеспечения проверки машины (ppc).
ht_shift
: нестандартный размер хэш-таблицы (ppc) {1}.
zsize
: размер целевой зоны.
colors
: набор ВМ цветов.
fill
: заполнить страницы.
serialbaud
: установить серийную скорость ставка.
параметры загрузки от xnu/osfmk/i386/i386_init.c
:
diag
: диагностический вывод.
serial
: серийный диагностический консоли. Поддержка последовательной клавиатуры и / или консоли.
maxmem
максимальный объем используемой памяти. Он ограничивает адресуемую память указанным объемом (например maxmem=32
).
cpus=1
ограничивает число активных процессоров в системе до заданного уровня. Это может помочь сохранить мощность, что вряд ли полезно для многого другого, если вы не тестируете и не программируете.
himemory_mode
он используется для отладки больших конфигураций физической памяти для более чем 4 ГБ систем. Режимы: 0-все страницы доступны, 1-отключить высокий mem, 2-предпочесть высокий память.
immediate_NMI
поддержка отладки для более чем 4 ГБ систем, заставляя немедленного отладчика NMI.
urgency_notification_abstime
другое:
bluetoothHostControllerSwitchBehavior
(never
/always
)
скажите драйверу Bluetooth, следует ли переключаться на ключ, который вы подключили. Чтобы сделать внешний ключ по умолчанию, даже после перезагрузки, использовать always
.
smbios
: Verbose SMBIOS (AppleSMBIOS.kext) {1}
acpi
: Debug AppleACPIPlatform {1-8}
acpi_level
: ACPI уровень отладки
acpi_layer
: ACPI Debug Layer
acpi_sleep
: ACPI Sleep
nvdebug
: NVDAResman отладки
nvrm
: NVDAResman
ndrv_debug_level
: уровень отладки NDRV (NVDAResman)
pstep
: мощность шаг отладки (ACPI_SMC)
hpet
: AppleHPET
busratio
(например,busratio=20
): он использовал процессор i7 в 10.5.6, после 10.5.7 ему не нужноx86osx.
источник: xnu-1228 / Параметры загрузки
использование
например, когда вы находитесь в одиночном режиме (CMD -S после звука при запуске), чтобы запустить в безопасном режиме и многословно с дополнительным выводом отладки ядра на консоль, попробуйте:
sudo nvram boot-args="-x -v debug=0x14e"
чтобы добавить аргумент в существующий (без переопределения), попробуйте:
sudo nvram boot-args="-v $(nvram boot-args 2>/dev/null | cut -f 2-)"
чтобы удалить аргументы загрузки, выполните:
sudo nvram boot-args=""
sudo nvram -d boot-args
другие неофициальные параметры можно найти в kernel
binary it-self, например
$ strings /System/Library/Kernels/kernel | grep -C7 maxmem
kernel_early_bootstrap
diag
serial
Serial mode specified: %08X
PE_init_printf
version_variant = %s
version = %s
maxmem
himemory_mode
himemory_mode: %d
immediate_NMI
urgency_notification_abstime
i386_vm_init
power_management_init
machine_startup
или проверьте либо в Apple исходные файлы или на GitHub при поиске PE_parse_boot_argn
(используется для разбора параметров загрузки ядра).