Não existe uma lista oficial, a comum é compilada no próprio kernel, outra pode ser analisada pelas extensões do kernel. Aqui está a lista que eu encontrei até agora.
Opções gerais de inicialização:
-v: Sempre inicialize o sistema no modo verboso sem precisar esperar CMD- Vna inicialização.
-x: Sempre inicialize o sistema no modo de segurança sem precisar esperar Shiftna inicialização.
f: Modo de segurança antigo.
-s: Inicialize o sistema no modo Usuário Único sem a necessidade de aguardar CMD- Sna inicialização.
-F - Ignorar arquivo de inicialização.
iog(por exemplo iog=0x0)
Isso inverte o modo "Clamshell" para os sistemas laptop da Apple, onde quando você fecha a tela, mas conecta o sistema a um monitor externo e teclado, o sistema permanece ativo. Depois de executar este comando, ao conectar um monitor externo, o monitor interno será desativado, o que pode ser benéfico em algumas situações, como aquelas em que você está espelhando sua área de trabalho, mas deseja executar o monitor externo em uma resolução maior do que o seu laptop pode executar. . CNET
arch
Altera como o sistema inicializa, no kernel de 32 bits ( i386) ou 64 bits ( x86_64). Observe que as extensões de kernel de terceiros podem ser apenas de 32 ou 64 bits.
Graphics Mode: Dimensões do modo de gráficos VESA.
Text Mode: Dimensões do modo de texto VGA.
Boot Graphics: Gráficos ou modo de texto.
Quiet Boot: Modo de inicialização silencioso.
MKext Cache: Arquivo de cache Mkext.
Kernel Cache: Arquivo de cache do kernel.
rd: Dispositivo raiz.
boot-uuid: UUID de inicialização.
platform: Especialista em plataforma {ACPI}.
config: Carrega a configuração alternativa (por exemplo config=foobar, carrega em /Library/Preferences/SystemConfiguration/foobar.plistvez de com.apple.Boot.plist) x86osx .
serverperfmode=1
No OS X El Capitan 10.11 e posterior, isso permite que o modo de desempenho dedique recursos adicionais do sistema para aplicativos de servidor.
DTrace:
dtrace_dof_mode: Defina os modos DTrace DOF {0/1/2/3}.
DisableFBT: Desative o FBT {1}.
IgnoreFBTBlacklist: Ignore a lista negra de determinados módulos críticos {1}.
BSD:
-b: Não execute /etc/rc.boot.
-l: Registro de vazamentos de memória ( osfmk/kern/startup.c).
srv: Inicialize como servidor {1}.
ncl: Número de clusters.
nbuf: Número de buffers para BSD.
kmem: Acesso à memória do kernel {1}.
trace: Tamanho do buffer de rastreio do kernel.
msgbuf: Buffer de mensagem.
rp: Caminho raiz.
mcache_flags: Sinalizadores de cache de memória.
mbuf_debug: MBuf Debug {1}.
initmcl: Init mbuf clusters.
socket_debug: Depuração de soquete (líquida).
net_affinity: Afinidade líquida (líquida).
rte_debug: Depuração de rota (rede) {sinalizadores}.
-rwroot_hack: Monte a leitura / gravação na raiz.
IOKit:
mseg: Segmento máx.
dart: Remova o mapeador presente.
io: Depuração do kit IO.
Mach:
keepsyms: Não descarregue a tradução do KLD / símbolo de endereço {1}.
debug: Depuração do kernel {flags} (por exemplo debug=0x14e).
Habilita os recursos de depuração do kernel que mostrarão informações extras. Por exemplo
0x01 - Pare no momento da inicialização e aguarde o depurador anexar
0x02 - Enviar saída de depuração do kernel para o console
0x04 - Solte no depurador em uma interrupção não mascarável
0x08 - Envie informações de depuração do kernel para uma porta serial
0x10 - Tornar ddb o depurador padrão
0x20 - Enviar informações de diagnóstico para o log do sistema
0x40 - Permitir que o depurador para ARP e rotear
0x80 - Suporte versões antigas do gdb em sistemas mais recentes
0x100 - Desativar a tela de diálogo gráfica de pânico
nvram_paniclog: confirme o paniclog na NVRAM {1}.
pmsafe_debug: Coloque as CPUs no modo de energia "seguro" {1}.
preempt: Defina a taxa de preempção padrão.
unsafe: Max quantidade insegura.
poll: Quantidade máxima de pesquisas.
yield: Agende a mudança no rendimento da pesquisa.
idlehalt: Interrompa o encadeamento inativo para permitir que a CPU entre no modo de baixa potência {1}.
panic_io_port: Em pânico, leia a partir desta porta de E / S {0x0 a 0xffff}.
_fpu: Limite de recursos da CPU no momento da inicialização {387 / mmx / sse}.
disable high mem/2: prefira mem alta}.
immediate_NMI: Força o depurador imediato da NMI {1}.
-legacy: Força o modo herdado de 32 bits.
lcks: Estatísticas de bloqueio.
novmx: Nenhuma emulação altivec no Rosetta {1}.
max_valid_dma_addr: Endereço DMA válido máximo.
maxbouncepool: Tamanho máximo da piscina de rejeição.
maxloreserve: Máxima reserva baixa.
npvhash: Hash de mapeamento físico para virtual.
wpkernel: Proteger contra gravação o kernel {1}.
-no_shared_cr3: Desabilite o espaço de endereço compartilhado do kernel para usuários de 64 bits.
-pmap_trace: Ative rastreamentos do kernel para pmap.
_panicd_ip: IP do servidor pânico.
_router_ip: IP do roteador.
panicd_port: Porta do servidor pânico.
-zc: Verificação do elemento da zona livre.
mtxspin: Rotação Mutex (ppc).
vmmforce: Força do VMM (ppc).
fn: Forçar soneca (ppc) (acpi) {0/1/2}.
pmsx: Modo experimental de gerenciamento de energia experimental (ppc) {1}.
ctrc: Defina o rastreamento para a CPU específica (ppc).
tb: Tamanho do buffer de rastreamento não padrão (ppc).
wcte: Gravar habilitar timer de combinação (ppc).
mcklog: Limpe o sinalizador de verificação da máquina (ppc).
mcksoft: Recuperação de software de verificação da máquina (ppc).
ht_shift: Tamanho da tabela de hash não padrão (ppc) {1}.
zsize: Tamanho da zona alvo.
colors: Defina cores da VM.
fill: Preencha páginas.
serialbaud: Define a taxa de transmissão serial.
Opções de inicialização de xnu/osfmk/i386/i386_init.c:
diag: Saída de diagnóstico.
serial: Console de diagnóstico serial. Suporte para teclado serial e / ou console.
maxmem
Memória máxima para usar. Limita a memória endereçável à quantidade especificada (por exemplo maxmem=32).
cpus=1
Limita o número de processadores ativos no sistema ao nível definido. Isso pode ajudar a preservar a energia, provavelmente não útil para muitas outras coisas, a menos que você esteja testando e programando.
himemory_mode
É usado para depurar grandes configurações de memória física para sistemas com mais de 4 GB. Modos: 0 - todas as páginas disponíveis, 1 - desabilitar mem alta, 2 - preferir mem alta.
immediate_NMI
Suporte de depuração para sistemas com mais de 4 GB forçando o depurador imediato da NMI.
urgency_notification_abstime
De outros:
bluetoothHostControllerSwitchBehavior( never/ always)
Informe ao driver Bluetooth se deseja alternar para o dongle conectado. Para tornar o dongle externo o padrão mesmo após a reinicialização, use always.
smbios: SMBIOS detalhado (AppleSMBIOS.kext) {1}
acpi: Depure o AppleACPIPlatform {1-8}
acpi_level: Nível de depuração da ACPI
acpi_layer: Camada de depuração ACPI
acpi_sleep: ACPI Sleep
nvdebug: Depuração do NVDAResman
nvrm: NVDAResman
ndrv_debug_level: Nível de depuração de NDRV (NVDAResman)
pstep: Depuração da etapa de energia (ACPI_SMC)
hpet: AppleHPET
busratio(por exemplo busratio=20): Usou o i7 cpu em 10.5.6, depois de 10.5.7 não precisa do x86osx .
Fonte: xnu-1228 / Argumentos de inicialização
Uso
Por exemplo, quando você está no Modo Único ( CMD- Sapós o som na inicialização), para entrar no modo de segurança e com uma saída extra de depuração do kernel para o console, tente:
sudo nvram boot-args="-x -v debug=0x14e"
Para adicionar o argumento à existente (sem substituir), tente:
sudo nvram boot-args="-v $(nvram boot-args 2>/dev/null | cut -f 2-)"
Para remover argumentos de inicialização, execute:
sudo nvram boot-args=""
sudo nvram -d boot-args
Outros parâmetros não oficiais podem ser encontrados no próprio kernelbinário, por exemplo
$ 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
Ou verifique nos arquivos de origem da Apple ou no GitHub pesquisando PE_parse_boot_argn(o que é usado para analisar os argumentos de inicialização do kernel).