# Deshab Kernel Configuration (DEV - QEMU 测试) # dev_mode=1 自动跑 shell.elf 测试序列, 调试全开, QEMU 验证选项 # 路径: SYSTEM/system/deshab64/FUCK # UTSM 通过 Limine boot module 预加载读取(cmdline="fuck:config") # DSK 通过 FAT32 子目录遍历读取(路径 "SYSTEM /DESHAB64 /FUCK ") # 缺失或空的键使用硬编码默认值,行为与无配置文件时一致 [boot] vmm=1 linux_guest=1 # OpenXJ380 第二 guest(需 SYSTEM/boot/xj380.krl 存在,limine.conf 取消注释) # 启动后 host 挂起直至 XJ380 guest 终止;无模块时优雅跳过 xj380_guest=1 selftest=1 dev_mode=1 # QEMU 不需要真机安全检测 la57_guard=0 mcfg_check=0 max_phys_addr_bits=0 # 实机启动日志持久化:把启动日志写入磁盘原始扇区(开发测试用) # 启用后启动时把内存日志缓冲区写到指定扇区区间 # 事后用 WinHex/dd 读取对应扇区即可查看完整启动日志 # 注意: 写入 LBA 1-33 会覆盖 GPT, 测试盘建议从 34 开始或测试后重新烧录 disk_log=1 disk_log_start=2 disk_log_end=1000 [drivers] timer=1 apic=1 acpi=1 pci=1 console_fb=1 ahci=1 nvme=1 bootfs=1 vfs=1 fat32=1 devfs=1 e1000=1 virtio_net=1 ath9k=0 ps2kbd=1 ioapic_init=1 lapic_enable=1 # B7: APIC 路由接管开关 (apic.drv 自解析, 缺失=0) # 0=保持 8259 PIC 路由 (默认, 现状不回归) # 1=IOAPIC->LAPIC 接管: 注册 LAPIC EOI 钩子 + PIC IMR 全屏蔽 + TPR=0 # + tick 链路自验 (vector 0x20, 失败自动完整降级回 PIC 并注销钩子) apic_route=1 # B7 阶段2: 随 apic_route=1 额外放开 legacy IRQ1(键盘)/12(鼠标)/11(e1000) # QEMU 全链路已验证 (B1 向导按键/B2 启动/e1000 IRQ11) apic_route_legacy=1 # B7 阶段3: NVMe MSI/MSI-X 中断驱动开关 (nvme.drv 自解析, 缺失=1) nvme_msi=1 # B7 诊断 (apic.drv): 1=启用 HPET 绝对时基对拍 + IRQ12 鼠标流观察窗 # 常规构建保持 0 apic_diag=0 [utsm] max_segments=1024 max_capabilities=256 max_pckc_keys=8 dirty_shard_pages=1024 arena_size_mb=64 drr_emergency_pool_kb=64 drr_recovery_log_size=4096 drr_heartbeat_interval=0 [dsk] show_logo=1 skip_login=1 default_shell=cmd mouse_init=1 netman=1 [debug] # 全局插桩开关 (0=禁用,零开销; 1=启用所有 INSTR_* 宏) enabled=1 # 日志级别阈值 (0=TRACE, 1=DEBUG, 2=INFO, 3=WARN, 4=ERROR, 5=SILENT) log_level=1 # 探测缓冲开关 (0=禁用; 1=启用 INSTR_PROBE 写入环形缓冲) probe_enable=1 # 探测缓冲容量 (条目数,每条 40 字节,默认 4096 条 ≈ 160KB) probe_capacity=4096 # 统计摘要间隔 (每 N 次增量输出一次摘要) stat_summary_interval=256 # 模块级过滤: 1=启用该模块的 TRACE/DEBUG 级别日志 utsm_trace=1 vmm_trace=1 dkm_trace=1 dsk_trace=1 block_trace=1 net_trace=0 input_trace=1 [compat] # 兼容层动态链接库搜索路径配置 # lib_path: FAT32 根目录下存放 .dll/.so 的子目录名 lib_path=lib # linux_lib_guest_path: Linux guest 内库目录路径 linux_lib_guest_path=/usr/lib/deshab # linux_lib_sync: 启动时推送 .so 到 Linux guest (0=关闭, 1=开启) linux_lib_sync=1 # pe_dll_search: PE shim miss 后从 SYSTEM/lib 加载真实 DLL (0=关闭, 1=开启) pe_dll_search=1